3.15. 标记主机
Ceph 编配器支持将标签分配到主机。标签是自由格式的,没有具体含义。这意味着,您可以使用 mon
、monitor
、mycluster_monitor
或任何其他文本字符串。每一主机可以有多个标签。
例如,将 mon
标签应用到您要在其上部署 Ceph 监控守护进程的所有主机,mgr
适用于您要在其上部署 Ceph Manager 守护进程、rgw
用于 Ceph 对象网关守护进程等。
标记存储集群中的所有主机有助于简化系统管理任务,允许您快速识别每个主机上运行的守护进程。此外,您可以使用 Ceph 编配器或 YAML 文件在具有特定主机标签的主机上部署或删除守护进程。
3.15.1. 为主机添加标签 复制链接链接已复制到粘贴板!
使用 Ceph 编排器向主机添加标签。标签可用于指定守护进程的放置。
几个标签示例是 mgr
、mon
和 osd
,基于主机上部署的服务。每一主机可以有多个标签。
您还可以添加以下主机标签,它们对 cephadm
具有特殊含义,它们以 _
开头:
-
_no_schedule
: 此标签会阻止cephadm
调度或部署主机上的守护进程。如果它被添加到已包含 Ceph 守护进程的现有主机中,它会导致cephadm
在其他位置移动这些守护进程,除了自动移除的 OSD 除外。当添加带有_no_schedule
标签的主机时,不会在其上部署守护进程。当守护进程在删除主机前排空时,在该主机上设置了_no_schedule
标签。 -
_no_autotune_memory
:此标签不会在主机上自动微调内存。即使为 host 上的一个或多个守护进程启用了osd_memory_target_autotune
选项,也会防止守护进程内存被调优。 -
_admin
: 默认情况下,_admin
标签应用于存储集群中的 bootstrapped 主机,client.admin
密钥被设置为使用ceph orch client-keyring {ls|set|rm}
功能分发到该主机。将此标签添加到其他主机通常会导致cephadm
在/etc/ceph
目录中部署配置和密钥环文件。
先决条件
- 已安装并引导的存储集群。
- 对存储集群中所有节点的根级别访问权限。
- 主机添加到存储集群中。
流程
登录到 Cephadm shell:
示例
cephadm shell
[root@host01 ~]# cephadm shell
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为主机添加标签:
语法
ceph orch host label add HOSTNAME LABEL
ceph orch host label add HOSTNAME LABEL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch host label add host02 mon
[ceph: root@host01 /]# ceph orch host label add host02 mon
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出主机:
示例
[ceph: root@host01 /]# ceph orch host ls
[ceph: root@host01 /]# ceph orch host ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.15.2. 从主机中删除标签 复制链接链接已复制到粘贴板!
您可以使用 Ceph 编配器从主机移除标签。
先决条件
- 已安装并引导的存储集群。
- 对存储集群中所有节点的根级别访问权限。
流程
启动
cephadm
shell:cephadm shell
[root@host01 ~]# cephadm shell [ceph: root@host01 /]#
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除标签。
语法
ceph orch host label rm HOSTNAME LABEL
ceph orch host label rm HOSTNAME LABEL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch host label rm host02 mon
[ceph: root@host01 /]# ceph orch host label rm host02 mon
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出主机:
示例
[ceph: root@host01 /]# ceph orch host ls
[ceph: root@host01 /]# ceph orch host ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.15.3. 使用主机标签在特定主机上部署守护进程 复制链接链接已复制到粘贴板!
您可以使用主机标签将守护进程部署到特定的主机上。使用主机标签在特定主机上部署守护进程的方法有两种:
-
从命令行使用
--placement
选项。 - 通过使用 YAML 文件。
先决条件
- 已安装并引导的存储集群。
- 对存储集群中所有节点的根级别访问权限。
流程
登录到 Cephadm shell:
示例
cephadm shell
[root@host01 ~]# cephadm shell
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 列出当前的主机和标签:
示例
[ceph: root@host01 /]# ceph orch host ls HOST ADDR LABELS STATUS host01 _admin mon osd mgr host02 mon osd mgr mylabel
[ceph: root@host01 /]# ceph orch host ls HOST ADDR LABELS STATUS host01 _admin mon osd mgr host02 mon osd mgr mylabel
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 方法 1:使用
--placement
选项从命令行部署守护进程:语法
ceph orch apply DAEMON --placement="label:LABEL"
ceph orch apply DAEMON --placement="label:LABEL"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch apply prometheus --placement="label:mylabel"
[ceph: root@host01 /]# ceph orch apply prometheus --placement="label:mylabel"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 方法 2 将守护进程分配给 YAML 文件中的特定主机标签,请在 YAML 文件中指定服务类型和标签:
创建
placement.yml
文件:示例
[ceph: root@host01 /]# vi placement.yml
[ceph: root@host01 /]# vi placement.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在
placement.yml
文件中指定服务类型和标签:示例
service_type: prometheus placement: label: "mylabel"
service_type: prometheus placement: label: "mylabel"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用守护进程放置文件:
语法
ceph orch apply -i FILENAME
ceph orch apply -i FILENAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch apply -i placement.yml Scheduled prometheus update…
[ceph: root@host01 /]# ceph orch apply -i placement.yml Scheduled prometheus update…
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出守护进程的状态:
语法
ceph orch ps --daemon_type=DAEMON_NAME
ceph orch ps --daemon_type=DAEMON_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch ps --daemon_type=prometheus NAME HOST PORTS STATUS REFRESHED AGE MEM USE MEM LIM VERSION IMAGE ID CONTAINER ID prometheus.host02 host02 *:9095 running (2h) 8m ago 2h 85.3M - 2.22.2 ac25aac5d567 ad8c7593d7c0
[ceph: root@host01 /]# ceph orch ps --daemon_type=prometheus NAME HOST PORTS STATUS REFRESHED AGE MEM USE MEM LIM VERSION IMAGE ID CONTAINER ID prometheus.host02 host02 *:9095 running (2h) 8m ago 2h 85.3M - 2.22.2 ac25aac5d567 ad8c7593d7c0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow