部署客户机节点

作为存储管理员,您可以通过运行 cephadm-preflight.ymlcephadm-clients.yml 运行手册来部署客户机节点。

开始之前

在开始之前,请确保您已满足以下前提条件:
  • 对 Ansible 管理节点的根级别访问权。
  • 具有对存储集群中所有节点的 sudo 和无密码 ssh 访问权的 Ansible 用户。
  • 已安装 cephadm-ansible 软件包。
  • 已在存储集群中的初始主机上运行预战运行手册。

    更多信息,请参阅运行预检程序手册

  • 必须在 Ansible 库存文件中指定 [clients] 组变量。
  • [admin] 组是在库存文件中定义的,其中存在管理密钥环的节点位于 /etc/ceph/ceph.client.admin.keyring

    有关管理密钥的更多信息,请参阅 Ceph User Management

关于此任务

cephadm-preflight.yml 运行手册配置 Ceph 存储库并准备存储集群以进行引导。 它还会安装一些先决条件,例如 podmanlvm2chronycephadm

cephadm-clients.yml 运行手册处理将配置和密钥环文件分发到一组 Ceph 客户机。
注: 如果您未使用 cephadm-ansible 运行手册,那么在升级 Ceph 集群之后,必须升级客户机节点上的 ceph-common 软件包和客户机库。 有关详细信息,请参阅 升级 IBM Storage Ceph 群集

过程

  1. 作为 Ansible ,请前往 Ansible上的 /usr/share/cephadm-ansible 目录。
    例如,
    [ ceph-admin@admin ~]$ cd /usr/share/cephadm-ansible
  2. 打开并编辑 hosts 库存文件,将 [clients] 组和客户添加到您的库存中。
     host02
     host03
     host04
    
     [客户]
     client01
     client02
     client03
    
     [管理员]
     host01
  3. 运行 cephadm-preflight.yml 脚本,在客户端上安装必备条件。
    ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit CLIENT_GROUP_NAME|CLIENT_NODE_NAME
    例如,
    [ ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --limit clients
  4. 运行 cephadm-clients.yml 脚本,将密钥环和Ceph配置文件分发到一组客户端。
    1. 复制带有自定义目标密钥环名称的密钥环。
      ansible-playbook -i INVENTORY_FILE cephadm-clients.yml --extra-vars '{"fsid":"FSID","keyring":"KEYRING_PATH","client_group":"CLIENT_GROUP_NAME","conf":"CEPH_CONFIGURATION_PATH","keyring_dest":"KEYRING_DESTINATION_PATH"}'
      请替换下列值:
      库存文件
      替换为 Ansible 清单文件名。
      FSID
      替换为仪表板的FSID。

      要获取FSID,请使用 ceph fsid 命令。

      proc_osd_adding-osds KEYRING_PATH
      替换为要复制到客户端的管理主机上钥匙串的完整路径名。
      客户组名称
      可选。 替换为要设置的Ansible。
      ceph_configuration_path
      可选。 替换为管理节点上Ceph配置文件的完整路径。
      keyring_destination_path(keyring_目的地路径
      可选。 请替换为复制密钥环的目标路径的全路径名。
      注: 如果在运行运行运行手册时未使用 conf 选项指定配置文件,那么运行手册将生成并分发最小配置文件。 缺省情况下,生成的文件位于 /etc/ceph/ceph.conf
      例如,
      [ ceph-admin@host01 cephadm-ansible]$ ansible-playbook -i hosts cephadm-clients.yml --extra-vars ' {"fsid":"266ee7a8-2a05-11eb-b846-5254002d4916","keyring":"/etc/ceph/ceph.client.admin.keyring","client_group":"clients","conf":"/etc/ceph/ceph.conf","keyring_dest":"/etc/ceph/custom.name.ceph.keyring"} '
    2. 复制一个默认目标为 ceph.keyring 且默认组为 clients 的钥匙串。
      ansible-playbook -i INVENTORY_FILE cephadm-clients.yml --extra-vars '{"fsid":"FSID","keyring":"KEYRING_PATH","conf":"CONF_PATH"}'
      例如,
      [ ceph-admin@host01 cephadm-ansible]$ ansible-playbook -i hosts cephadm-clients.yml --extra-vars ' {"fsid":"266ee7a8-2a05-11eb-b846-5254002d4916","keyring":"/etc/ceph/ceph.client.admin.keyring","conf":"/etc/ceph/ceph.conf"} '

下一步操作

登录到客户机节点并验证密钥环和配置文件是否存在。
例如,
[ user@client01 ~]# ls -l /etc/ceph/

  -rw-------.1 ceph ceph 151 Jul 11 12:23 custom.name.ceph.keyring
  -rw-------.1 ceph ceph 151 Jul 11 12:23 ceph.keyring
  -rw-------.1 ceph ceph 269 Jul 11 12:23 ceph.conf