3.9. 运行 preflight playbook


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

注意

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

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

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

示例

host02
host03
host04

[admin]
host01
Copy to Clipboard Toggle word wrap

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

preflight playbook 提供了一组全面的检查和任务,以确保 Red Hat Ceph Storage 部署的最佳系统配置。

playbook 检查和任务包括:

  • 正确的操作系统配置。

    • Red Hat Enterprise Linux 版本。
    • 正确的软件配置文件。
    • 已安装所有必需的软件包。如果缺少任何软件包,playbook 会安装强制缺少的软件包。
  • 正确的硬件配置。

    • CPU 配置
    • RAM 配置
    • 内存 swap 空间
    • 网络接口卡(NIC)配置
  • root-filesystem/var 的分离。
重要

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

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

注意

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

先决条件

在开始前,请确保您有以下先决条件:

  • 对 Ansible 管理节点的根级别访问权限.
  • 具有 sudo 的 Ansible 用户,对存储集群中所有节点的 ssh 访问和免密码访问。
  • 使用 dnf install cephadm-ansible 命令安装的 cephadm-ansible 软件包。

流程

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

    示例

    host02
    host03
    host04
    
    [admin]
    host01
    Copy to Clipboard Toggle word wrap

  3. 运行 preflight playbook。

    运行 preflight playbook,为集群中的所有主机运行 playbook,或针对集群中选定的一组主机运行 playbook。

    注意

    在运行 preflight playbook 时,cephadm-ansible 会在客户端节点上自动安装 chronyceph-common 软件包。

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

    1. 为集群中的所有主机运行 playbook。

      语法

      ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs"
      Copy to Clipboard Toggle word wrap

      Preflight Check ReportSummary 会生成并突出显示通过、失败和信息性检查。

      图 3.1. preflight playbook 输出示例

      报告中的每个输出类型都有对应的可视化显示。使用下表了解报告:

      重要

      所有检查仅都是信息。失败不会停止检查正在运行。

      Expand
      表 3.1. preflight 检查报告密钥
      报告类型对应的图标描述

      passed

      Green check mark

      满足基准或推荐值

      INFO

      Information icon

      常规系统或环境信息详情。

      Failed

      Red X

      不满足推荐的值。这只是信息。

      在报告的末尾提供了一个 Summary 部分。Summary 提供了失败检查的信息。

      注意

      该报告保存在当前工作目录中,其中 playbook 作为 ./preflight_report.txt 运行。报告的路径会在概述报告后显示。

    2. 使用- limit 选项,在存储集群中的一组主机上运行 preflight playbook。

      语法

      ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit GROUP_NAME|NODE_NAME
      Copy to Clipboard Toggle word wrap

      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
      Copy to Clipboard Toggle word wrap

验证

  1. 更新或修复 preflight 检查过程中标记的任何问题。
  2. 验证软件包是否已成功安装。

    示例

    [ansible@admin cephadm-ansible]$ rpm -q chrony ceph-common
    chrony-4.5-3.el9.x86_64 ceph-common-19.2.0-55.el9cp.x86_64
    Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat