8.2. 部署 Lokistack
您可以使用 OpenShift Container Platform web 控制台来部署 LokiStack。
先决条件
- Red Hat OpenShift 5.5 及以后的 Logging 子系统
- 支持的日志存储(AWS S3、Google Cloud Storage、Azure、Swift、Minio、OpenShift Data Foundation)
流程
安装
Loki Operator
Operator:-
在 OpenShift Container Platform Web 控制台中,点击 Operators
OperatorHub。 - 从可用的 Operator 列表中选择 Loki Operator,然后点 Install。
- 在 Installation Mode 下,选择 All namespaces on the cluster。
在 Installed Namespace 下,选择 openshift-operators-redhat。
您必须指定
openshift-operators-redhat
命名空间。openshift-operators
命名空间可能会包含社区提供的 operator。这些 operator 不被信任,其发布的 metric 可能与 OpenShift Container Platform metric 的名称相同,从而导致冲突。选择 Enable operator recommended cluster monitoring on this namespace。
这个选项在 Namespace 对象中设置
openshift.io/cluster-monitoring: "true"
标识。您必须设置这个选项,以确保集群监控提取openshift-operators-redhat
命名空间。选择一个批准策略。
- Automatic 策略允许 Operator Lifecycle Manager(OLM)在有新版本可用时自动更新 Operator。
- Manual 策略需要拥有适当凭证的用户批准 Operator 更新。
- 点 Install。
-
验证您安装了 Loki Operator。访问 Operators
Installed Operators 页面,并查找 Loki Operator。 - 确定在所有项目中都列出 Loki Operator 的 Status 为 Succeeded。
-
在 OpenShift Container Platform Web 控制台中,点击 Operators
创建一个
Secret
YAML 文件,它使用access_key_id
和access_key_secret
字段指定 AWS 凭证和bucketnames
、endpoint
和region
来定义对象存储位置。例如:apiVersion: v1 kind: Secret metadata: name: logging-loki-s3 namespace: openshift-logging stringData: access_key_id: AKIAIOSFODNN7EXAMPLE access_key_secret: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY bucketnames: s3-bucket-name endpoint: https://s3.eu-central-1.amazonaws.com region: eu-central-1
创建
LokiStack
自定义资源(CR):apiVersion: loki.grafana.com/v1 kind: LokiStack metadata: name: logging-loki namespace: openshift-logging spec: size: 1x.small storage: schemas: - version: v12 effectiveDate: "2022-06-01" secret: name: logging-loki-s3 type: s3 storageClassName: gp2 tenants: mode: openshift-logging
应用
LokiStack
CR:$ oc apply -f logging-loki.yaml
创建
ClusterLogging
自定义资源(CR):apiVersion: logging.openshift.io/v1 kind: ClusterLogging metadata: name: instance namespace: openshift-logging spec: managementState: Managed logStore: type: lokistack lokistack: name: logging-loki collection: type: vector
应用
ClusterLogging
CR:$ oc apply -f cr-lokistack.yaml
启用 RedHat OpenShift Logging 控制台插件:
-
在 OpenShift Container Platform web 控制台中,点击 Operators
Installed Operators。 - 选择 RedHat OpenShift Logging Operator。
- 在控制台插件下,点 Disabled。
-
选择 Enable 及 Save。此更改重启
openshift-console
pod。 - pod 重启后,您将收到一个 Web 控制台更新可用的通知,提示您刷新。
- 刷新 web 控制台后,从左侧主菜单中选择 Observe。日志 的新选项可用。
-
在 OpenShift Container Platform web 控制台中,点击 Operators