附录 B. Ceph 网络配置选项
这些是 Ceph 的常见网络配置选项。
public_network
- 描述
-
公共(前端)网络的 IP 地址和子网掩码(例如,
192.168.0.0/24
)。在[global]
中设置。您可以指定以逗号分隔的子网。 - 类型
-
<ip-address>/<netmask> [, <ip-address>/<netmask>]
- 必填
- 否
- 默认
- N/A
public_addr
- 描述
- 公共(前端)网络的 IP 地址。为每个守护进程设置。
- 类型
- IP 地址
- 必填
- 否
- 默认
- N/A
cluster_network
- 描述
-
集群网络的 IP 地址和子网掩码(例如
10.0.0.0/24
)。在[global]
中设置。您可以指定以逗号分隔的子网。 - 类型
-
<ip-address>/<netmask> [, <ip-address>/<netmask>]
- 必需
- 否
- 默认
- N/A
cluster_addr
- 描述
- 集群网络的 IP 地址。为每个守护进程设置。
- 类型
- 地址
- 必需
- 否
- 默认
- N/A
ms_type
- 描述
-
网络传输层的 messenger 类型。红帽支持使用
posix
语义的simple
和async
messenger 类型。 - 类型
- 字符串.
- 必需
- No.
- 默认
-
async+posix
ms_public_type
- 描述
-
公共网络的网络传输层的 messenger 类型。它的工作方式与
ms_type
相同,但仅适用于公共网络或前端网络。此设置可让 Ceph 为公共或前端和集群或后端网络使用不同的 mesenger 类型。 - 类型
- 字符串.
- 必填
- No.
- 默认
- 无。
ms_cluster_type
- 描述
-
集群网络的网络传输层的 messenger 类型。它的工作方式与
ms_type
相同,但仅适用于集群或后端网络。此设置可让 Ceph 为公共或前端和集群或后端网络使用不同的 mesenger 类型。 - 类型
- 字符串.
- 必填
- No.
- 默认
- 无。
主机选项
您必须在 Ceph 配置文件中至少声明一个 Ceph Monitor,每个声明的 monitor 下都有一个 mon addr
设置。Ceph 预期 Ceph 在 Ceph 配置文件中每个声明的 monitor、元数据服务器和 OSD 下的 host
设置。
重要
不要使用 localhost
。使用节点的短名称,而不是完全限定域名 (FQDN)。在使用检索节点名称的第三方部署系统时,不要为 host
指定任何值。
mon_addr
- 描述
-
客户端可用于连接到 Ceph 监视器的
<hostname>:<port>
条目列表。如果没有设置,Ceph 会搜索[mon.*]
部分。 - 类型
- 字符串
- 必填
- 否
- 默认
- N/A
主机
- 描述
-
主机名。对特定的守护进程实例使用此设置(例如,
[osd.0]
)。 - 类型
- 字符串
- 必填
- 是,对于守护进程实例。
- 默认
-
localhost
TCP 选项
Ceph 默认禁用 TCP 缓冲。
ms_tcp_nodelay
- 描述
-
Ceph 启用
ms_tcp_nodelay
,使每个请求立即发送(无缓冲区)。禁用 Nagle 的算法会增加网络流量,它可以造成拥塞问题。如果您遇到大量小数据包,您可以尝试禁用ms_tcp_nodelay
,但请注意,禁用它通常会增加延迟。 - 类型
- 布尔值
- 必需
- 否
- 默认
-
true
ms_tcp_rcvbuf
- 描述
- 网络连接结尾的套接字缓冲区的大小。默认禁用此选项。
- 类型
- 32 位整数
- 必填
- 否
- 默认
-
0
ms_tcp_read_timeout
- 描述
-
如果客户端或守护进程向另一个 Ceph 守护进程发出请求且不丢弃未使用的连接,则
tcp read timeout
会在指定秒数后将连接定义为 idle。 - 类型
- unsigned 64 位整数
- 必填
- 否
- 默认
-
900
15 分钟。
绑定选项
bind 选项配置 Ceph OSD 守护进程的默认端口范围。默认范围为 6800:7100
。您还可以启用 Ceph 守护进程来绑定到 IPv6 地址。
重要
验证防火墙配置是否允许您使用配置的端口范围。
ms_bind_port_min
- 描述
- OSD 守护进程要绑定到的最低端口号。
- 类型
- 32 位整数
- 默认
-
6800
- 必需
- 否
ms_bind_port_max
- 描述
- OSD 守护进程要绑定到的最大端口号。
- 类型
- 32 位整数
- 默认
-
7300
- 必需
- No.
ms_bind_ipv6
- 描述
- 启用 Ceph 守护进程来绑定到 IPv6 地址。
- 类型
- 布尔值
- 默认
-
false
- 必需
- 否
异步 messenger 选项
这些 Ceph mesenger 选项配置 AsyncMessenger
的行为。
ms_async_transport_type
- 描述
-
AsyncMessenger
使用的传输类型。红帽支持posix
设置,但目前不支持dpdk
或rdma
设置。POSIX 使用标准 TCP/IP 网络,它是默认值。其他传输类型是实验性的,因此不被支持。 - 类型
- 字符串
- 必需
- 否
- 默认
-
posix
ms_async_op_threads
- 描述
-
每个
AsyncMessenger
实例使用的初始 worker 线程数。此配置设置 SHOULD 等于副本或纠删代码区块的数量,但如果 CPU 内核数量较低或单一服务器上的 OSD 数量很高,则可设置它。 - 类型
- 64-bit Unsigned 整数
- 必需
- 否
- 默认
-
3
ms_async_max_op_threads
- 描述
-
每个
AsyncMessenger
实例使用的最大 worker 线程数量。如果 OSD 主机具有有限 CPU 数量,并且如果 Ceph 利用率不足,则设置为较低值。 - 类型
- 64-bit Unsigned 整数
- 必需
- 否
- 默认
-
5
ms_async_set_affinity
- 描述
-
设置为
true
,将AsyncMessenger
worker 绑定到特定的 CPU 内核。 - 类型
- 布尔值
- 必需
- 否
- 默认
-
true
ms_async_affinity_cores
- 描述
-
当
ms_async_set_affinity
为true
时,该字符串指定了将AsyncMessenger
worker 绑定到 CPU 内核的方式。例如:0,2
会将 worker #1 和 #2 分别绑定到 CPU 内核 #0 和 #2。注意: 在手动设置关联性时,确保不将 worker 分配给创建的虚拟 CPU,作为超线程或类似技术的影响,因为它们比物理 CPU 内核慢。 - 类型
- 字符串
- 必需
- 否
- 默认
-
(empty)
ms_async_send_inline
- 描述
-
直接从生成它们的线程中直接发送消息,而不是排队并从
AsyncMessenger
线程发送发送。这个选项已知可以降低具有大量 CPU 内核的系统的性能,因此默认禁用它。 - 类型
- 布尔值
- 必需
- 否
- 默认
-
false
连接模式配置选项
从 Red Hat Ceph Storage 5 及更高版本开始,对于大多数连接,有一些选项控制用于加密的模式。
ms_cluster_mode
- 描述
- 用于 Ceph 守护进程之间的集群内通信的连接模式。如果列出了多个模式,则首选列出模式。
- 类型
- 字符串
- 默认
-
CRC secure
ms_service_mode
- 描述
- 连接到存储集群时要使用的允许模式列表。
- 类型
- 字符串
- 默认
-
CRC secure
ms_client_mode
- 描述
- 连接模式列表(按首选顺序),供客户端在与 Ceph 集群交互时使用。
- 类型
- 字符串
- 默认
-
CRC secure
ms_mon_cluster_mode
- 描述
- 在 Ceph 监视器之间使用的连接模式。
- 类型
- 字符串
- 默认
-
Secure crc
ms_mon_service_mode
- 描述
- 客户端或其他 Ceph 守护进程在连接 monitor 时要使用的允许模式列表。
- 类型
- 字符串
- 默认
-
Secure crc
ms_mon_client_mode
- 描述
- 连接模式列表(按首选顺序),用于连接到 Ceph 监视器时使用的客户端或非监视器守护进程。
- 类型
- 字符串
- 默认
-
Secure crc