3.11. 运行 preflight playbook

此 Ansible playbook 配置 Ceph 存储库,并准备用于引导的存储集群。它还会安装一些前提条件,如 podmanlvm2chronydcephadmcephadm-ansiblecephadm-preflight.yml 的默认位置为 /usr/share/cephadm-ansible

preflight playbook 使用 cephadm-ansible 清单文件来识别存储集群中的所有 admin 和节点。

重要

对 Red Hat Enterprise Linux 9 跳过这些步骤,因为 cephadm-ansible 不被支持。

清单文件的默认位置为 /usr/share/cephadm-ansible/hosts。以下示例显示了典型的清单文件的结构:

示例

host02
host03
host04

[admin]
host01

清单文件中的 [admin] 组包含存储了 admin 密钥环的节点的名称。在新存储集群中,[admin] 组中的节点将是 bootstrap 节点。要在引导集群后添加额外的 admin 主机,请参阅安装指南中的设置管理节点

注意

在引导初始主机前运行 preflight playbook。

重要

如果要执行断开连接的安装,请参阅运行 preflight playbook 来进行断开连接的安装

先决条件

  • 对 Ansible 管理节点的根级别访问权限.
  • 具有 sudo 的 Ansible 用户,对存储集群中所有节点的 ssh 访问和免密码访问。

    注意

    在以下示例中,host01 是 bootstrap 节点。

流程

  1. 进入 /usr/share/cephadm-ansible 目录。
  2. 打开并编辑 hosts 文件并添加节点:

    示例

    host02
    host03
    host04
    
    [admin]
    host01

  3. 运行 preflight playbook:

    语法

    ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs"

    示例

    [ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs"

    安装完成后,cephadm 驻留在 /usr/sbin/ 目录中。

    • 使用 --limit 选项在存储集群中的一组主机上运行 preflight playbook:

      语法

      ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit GROUP_NAME|NODE_NAME

      GROUP_NAME 替换为清单文件中的组名称。将 NODE_NAME 替换为清单文件中的特定节点名称。

      注意

      另外,您可以根据组名称,如 [mons], [osds], 和 [mgrs] 等对节点进行分组。但是,必须将管理节点添加到 [admin] 组和客户端,必须将客户端添加到 [clients] 组中。

      示例

      [ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit clients
      [ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit host01

    • 运行 preflight playbook 时,cephadm-ansible 会自动在客户端节点上安装 chronydceph-common

      preflight playbook 安装 chronyd,但为单个 NTP 源进行配置。如果要配置多个源,或者有断开连接的环境,请参阅以下文档以了解更多信息: