1.2. 使用 CLI 安装
以下小节介绍了使用 CLI 安装 Loki Operator 和 Red Hat OpenShift Logging Operator。
1.2.1. 使用 CLI 安装 Loki Operator 复制链接链接已复制到粘贴板!
在 OpenShift Container Platform 集群上安装 Loki Operator,以使用 OpenShift Container Platform 命令行界面(CLI)管理日志存储 Loki
。您可以通过与 Loki
Operator 协调资源 LokiStack 来部署和配置 Loki 日志存储。
先决条件
- 有管理员权限。
-
已安装 OpenShift CLI(
oc
)。 - 您可以访问受支持的对象存储。例如:AWS S3、Google Cloud Storage、Azure、Swift、Minio 或 OpenShift Data Foundation。
流程
为 Loki Operator 创建一个
Namespace
对象:Namespace
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您必须将
openshift-operators-redhat
指定为命名空间。要为 Operator 启用监控,请将 Cluster Monitoring Operator 配置为从openshift-operators-redhat
命名空间中提取指标,而不是从openshift-operators
命名空间中提取指标。openshift-operators
命名空间可能会包含社区 operator,这些 operator 不被信任,并可能会发布与 OpenShift Container Platform 指标相同的名称,从而导致冲突。 - 2
- 指定所示的标签的字符串值,以确保集群监控提取
openshift-operators-redhat
命名空间。
运行以下命令来应用
Namespace
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
OperatorGroup
对象。OperatorGroup
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您必须将
openshift-operators-redhat
指定为命名空间。
运行以下命令来应用
OperatorGroup
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为 Loki Operator 创建一个
Subscription
对象:Subscription
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您必须将
openshift-operators-redhat
指定为命名空间。 - 2
- 指定
stable-6.<y
> 作为频道。 - 3
- 如果订阅中的批准策略被设置为
Automatic
,则更新过程会在所选频道中提供新的 Operator 版本时立即启动。如果批准策略设为Manual
,则必须手动批准待处理的更新。 - 4
- 指定
redhat-operators
作为值。如果 OpenShift Container Platform 集群安装在受限网络中(也称为断开连接的集群),请指定配置 Operator Lifecycle Manager (OLM)时创建的CatalogSource
对象的名称。
运行以下命令来应用
Subscription
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建用于部署 LokiStack
的命名空间
对象:namespace
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来应用
namespace
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用凭据创建 secret 以访问对象存储。例如,创建一个 secret 以访问 Amazon Web Services (AWS) s3。
Secret
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要如果没有在 s3 存储桶或 LokiStack 自定义资源 (CR) 中定义保留周期,则不会修剪日志,它们会永久保留在 s3 存储桶中,这可能会填满 s3 存储。
运行以下命令来应用
Secret
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
LokiStack
CR:LokiStack
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 使用名称
logging-loki
。 - 2
- 您必须将
openshift-logging
指定为命名空间。 - 3
- 指定部署大小。Loki 生产实例支持的大小选项为
1x.extra-small
、1x.small
或1x.medium
。另外,从 logging 6.1 开始支持1x.pico
。 - 4
- 对于新安装,这个日期应设置为 "yesterday",因为这是 schema 生效的日期。
- 5
- 指定日志存储 secret 的名称。
- 6
- 指定对应的存储类型。
- 7
- 为临时存储指定存储类的名称。为获得最佳性能,请指定分配块存储的存储类。您可以使用
oc get storageclasses
命令列出集群的可用存储类。 - 8
openshift-logging
模式是默认租期模式,其中为日志类型创建一个租户,如 audit、infrastructure 和 application。这为单个用户和用户组启用对不同的日志流的访问控制。
运行以下命令来应用
LokiStack
CR 对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令来验证安装。
oc get pods -n openshift-logging
$ oc get pods -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.2. 使用 CLI 安装 Red Hat OpenShift Logging Operator 复制链接链接已复制到粘贴板!
在 OpenShift Container Platform 集群上安装 Red Hat OpenShift Logging Operator,以使用 OpenShift CLI (oc
)收集日志并将日志转发到日志存储。
先决条件
- 有管理员权限。
-
已安装 OpenShift CLI(
oc
)。 - 已安装并配置了 Loki Operator。
-
您已创建了
openshift-logging
命名空间。
流程
创建一个
OperatorGroup
对象:OperatorGroup
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 您必须将
openshift-logging
指定为命名空间。
运行以下命令来应用
OperatorGroup
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为 Red Hat OpenShift Logging Operator 创建
Subscription
对象:Subscription
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来应用
Subscription
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建日志收集器要使用的服务帐户:
oc create sa logging-collector -n openshift-logging
$ oc create sa logging-collector -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为收集器的服务帐户分配所需的权限,以便能够收集和转发日志。在本例中,收集器提供从基础架构和应用程序日志收集日志的权限。
oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z logging-collector -n openshift-logging oc adm policy add-cluster-role-to-user collect-application-logs -z logging-collector -n openshift-logging oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z logging-collector -n openshift-logging
$ oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z logging-collector -n openshift-logging $ oc adm policy add-cluster-role-to-user collect-application-logs -z logging-collector -n openshift-logging $ oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z logging-collector -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
ClusterLogForwarder
CR:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来应用
ClusterLogForwarder CR
对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令来验证安装。
oc get pods -n openshift-logging
$ oc get pods -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.3. 使用 CLI 安装日志记录 UI 插件 复制链接链接已复制到粘贴板!
使用命令行界面(CLI)安装日志记录 UI 插件,以便您可以视觉化日志。
先决条件
- 有管理员权限。
-
已安装 OpenShift CLI(
oc
)。 - 已安装并配置了 Loki Operator。
流程
- 安装 Cluster Observability Operator。如需更多信息 ,请参阅安装 Cluster Observability Operator。
创建
UIPlugin
自定义资源(CR):UIPlugin
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意日志记录 UI 插件的已知问题 - 如需更多信息,请参阅 OU-587。
-
schema
功能只在 Red Hat OpenShift Logging 4.15 及更新的版本中被支持。在早期版本的 Red Hat OpenShift Logging 中,日志记录 UI 插件将只使用viaq
属性,忽略可能设置的任何其他值。 -
非管理员用户无法使用带有 Red Hat OpenShift 版本 5.8 到 6.2 日志记录的
otel
属性查询日志。这个问题将在以后的日志记录发行版本中解决。(LOG-6589) -
在 Red Hat OpenShift 版本 5.9 中,未设置
severity_text
Otel 属性。
-
运行以下命令来应用
UIPlugin
CR 对象:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
- 访问 Red Hat OpenShift Logging web 控制台,并在弹出消息指示您这样做时刷新页面。
-
进入到 Observe
Logs 面板,您可以在其中运行 LogQL 查询。您也可以从特定 pod 的 Aggregated Logs 选项卡中查询各个 pod 的日志。