CEPHADM 操作之健康检查

cephadm 模块提供额外的健康检查来补充集群提供的默认健康检查。这些额外的健康检查分为两类:

  • cephadm 操作:当 cephadm 模块处于活动状态时,始终执行此类别的健康检查。
  • 集群配置:这些健康检查是可选的,主要关注集群中主机的配置。

CEPHADM 操作

CEPHADM_PAUSED

ceph orch pause 这表明 cephadm 后台工作已被暂停 。Cephadm 继续执行被动监控活动(例如检查主机和守护程序状态),但不会进行任何更改(例如部署或删除守护程序)。

通过运行以下命令恢复 cephadm 工作:

ceph orch resume

CEPHADM_STRAY_HOST

这表明一个或多个主机有 Ceph 守护进程正在运行,但没有注册为由cephadm管理的主机。这意味着这些服务目前不能由 cephadm 管理(例如,重新启动、升级、包含在 ceph orch ps中)。

  • 您可以通过运行以下命令来管理主机:
ceph orch host add *<hostname>*

笔记: 您可能需要先配置对远程主机的 SSH 访问权限,然后才能使用。

  • 有关主机名和域名的更多信息,请参阅完全限定域名与裸主机名。

  • 或者,您可以手动连接到主机并确保该主机上的服务被删除或迁移到由cephadm管理的主机。

  • 可以通过运行以下命令完全禁用此警告:

ceph config set mgr mgr/cephadm/warn_on_stray_hosts false

CEPHADM_STRAY_DAEMON

一个或多个 Ceph 守护进程正在运行,但不是由 cephadm管理。这可能是因为它们是使用不同的工具部署的,或者是因为它们是手动启动的。这些服务目前无法由 cephadm 管理(例如,重新启动、升级或包含在ceph orch ps中)。

  • 如果守护进程是有状态的(监视器或 OSD),它应该被 cephadm 采用;请参阅将现有集群转换为 cephadm。对于无状态守护程序,通常最简单的方法是使用 ceph orch apply 命令配置新守护程序,然后停止非托管守护程序。

  • 如果杂散守护进程在不受 cephadm 管理的主机上运行,​​您可以通过运行以下命令来管理主机:

ceph orch host add *<hostname>*

笔记: 您可能需要先配置对远程主机的 SSH 访问权限,然后才能使用。

  • 有关主机名和域名的更多信息,请参阅完全限定域名与裸主机名。

  • 可以通过运行以下命令完全禁用此警告:

ceph config set mgr mgr/cephadm/warn_on_stray_daemons false

CEPHADM_HOST_CHECK_FAILED

一台或多台主机未能通过基本的 cephadm 主机检查,这将验证 (1) 主机可访问且 cephadm 可以在那里执行,以及 (2) 主机满足基本先决条件,如工作容器运行时(podman 或 docker)和工作时间同步。如果此测试失败,cephadm 将无法管理该主机上的服务。

您可以通过运行以下命令手动运行此检查:

ceph cephadm check-host *<hostname>*

您可以通过运行以下命令从管理中删除损坏的主机:

ceph orch host rm *<hostname>*

您可以通过运行以下命令禁用此运行状况警告:

ceph config set mgr mgr/cephadm/warn_on_failed_host_check false

集群配置检查

Cephadm 定期扫描集群中的每台主机,以了解操作系统、磁盘、网卡等的状态。然后可以分析这些事实以确保集群中主机之间的一致性,以识别任何配置异常。

启用集群配置检查

配置检查是一项可选功能,可通过运行以下命令启用:

ceph config set mgr mgr/cephadm/config_checks_enabled true

集群配置检查返回的状态

每次主机扫描 (1m) 后都会触发配置检查。cephadm 日志条目将显示配置检查的当前状态和结果,如下所示:

禁用状态(config_checks_enabled false):

ALL cephadm checks are disabled, use 'ceph config set mgr mgr/cephadm/config_checks_enabled true' to enable

启用状态(config_checks_enabled true):

CEPHADM 8/8 checks enabled and executed (0 bypassed, 0 disabled). No issues detected

管理配置检查(子命令)

配置检查本身通过几个 cephadm 子命令进行管理。

要确定是否启用了配置检查,请运行以下命令:

ceph cephadm config-check status

此命令将配置检查器的状态返回为“启用”或“禁用”。

要列出所有配置检查及其当前状态,请运行以下命令:

# 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

通过运行以下形式的命令,可以使用每个配置检查的名称来启用或禁用特定检查:

ceph cephadm config-check disable <name>

例如:

ceph cephadm config-check disable kernel_security

CEPHADM_CHECK_KERNEL_LSM

集群中的每个主机都应在相同的 Linux 安全模块 (LSM) 状态下运行。例如,如果大多数主机都在强制模式SELINUX下运行 ,则任何未在此模式下运行的主机都会被标记为异常并引发健康检查 (WARNING) 状态。

CEPHADM_CHECK_SUBSCRIPTION

此检查与供应商订阅的状态有关。此检查仅针对使用 RHEL 的主机执行,但有助于确认所有主机都包含在活动订阅中,从而确保补丁和更新可用。

CEPHADM_CHECK_PUBLIC_MEMBERSHIP

集群的所有成员都应在至少一个公共网络子网中配置 NIC。不在公共网络上的主机将依赖路由,这可能会影响性能。

CEPHADM_CHECK_MTU

OSD 上 NIC 的 MTU 可能是保持性能稳定的关键因素。此检查检查运行 OSD 服务的主机,以确保 MTU 在集群中的配置一致。这是通过建立大多数主机正在使用的 MTU 设置来确定的。任何异常都会导致 Ceph 运行状况检查。

CEPHADM_CHECK_LINKSPEED

此检查类似于 MTU 检查。Linkspeed 一致性是集群性能一致的一个因素,就像 OSD 上 NIC 的 MTU 一样。此检查确定大多数 OSD 主机共享的链接速度,并且对设置为较低链接速度速率的任何主机运行健康检查。

CEPHADM_CHECK_NETWORK_MISSING

public_network和cluster_network设置支持 IPv4 和 IPv6 的子网定义。如果在集群中的任何主机上都找不到这些设置,则会进行健康检查。

CEPHADM_CHECK_CEPH_RELEASE

在正常操作下,Ceph 集群在同一个 ceph 版本下运行守护进程(即 Ceph 集群在(例如)Octopus 下运行所有​​守护进程)。此检查确定每个守护程序的活动版本,并将任何异常报告为运行状况检查。如果升级过程在集群中处于活动状态,则绕过此检查。

CEPHADM_CHECK_KERNEL_VERSION

检查操作系统内核版本 (maj.min) 以确保主机之间的一致性。大多数主机的内核版本被用作识别异常的基础。

posted @ 2022-03-05 08:20  Varden  阅读(706)  评论(0编辑  收藏  举报