This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.4. 管理日志记录部署
3.4.1. 使用 Web 控制台部署 Red Hat OpenShift Logging Operator 复制链接链接已复制到粘贴板!
您可以使用 OpenShift Container Platform Web 控制台来部署 Red Hat OpenShift Logging Operator。
Red Hat OpenShift 的日志记录子系统作为一个可安装的组件提供,它与核心 OpenShift Container Platform 不同的发行周期不同。Red Hat OpenShift Container Platform 生命周期政策概述了发行版本兼容性。
流程
使用 OpenShift Container Platform Web 控制台部署 Red Hat OpenShift Logging Operator:
安装 Red Hat OpenShift Logging Operator:
-
在 OpenShift Container Platform Web 控制台中,点击 Operators
OperatorHub。 - 在 Filter by keyword 字段中输入 Logging。
- 从可用的 Operator 列表中选择 Red Hat OpenShift Logging,然后点 Install。
选择 stable 或 stable-5.y 作为 更新频道。
注意stable频道只为日志记录的最新版本提供更新。要继续获得之前版本的更新,您必须将订阅频道改为stable-X,其中X是您安装的日志记录版本。- 确保在 Installation Mode 下选择了 A specific namespace on the cluster。
- 确定在 Installed Namespace 下的 Operator recommended namespace 是 openshift-logging。
- 选择 Enable Operator recommended cluster monitoring on this Namespace。
为 Update approval 选择一个选项。
- Automatic 选项允许 Operator Lifecycle Manager (OLM) 在有新版本可用时自动更新 Operator。
- Manual 选项需要具有适当凭证的用户批准 Operator 更新。
- 为 Console 插件选择 Enable 或 Disable。
- 点 Install。
-
在 OpenShift Container Platform Web 控制台中,点击 Operators
通过切换到 Operators
Installed Operators 页来验证 Red Hat OpenShift Logging Operator 是否已安装。 - 确保 openshift-logging 项目中列出的 Red Hat OpenShift Logging 的 Status 为 InstallSucceeded。
创建 ClusterLogging 实例。
注意Web 控制台的表单视图不包括所有可用的选项。建议您使用 YAML 视图 来完成您的设置。
在 collection 部分中,选择一个 Collector Implementation。
注意从日志记录版本 5.6 Fluentd 开始,计划在以后的发行版本中删除。红帽将在当前发行生命周期中提供对这个功能的程序漏洞修复和支持,但这个功能将不再获得改进,并将被删除。作为 Fluentd 的替代选择,您可以使用 Vector。
在 logStore 部分中,选择一个类型。
注意从日志记录版本 5.4.3 开始,Elasticsearch Operator 已被弃用,计划在以后的发行版本中删除。红帽将在当前发行生命周期中提供对这个功能的程序漏洞修复和支持,但这个功能将不再获得改进,并将被删除。作为使用 Elasticsearch Operator 管理默认日志存储的替代选择,您可以使用 Loki Operator。
- 点 Create。
3.4.2. 使用 Web 控制台部署 Loki Operator 复制链接链接已复制到粘贴板!
您可以使用 OpenShift Container Platform Web 控制台安装 Loki Operator。
先决条件
- 支持的日志存储(AWS S3、Google Cloud Storage、Azure、Swift、Minio、OpenShift Data Foundation)
流程
使用 OpenShift Container Platform Web 控制台安装 Loki Operator:
-
在 OpenShift Container Platform Web 控制台中,点击 Operators
OperatorHub。 在 Filter by keyword 字段中输入 Loki。
- 从可用的 Operator 列表中选择 Loki Operator,然后点 Install。
选择 stable 或 stable-5.y 作为 更新频道。
注意stable频道只为日志记录的最新版本提供更新。要继续获得之前版本的更新,您必须将订阅频道改为stable-X,其中X是您安装的日志记录版本。- 确保在 Installation Mode 下选择了 All namespaces on the cluster。
- 确定在 Installed Namespace 下选择了 openshift-operators-redhat。
选择 Enable Operator recommended cluster monitoring on this Namespace。
这个选项在 Namespace 对象中设置
openshift.io/cluster-monitoring: "true"标识。您必须设置这个选项,以确保集群监控提取openshift-operators-redhat命名空间。为 Update approval 选择一个选项。
- Automatic 选项允许 Operator Lifecycle Manager (OLM) 在有新版本可用时自动更新 Operator。
- Manual 选项需要具有适当凭证的用户批准 Operator 更新。
- 点 Install。
通过切换到 Operators
Installed Operators 页来验证 LokiOperator 已被安装。 - 确定在所有项目中,列出的 LokiOperator 的 Status 为 Succeeded。
创建一个
SecretYAML 文件,它使用access_key_id和access_key_secret字段指定您的凭证和bucketnames、endpoint和region来定义对象存储位置。AWS 在以下示例中使用:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Details 选项卡中,选择 LokiStack 下的 Create instance。然后选择 YAML 视图。粘贴以下模板,根据实际情况替换相关的值。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建或编辑
ClusterLoggingCR:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用配置:
oc apply -f cr-lokistack.yaml
oc apply -f cr-lokistack.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.4.3. 使用 CLI 从 OperatorHub 安装 复制链接链接已复制到粘贴板!
您可以使用 CLI 从 OperatorHub 安装 Operator,而不必使用 OpenShift Container Platform Web 控制台。使用 oc 命令来创建或更新一个订阅对象。
先决条件
-
使用具有
cluster-admin权限的账户访问 OpenShift Container Platform 集群。 -
在您的本地系统安装
oc命令。
流程
查看 OperatorHub 中集群可用的 Operator 列表:
oc get packagemanifests -n openshift-marketplace
$ oc get packagemanifests -n openshift-marketplaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 记录下所需 Operator 的目录。
检查所需 Operator,以验证其支持的安装模式和可用频道:
oc describe packagemanifests <operator_name> -n openshift-marketplace
$ oc describe packagemanifests <operator_name> -n openshift-marketplaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 一个 Operator 组(由
OperatorGroup对象定义),在其中选择目标命名空间,在其中为与 Operator 组相同的命名空间中的所有 Operator 生成所需的 RBAC 访问权限。订阅 Operator 的命名空间必须具有与 Operator 的安装模式相匹配的 Operator 组,可采用
AllNamespaces模式,也可采用SingleNamespace模式。如果您要使用AllNamespaces安装 Operator,则openshift-operators命名空间已有适当的 Operator 组。如果要安装的 Operator 采用
SingleNamespace模式,而您没有适当的 Operator 组,则必须创建一个。注意在选择
SingleNamespace模式时,该流程的 Web 控制台版本会在后台自动为您处理OperatorGroup和Subscription对象的创建。创建
OperatorGroup对象 YAML 文件,如operatorgroup.yaml:OperatorGroup对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
OperatorGroup对象:oc apply -f operatorgroup.yaml
$ oc apply -f operatorgroup.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
创建一个
Subscription对象 YAML 文件,以便为 Operator 订阅一个命名空间,如sub.yaml:Subscription对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 对于
AllNamespaces安装模式的使用,指定openshift-operators命名空间。否则,为SingleNamespace安装模式使用指定相关单一命名空间。 - 2
- 要订阅的频道的名称。
- 3
- 要订阅的 Operator 的名称。
- 4
- 提供 Operator 的目录源的名称。
- 5
- 目录源的命名空间。将
openshift-marketplace用于默认的 OperatorHub 目录源。 - 6
env参数定义必须存在于由 OLM 创建的 pod 中所有容器中的环境变量列表。- 7
envFrom参数定义要在容器中填充环境变量的源列表。- 8
volumes参数定义 OLM 创建的 pod 上必须存在的卷列表。- 9
volumeMounts参数定义由 OLM 创建的 pod 中必须存在的 VolumeMounts 列表。如果volumeMount引用不存在的卷,OLM 无法部署 Operator。- 10
tolerations参数为 OLM 创建的 pod 定义 Tolerations 列表。- 11
resources参数为 OLM 创建的 pod 中所有容器定义资源限制。- 12
nodeSelector参数为 OLM 创建的 pod 定义NodeSelector。
创建
Subscription对象:oc apply -f sub.yaml
$ oc apply -f sub.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 此时,OLM 已了解所选的 Operator。Operator 的集群服务版本(CSV)应出现在目标命名空间中,由 Operator 提供的 API 应可用于创建。
3.4.4. 使用 Web 控制台从集群中删除 Operator 复制链接链接已复制到粘贴板!
集群管理员可以使用 Web 控制台从所选命名空间中删除已安装的 Operator。
先决条件
-
使用具有
cluster-admin权限的账户访问 OpenShift Container Platform 集群 Web 控制台。
流程
-
进入到 Operators
Installed Operators 页面。 - 在 Filter by name 字段中滚动或输入关键字以查找您要删除的 Operator。然后点它。
在 Operator Details 页面右侧,从 Actions 列表中选择 Uninstall Operator。
此时会显示 Uninstall Operator? 对话框。
选择 Uninstall 来删除 Operator、Operator 部署和 pod。按照此操作,Operator 将停止运行,不再接收更新。
注意此操作不会删除 Operator 管理的资源,包括自定义资源定义 (CRD) 和自定义资源 (CR) 。Web 控制台和继续运行的集群资源启用的仪表板和导航项可能需要手动清理。要在卸载 Operator 后删除这些,您可能需要手动删除 Operator CRD。
3.4.5. 使用 CLI 从集群中删除 Operator 复制链接链接已复制到粘贴板!
集群管理员可以使用 CLI 从所选命名空间中删除已安装的 Operator。
先决条件
-
使用具有
cluster-admin权限的账户访问 OpenShift Container Platform 集群。 -
已在工作站上安装
oc命令。
流程
通过
currentCSV字段检查已订阅 Operator 的当前版本(如jaeger):oc get subscription jaeger -n openshift-operators -o yaml | grep currentCSV
$ oc get subscription jaeger -n openshift-operators -o yaml | grep currentCSVCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
currentCSV: jaeger-operator.v1.8.2
currentCSV: jaeger-operator.v1.8.2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除订阅(如
jaeger):oc delete subscription jaeger -n openshift-operators
$ oc delete subscription jaeger -n openshift-operatorsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
subscription.operators.coreos.com "jaeger" deleted
subscription.operators.coreos.com "jaeger" deletedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用上一步中的
currentCSV值来删除目标命名空间中相应 Operator 的 CSV:oc delete clusterserviceversion jaeger-operator.v1.8.2 -n openshift-operators
$ oc delete clusterserviceversion jaeger-operator.v1.8.2 -n openshift-operatorsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
clusterserviceversion.operators.coreos.com "jaeger-operator.v1.8.2" deleted
clusterserviceversion.operators.coreos.com "jaeger-operator.v1.8.2" deletedCopy to Clipboard Copied! Toggle word wrap Toggle overflow