📜  ansible 选择主机文件 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:13:24.811000             🧑  作者: Mango

Ansible 选择主机文件 - Shell-Bash

在使用 Ansible 进行自动化部署的过程中,需要指定要操作的主机列表。这时候就需要使用 Ansible 的选择主机文件功能。

选择主机文件的作用

选择主机文件(Host Inventory)是 Ansible 中用来定义要操作的主机列表的文件。主机列表可以是 IP 地址、域名或别名,也可以根据分组配置在不同的组中。

此外,选择主机文件还可以定义一些变量来传递给 Ansible playbook 中的任务。

常见的主机文件格式
INI 文件格式

INI 文件格式是一种常见的配置文件,常常用于配置文件和主机文件。Ansible 也可以使用此格式的选择主机文件。

以下是一个示例:

[webservers]
192.0.2.42
192.0.2.43

[dbservers]
192.0.2.44
192.0.2.45

[local]
localhost
YAML 文件格式

ANAIBLE 2.2 版本开始支持使用 YAML 格式的主机文件。相较于 INI 文件格式,YAML 文件格式更加简洁易读。

以下是一个示例:

all:
  children:
    webservers:
      hosts:
        web1:
          ansible_host: 192.0.2.42
        web2:
          ansible_host: 192.0.2.43
    dbservers:
      hosts:
        db1:
          ansible_host: 192.0.2.44
        db2:
          ansible_host: 192.0.2.45
    local:
      hosts:
        local:
          ansible_connection: local
Ansible 如何使用选择主机文件

在执行 Ansible playbook 命令时,可以使用 -i 参数来指定选择主机文件。

以下是示例命令:

ansible-playbook -i hosts.ini playbook.yml  # 使用 INI 格式的选择主机文件
ansible-playbook -i hosts.yaml playbook.yml  # 使用 YAML 格式的选择主机文件
小结

选择主机文件是 Ansible 自动化部署的重要组成部分之一,可以方便地指定要操作的主机列表,并传递变量。有了选择主机文件,部署工作将变得更加高效和简单。