1.4. 构建清单


清单在中央文件中组织受管节点,为 Ansible 提供系统信息和网络位置。使用清单文件,Ansible 可以通过一个命令管理大量主机。

先决条件

  • 要完成以下步骤,您需要至少一个主机系统的 IP 地址或完全限定域名(FQDN)。出于演示目的,主机可以在容器或虚拟机本地运行。
  • 您还必须确保将公共 SSH 密钥添加到每个主机的 authorized_keys 文件中。使用以下步骤构建清单。

流程

  1. 在您创建的 ansible_quickstart 目录中创建名为 inventory.ini 的文件。
  2. 将新的 [myhosts] 组添加到 inventory.ini 文件中,并指定每个主机系统的 IP 地址或完全限定域名(FQDN)。

    [myhosts]
    192.0.2.50
    192.0.2.51
    192.0.2.52
  3. 使用以下方法验证您的清单:

    ansible-inventory -i inventory.ini --list

  4. 使用以下命令,对清单中的 myhosts 组发出 ping 命令:

    'Ansible myhosts -m ping -i inventory.ini'

    如果控制节点和受管节点上的用户名不同,请将 -u 选项与 Ansible 命令一起传递。

    192.0.2.50 | SUCCESS => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python3"
        },
        "changed": false,
        "ping": "pong"
    }
    192.0.2.51 | SUCCESS => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python3"
        },
        "changed": false,
        "ping": "pong"
    }
    192.0.2.52 | SUCCESS => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python3"
        },
        "changed": false,
        "ping": "pong"
    }

    您已成功构建了一个清单。

1.4.1. INI 或 YAML 格式的清单

您可以使用 INI 文件或 YAML 创建清单。在大多数情形中,如上例中,I INI 文件非常简单,易于读取少量受管节点。随着受管节点数量的增加,以 YAML 格式创建清单将变为 sensible 选项。

这与 inventory.ini 相同,它为受管节点声明唯一名称,并使用 ansible_host 字段:

myhosts:
  hosts:
    my_host_01:
      ansible_host: 192.0.2.50
    my_host_02:
      ansible_host: 192.0.2.51
    my_host_03:
      ansible_host: 192.0.2.52
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部