12.5. Cephadm 健康检查
作为存储管理员,您可以使用 Cephadm 模块提供的额外健康检查来监控 Red Hat Ceph Storage 集群。这是存储集群提供的默认健康检查补充。
12.5.1. 先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
12.5.2. Cephadm 操作健康检查
当 Cephadm 模块激活时,将执行健康检查。您可获取以下健康警告:
CEPHADM_PAUSED
Cephadm 后台工作可以使用 ceph orch pause
命令暂停。Cephadm 继续执行被动监控活动,如检查主机和守护进程状态,但它不会像部署或移除守护进程一样进行任何更改。您可以使用 ceph orch resume
命令恢复 Cephadm 工作。
CEPHADM_STRAY_HOST
一个或多个主机正在运行 Ceph 守护进程,但没有作为由 Cephadm 模块管理的主机注册。这意味着这些服务目前不由 Cephadm 管理,例如,ceph orch ps
命令中包含的重启和升级。您可以使用 ceph orch host add HOST_NAME
命令来管理主机,但请确保已配置了对远程主机的 SSH 访问。或者,您可以手动连接到主机,并确保该主机上的服务被删除或迁移到由 Cephadm 管理的主机。您还可以使用设置 ceph config set mgr/cephadm/warn_on_stray_hosts false
来禁用这一警告
CEPHADM_STRAY_DAEMON
一个或多个 Ceph 守护进程正在运行,但不由 Cephadm 模块管理。这可能是因为使用其他工具部署,或者因为手动启动它们。这些服务目前不由 Cephadm 管理,例如,ceph orch ps
命令中包含的重启和升级。
如果守护进程是 monitor 或 OSD 守护进程的有状态,则 Cephadm 应该采用这些守护进程。对于无状态守护进程,您可以使用 ceph orch apply
命令置备新的守护进程,然后停止非受管守护进程。
您可以通过设置 ceph config set mgr/cephadm/warn_on_stray_daemons false
来禁用此运行状况警告。
CEPHADM_HOST_CHECK_FAILED
对一个或多个主机的基本 Cephadm 主机检查(验证 that:name: 值)失败。
- 主机可以访问,您可以执行 Cephadm。
- 主机满足基本先决条件,如作为 Podman 的工作容器运行时和工作时间同步。如果测试失败,Cephadm 将无法管理该主机上的服务。
您可以使用 ceph cephadm check-host HOST_NAME
命令手动运行此检查。您可以使用 ceph orch host rm HOST_NAME
命令从管理中删除损坏的主机。您可以通过设置 ceph config set mgr/cephadm/warn_on_failed_host_check false
来禁用此运行状况警告。
12.5.3. Cephadm 配置健康检查
Cephadm 定期扫描存储集群中的每个主机,以了解操作系统、磁盘和 NIC 的状态。这些事实分析为存储集群中主机的一致性,以识别任何配置。配置检查是一个可选功能。
您可以使用以下命令启用此功能:
示例
[ceph: root@host01 /]# ceph config set mgr mgr/cephadm/config_checks_enabled true
配置检查会在每个主机扫描后触发,这是一分钟的持续时间。
ceph -W cephadm
命令显示配置检查的当前状态和结果,如下所示:禁用状态
示例
ALL cephadm checks are disabled, use 'ceph config set mgr mgr/cephadm/config_checks_enabled true' to enable
启用状态
示例
CEPHADM 8/8 checks enabled and executed (0 bypassed, 0 disabled). No issues detected
配置检查本身通过多个
cephadm
子命令进行管理。要确定配置检查是否已启用,请运行以下命令:
示例
[ceph: root@host01 /]# ceph cephadm config-check status
此命令将配置检查器的状态返回为 Enabled 或 Disabled。
要列出所有配置检查及其状态,请运行以下命令:
示例
[ceph: root@host01 /]# ceph cephadm config-check ls NAME HEALTHCHECK STATUS DESCRIPTION kernel_security CEPHADM_CHECK_KERNEL_LSM enabled checks SELINUX/Apparmor profiles are consistent across cluster hosts os_subscription CEPHADM_CHECK_SUBSCRIPTION enabled checks subscription states are consistent for all cluster hosts public_network CEPHADM_CHECK_PUBLIC_MEMBERSHIP enabled check that all hosts have a NIC on the Ceph public_netork osd_mtu_size CEPHADM_CHECK_MTU enabled check that OSD hosts share a common MTU setting osd_linkspeed CEPHADM_CHECK_LINKSPEED enabled check that OSD hosts share a common linkspeed network_missing CEPHADM_CHECK_NETWORK_MISSING enabled checks that the cluster/public networks defined exist on the Ceph hosts ceph_release CEPHADM_CHECK_CEPH_RELEASE enabled check for Ceph version consistency - ceph daemons should be on the same release (unless upgrade is active) kernel_version CEPHADM_CHECK_KERNEL_VERSION enabled checks that the MAJ.MIN of the kernel on Ceph hosts is consistent
每个配置检查都如下所述:
CEPHADM_CHECK_KERNEL_LSM
存储集群中的每个主机预期在同一 Linux 安全模块(LSM)状态内。例如,如果大多数主机以 enforcing
模式使用 SELINUX 运行,则任何没有在这个模式下运行的主机都将标记为 anomaly,并且会引发警告状态的健康检查。
CEPHADM_CHECK_SUBSCRIPTION
此检查与供应商订阅的状态相关。此检查仅针对使用 Red Hat Enterprise Linux 的主机执行,但有助于确认所有主机都由有效订阅涵盖,以便可以使用补丁和更新。
CEPHADM_CHECK_PUBLIC_MEMBERSHIP
集群的所有成员都应该在至少一个公共网络子网上配置了 NIC。没有处于公共网络上的主机将会依赖于路由,这可能会影响性能。
CEPHADM_CHECK_MTU
OSD 上 NIC 的最大传输单元(MTU)可以是一致性能的关键因素。此检查检查运行 OSD 服务的主机,以确保该 MTU 在集群内一致配置。这通过建立大多数主机正在使用的 MTU 设置来确定,任何异常情况会导致 Ceph 健康检查。
CEPHADM_CHECK_LINKSPEED
与 MTU 检查类似,链接速度一致性也是集群性能的因素。此检查决定了大多数 OSD 主机共享的链路速度,从而对以较低链接速度设置的主机进行健康检查。
CEPHADM_CHECK_NETWORK_MISSING
public_network
和 cluster_network
设置支持 IPv4 和 IPv6 的子网定义。如果在存储集群的任何主机上找不到这些设置,则会引发健康检查。
CEPHADM_CHECK_CEPH_RELEASE
在正常操作下,Ceph 集群应在相同的 Ceph 发行版本中运行守护进程,如所有 Red Hat Ceph Storage 集群 5 版本。此检查将查看每个守护进程的活动发行版本,并报告任何异常情况作为健康检查。如果升级过程在集群内处于活跃状态,则会绕过这个检查。
CEPHADM_CHECK_KERNEL_VERSION
检查 OS 内核版本,以实现主机之间的一致性。再次使用大多数主机来识别异常情况。