4.5. OpenShift Data Foundation 的集群日志记录
您可以部署集群日志记录来聚合一系列 OpenShift Container Platform 服务的日志。有关如何部署集群日志记录的详情,请参考 部署集群日志记录。
在初始 OpenShift Container Platform 部署时,默认情况下不配置 OpenShift Data Foundation,OpenShift Container Platform 集群将依赖于节点提供的默认存储。您可以编辑 OpenShift 日志记录(ElasticSearch)的默认配置,使其由 OpenShift Data Foundation 支持,使 OpenShift Data Foundation 支持日志(Elasticsearch)。
始终确保您拥有大量用于这些服务的存储容量。如果您缺少这些关键服务的存储空间,日志记录应用程序将变得不可用,很难恢复。
红帽建议为这些服务配置较短的策展和保留间隔。详情请参阅 OpenShift Container Platform 文档中的 集群日志记录 Curator。
如果您缺少这些服务的存储空间,请联系红帽客户支持。
4.5.1. 配置持久性存储 复制链接链接已复制到粘贴板!
您可以使用存储类名称和大小参数为 Elasticsearch 集群配置持久性存储类和大小。Cluster Logging Operator 根据这些参数为 Elasticsearch 集群中的每个数据节点创建一个持久性卷声明。例如:
本例指定,集群中的每个数据节点将绑定到请求 200GiB
的 ocs-storagecluster-ceph-rbd
存储的持久性卷声明。每个主分片将由一个副本来支持。分片的副本会在所有节点之间复制,并且始终可用,如果因为单一冗余策略至少存在两个节点,则可以恢复副本。有关 Elasticsearch 复制策略的详情,请参考 关于部署和配置集群日志记录 中的 Elasticsearch 复制策略。
缺少存储块将导致默认存储支持部署。例如:
如需更多信息,请参阅 配置集群日志记录。
4.5.2. 配置集群日志记录以使用 OpenShift Data Foundation 复制链接链接已复制到粘贴板!
按照本节中的说明,将 OpenShift Data Foundation 配置为 OpenShift 集群日志记录的存储。
您可在 OpenShift Data Foundation 中首次配置日志记录时获取所有日志。但是,在卸载和重新安装日志记录后,旧的日志会被删除并只处理新日志。
先决条件
- 对 OpenShift Web 控制台的管理访问权限.
-
OpenShift Data Foundation Operator 在
openshift-storage
命名空间中安装并运行。 -
Cluster logging Operator 在
openshift-logging
命名空间中安装并运行。
流程
-
从 OpenShift Web 控制台左侧窗格中,点击 Administration
Custom Resource Definitions。 - 在 Custom Resource Definitions 页面中,点 ClusterLogging。
- 在 Custom Resource Definition Overview 页面上,从 Actions 菜单中选择 View Instances,或者点击 Instances 选项卡。
在 Cluster Logging 页面中,单击 Create Cluster Logging。
您可能需要刷新页面来加载数据。
在 YAML 中,将 storageClassName 替换为使用 provisioner
openshift-storage.rbd.csi.ceph.com
的storageclass
。在以下示例中,storageclass 的名称为ocs-storagecluster-ceph-rbd
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果 OpenShift Data Foundation 节点带有污点,您必须添加容限,以启用为日志记录调度 daemonset pod。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点 Save。
验证步骤
验证持久卷声明是否已绑定到
elasticsearch
Pod。-
进入 Storage
Persistent Volume Claims。 -
将 Project 下拉菜单设置为
openshift-logging
。 验证持久卷声明是否可见,状态为
Bound
,附加到elasticsearch-
* pod。图 4.4. 创建并绑定集群日志记录
-
进入 Storage
验证是否在使用新集群日志记录。
-
点 Workload
Pods。 -
将 Project 设置为
openshift-logging
。 -
验证新的
elasticsearch-
* pod 的状态是否为Running
。 -
点新的
elasticsearch-
* pod 查看 pod 详情。 -
向下滚动到 Volumes,再验证 elasticsearch 卷是否具有与您的新持久性卷声明匹配的 Type,如
elasticsearch-elasticsearch-cdm-9r624biv-3
。 - 点 Persistent Volume Claim 名称,然后在 PersistentVolumeClaim Overview 页面中验证存储类名称。
-
点 Workload
确保使用较短的 Curator 时间,以避免在附加到 Elasticsearch Pod 的 PV 上 PV 完整场景。
您可以配置 Curator,以根据保留设置删除 Elasticsearch 数据。建议您将以下默认索引数据保留 5 天设置为默认值。
config.yaml: | openshift-storage: delete: days: 5
config.yaml: |
openshift-storage:
delete:
days: 5
如需了解更多详细信息,请参阅 Elasticsearch 数据。
要卸载由持久性卷声明支持的集群日志记录,请使用相应部署指南的卸载章节中从 OpenShift Data Foundation 中删除集群日志记录 Operator 的步骤。