3.5. 配置 Ansible 清单位置
您可以为 cephadm-ansible
暂存和生产环境配置清单位置文件。Ansible 清单主机文件包含属于存储集群的所有主机。您可以在清单主机文件中单独列出节点,也可以创建 [mons]
,[osds]
, 和 [rgws]
等组,以提供有关您的清单,并简化在运行 playbook 时将 --limit
选项用于目标组或节点的组。
如果部署客户端,必须在专用 [clients]
组中定义客户端节点。
先决条件
- Ansible 管理节点.
- 对 Ansible 管理节点的根级别访问权限.
-
cephadm-ansible
软件包安装在节点上。
流程
进入
/usr/share/cephadm-ansible/
目录:[root@admin ~]# cd /usr/share/cephadm-ansible
可选:为 staging 和 production 创建子目录:
[root@admin cephadm-ansible]# mkdir -p inventory/staging inventory/production
可选:编辑
ansible.cfg
文件并添加以下行来分配默认清单位置:[defaults] inventory = ./inventory/staging
可选:为每个环境创建一个清单
主机
文件:[root@admin cephadm-ansible]# touch inventory/staging/hosts [root@admin cephadm-ansible]# touch inventory/production/hosts
打开并编辑每个
hosts
文件,并添加节点和[admin]
组:NODE_NAME_1 NODE_NAME_2 [admin] ADMIN_NODE_NAME_1
- 将 NODE_NAME_1 和 NODE_NAME_2 替换为 Ceph 节点,如 monitor、OSD、MDS 和网关节点。
将 ADMIN_NODE_NAME_1 替换为存储了 admin 密钥环的节点的名称。
示例
host02 host03 host04 [admin] host01
注意如果将
ansible.cfg
文件中的清单位置设置为 staging,则需要在暂存环境中运行 playbook,如下所示:语法
ansible-playbook -i inventory/staging/hosts PLAYBOOK.yml
在生产环境中运行 playbook:
语法
ansible-playbook -i inventory/production/hosts PLAYBOOK.yml