集群的日志记录
对于群集和应用程序日志,Red Hat® OpenShift® on IBM Cloud® 群集包含内置工具,可帮助您管理单个群集实例的健康状况。 您还可以为多集群分析或其他用例设置 IBM Cloud 工具,如 IBM Cloud Kubernetes Service 集群附加组件:IBM Cloud Logs 和 IBM Cloud Monitoring。
了解日志记录选项
为帮助了解何时使用内置 Red Hat OpenShift 工具或 IBM Cloud 集成,请查看以下信息。
- IBM Cloud Logs
-
可定制的用户界面,用于实时流式传输日志尾迹、实时故障排除问题警报和日志存档。
- 通过脚本与集群快速集成。
- 跨集群和云提供者聚集日志。
- 基于您选择的套餐,具有对日志的历史访问权。
- 可用性和可伸缩性高,符合行业安全标准。
- 与 IBM Cloud IAM 集成,以进行用户访问管理。
-
查看Red Hat OpenShift on IBM Cloud 生成的集群管理事件。 要访问这些日志,请供应 IBM Cloud Logs 的实例。 有关可以跟踪的 IBM Cloud Kubernetes Service 事件类型的更多信息,请参阅 Activity Tracker 事件。
- 内置 Red Hat OpenShift 日志工具
-
Red Hat OpenShift 网络控制台中的 pod 日志内置视图。
- 内置 pod 日志未配置为使用持久性存储器。 您必须与云数据库集成,才可备份日志记录数据并使其具有高可用性,以及自行管理日志。
要设置 OpenShift Container Platform Elasticsearch,Fluentd和 Kibana EFK 堆栈,请参阅 安装集群日志记录操作程序。 请记住,工作程序节点必须至少具有 4 个核心和 GB 内存才能运行集群日志记录堆栈。
- 内置 Red Hat OpenShift 审计日志记录工具
-
当前不支持用于监视用户启动的活动的 API 审计日志记录。
将日志记录和监控代理迁移到云日志
不再支持可观察性 CLI 插件 ibmcloud ob
和 v2/observe
端点。 目前还没有直接替代方案,但您现在可以通过控制台或 Helm 图表管理日志记录和监控集成。 最新步骤:管理 Red Hat OpenShift on IBM Cloud 集群的日志记录代理 和 使用 Red Hat OpenShift 监控代理。
您不能再使用 ob
插件、Terraform或API在集群上安装可观察性代理或修改现有配置。 Sysdig代理继续将指标发送到指定的 IBM Cloud Monitoring 实例。 LogDNA 代理无法再发送日志,因为 已被 Logs取代。IBM Cloud Log Analysis IBM Cloud
检查您的可观察性代理
可观察性插件在 ibm-observe
命名空间中安装 Sysdig 和 LogDNA 代理。
- 查看
ibm-observe
命名空间中的配置映射。kubectl get cm -n ibm-observe
Example output NAME DATA AGE e405f1fc-feba-4350-9337-e7e249af871c 6 25m f59851a6-ede6-4719-afa0-eee7ce65eeb5 6 20m
- 可观察性插件安装的可观察性代理使用配置映射,其中包含日志或指标发送到的 IBM Cloud Monitoring 实例或 IBM Cloud Log Analysis 实例的GUID。 如果集群中的代理位于
ibm-observe
以外的命名空间,或者ibm-observe
中的配置映射未使用实例 GUID 命名,则这些代理未安装 IKS Observability (ob) 插件。
移除可观察性插件代理
- 清理守护进程和配置文件。
kubectl delete daemonset logdna-agent -n ibm-observe kubectl delete daemonset sysdig-agent -n ibm-observe kubectl delete configmap <logdna-configmap> -n ibm-observe kubectl delete configmap <sysdig-configmap> -n ibm-observe
- 可选:删除命名空间。 在命名空间中没有其他资源可用之后。
kubectl delete namespace ibm-observe
移除插件后,使用集群仪表板、Terraform或手动在集群中重新安装记录和监控代理。
有关更多信息,请参阅以下链接:
使用集群日志记录操作程序
要在 Red Hat OpenShift on IBM Cloud 集群上部署 OpenShift Container Platform 集群日志记录操作程序和堆栈,请参阅 Red Hat OpenShift 文档。 此外,必须更新集群日志记录实例以使用 IBM Cloud Block Storage 存储类。
-
准备工作程序池以运行操作程序。
-
从 Red Hat OpenShift Web 控制台 管理员 透视图中,单击 操作程序> 已安装的操作程序。
-
单击 集群日志记录。
-
在“提供的 API”部分的 集群日志记录 磁贴中,单击 创建实例。
-
修改配置 YAML 以将 ElasticSearch 日志存储器的存储类从
gp2
更改为随集群基础结构提供程序而变化的下列其中一个存储类。- 经典集群:
ibmc-block-gold
- VPC 集群:
ibmc-vpc-block-10iops-tier
... elasticsearch: nodeCount: 3 redundancyPolicy: SingleRedundancy storage: storageClassName: ibmc-block-gold #or ibmc-vpc-block-10iops-tier for VPC clusters size: 200G ...
- 经典集群:
-
修改配置 YAML 以包含先前创建的工作程序池标签和污点的节点选择器和容错。 有关更多信息和示例,请参阅以下 Red Hat OpenShift 文档。 这些示例使用
logging: clo-efk
的标签和容错。- Node 选择器。 将节点选择器添加到 Elasticsearch (
logstore
) 和 Kibana (visualization
) 以及 Fluentd (collector.logs
) pod。spec: logStore: elasticsearch: nodeSelector: logging: clo-efk ... visualization: kibana: nodeSelector: logging: clo-efk ... collection: logs: fluentd: nodeSelector: logging: clo-efk
- 容许。 将节点选择器添加到 Elasticsearch (
logstore
) 和 Kibana (visualization
) 以及 Fluentd (collector.logs
) pod。spec: logStore: elasticsearch: tolerations: - key: app value: clo-efk operator: "Exists" effect: "NoExecute" ... visualization: kibana: tolerations: - key: app value: clo-efk operator: "Exists" effect: "NoExecute" ... collection: logs: fluentd: tolerations: - key: app value: clo-efk operator: "Exists" effect: "NoExecute"
- Node 选择器。 将节点选择器添加到 Elasticsearch (
-
单击创建。
-
验证操作程序 Elasticsearch,Fluentd和 Kibana pod 是否都 正在运行。