1.3. 在 data plane 节点上配置和部署 Red Hat Ceph Storage
使用 cephadm
实用程序为 HCI 环境配置和部署 Red Hat Ceph Storage。
1.3.1. cephadm
实用程序
使用 cephadm
实用程序在 data plane 节点上配置和部署 Red Hat Ceph Storage。在继续操作前,必须将 cephadm
软件包部署到至少一个数据平面节点上。edpm-ansible
不会部署 Red Hat Ceph Storage。
有关部署 Red Hat Ceph Storage 的更多信息和流程,请参阅 Red Hat Ceph Storage 安装指南中的 Red Hat Ceph Storage 安装。
1.3.2. 配置和部署 Red Hat Ceph Storage
通过编辑配置文件和使用 cephadm
实用程序来配置和部署 Red Hat Ceph Storage。
流程
- 编辑 Red Hat Ceph Storage 配置文件。
添加
Storage
和Storage Management
网络范围。Red Hat Ceph Storage 使用Storage
网络作为 Red Hat Ceph Storagepublic_network
,Storage Management
网络作为cluster_network
。以下示例是
Storage
网络范围为172.18.0.0/24
的配置文件条目,Storage Management
网络范围为172.20.0.0/24
:[global] public_network = 172.18.0.0/24 cluster_network = 172.20.0.0/24
在 Compute 服务和 Ceph OSD 服务之间添加并置界限。应在并置计算服务和 Ceph OSD 服务之间设置界限,以减少 CPU 和内存争用。
以下是设置了这些边界的 Ceph 配置文件条目的示例:
[osd] osd_memory_target_autotune = true osd_numa_auto_affinity = true [mgr] mgr/cephadm/autotune_memory_target_ratio = 0.2
在本例中,
osd_memory_target_autotune
参数设置为true
,以便 OSD 守护进程根据osd_memory_target
选项调整内存消耗。autotune_memory_target_ratio
默认为 0.7。这意味着系统总 RAM 的 70% 是非自动调优 Ceph 守护进程所消耗的内存的起点。剩余的内存在 OSD 之间划分;假设所有 OSD 的osd_memory_target_autotune
设置为 true。对于 HCI 部署,您可以将mgr/cephadm/autotune_memory_target_ratio
设置为 0.2,以便计算服务有更多内存可用。有关服务并置的更多信息,请参阅 在 NUMA 节点的 HCI 环境中并置服务。
注意如果需要在部署后调整这些值,请使用
ceph config set osd <key> <value>
命令。使用 data plane 节点上编辑的配置文件部署 Ceph Storage:
$ cephadm bootstrap --config <config_file> --mon-ip <data_plane_node_ip> --skip-monitoring-stack
-
将
<config_file
> 替换为 Ceph 配置文件的名称。 将
<data_plane_node_ip
&
gt; 替换为安装 Red Hat Ceph Storage 的 data plane 节点的 Storage 网络 IP 地址。注意cephadm bootstrap
命令中使用--skip-monitoring-stack
选项,以跳过监控服务的部署。如果之前已作为上述其他流程的一部分部署了监控服务,则确保 Red Hat Ceph Storage 部署成功完成。如果还没有部署监控服务,请参阅 Red Hat Ceph Storage 文档来了解启用监控服务的信息和流程。
-
将
- 在第一个 EDPM 节点上启动 Red Hat Ceph Storage 集群后,请参阅 Red Hat Ceph Storage 安装指南中的 Red Hat Ceph Storage 安装,将其他 EDPM 节点添加到 Ceph 集群。
1.3.2.1. 在 HCI 环境中为 NUMA 节点并置服务
双 NUMA 节点系统可以在一个 NUMA 节点上托管对延迟敏感的 Compute 服务工作负载,另一个 NUMA 节点上的 Ceph OSD 工作负载。要将 Ceph OSD 配置为使用未由计算服务使用的特定 NUMA 节点,请使用以下 Ceph OSD 配置之一:
-
osd_numa_node
将关联性设置为 NUMA 节点(none 为 -1)。 -
osd_numa_auto_affinity
会自动将关联性设置为存储和网络匹配的 NUMA 节点。
如果 NUMA 节点和磁盘控制器都位于 NUMA 节点 0 上,请执行以下操作:
- 将 NUMA 节点 0 上的网络接口用于存储网络
- 在 NUMA 节点 0 上托管 Ceph OSD 工作负载。
- 在 NUMA 节点 1 上托管 Compute 服务工作负载,并使用 NUMA 节点 1 上的网络接口。
将 osd_numa_auto_affinity
设置为 true,如初始 Ceph 配置文件中所示。或者,将 osd_numa_node
直接设置为 0,然后清除 osd_numa_auto_affinity
参数,使其默认为 false
。
当 OSD 离线时,超融合集群回填可能会减慢回填过程。在交换速度较慢的恢复时,回填活动对并置计算服务(nova)工作负载的影响较低。Red Hat Ceph Storage 有以下默认值来控制回填活动的速度。
-
osd_recovery_op_priority = 3
-
osd_max_backfills = 1
-
osd_recovery_max_active_hdd = 3
-
osd_recovery_max_active_ssd = 10
1.3.3. 确认 Red Hat Ceph Storage 部署
在继续操作前,确认 Red Hat Ceph Storage 已部署。
流程
- 使用 SSH 连接到数据平面节点。
查看 Red Hat Ceph Storage 集群的状态:
$ cephadm shell -- ceph -s
1.3.4. 确认 Red Hat Ceph Storage 调整
在继续操作前,请确保 Red Hat Ceph Storage 已正确调优。
流程
- 使用 SSH 连接到数据平面节点。
使用以下命令验证整个 Red Hat Ceph Storage 调优:
$ ceph config dump | grep numa $ ceph config dump | grep autotune $ ceph config dump | get mgr
使用以下命令验证 OSD 的调优:
$ ceph config get <osd_number> osd_memory_target $ ceph config get <osd_number> osd_memory_target_autotune $ ceph config get <osd_number> osd_numa_auto_affinity
-
将
<osd_number
> 替换为 OSD 的数量。例如,若要引用 OSD 11,可使用osd.11
。
-
将
使用以下命令验证 OSD 的默认回填值:
$ ceph config get <osd_number> osd_recovery_op_priority $ ceph config get <osd_number> osd_max_backfills $ ceph config get <osd_number> osd_recovery_max_active_hdd $ ceph config get <osd_number> osd_recovery_max_active_ssd
-
将
<osd_number
> 替换为 OSD 的数量。例如,若要引用 OSD 11,可使用osd.11
。
-
将