搜索

1.6. 创建第一个 playbook

download PDF

使用以下步骤创建 ping 主机并输出 "Hello world" 消息的 playbook。

流程

  1. ansible_quickstart 目录中创建一个名为 playbook.yaml 的文件,其内容如下:

    - name: My first play
      hosts: myhosts
      tasks:
       - name: Ping my hosts
         ansible.builtin.ping:
    
       - name: Print message
         ansible.builtin.debug:
          msg: Hello world
  2. 使用以下命令运行 playbook:

    ansible-playbook -i inventory.ini playbook.yaml
  3. Ansible 返回以下输出:
PLAY [My first play] ****************************************************************************

TASK [Gathering Facts] **************************************************************************
ok: [192.0.2.50]
ok: [192.0.2.51]
ok: [192.0.2.52]

TASK [Ping my hosts] ****************************************************************************
ok: [192.0.2.50]
ok: [192.0.2.51]
ok: [192.0.2.52]

TASK [Print message] ****************************************************************************
ok: [192.0.2.50] => {
    "msg": "Hello world"
}
ok: [192.0.2.51] => {
    "msg": "Hello world"
}
ok: [192.0.2.52] => {
    "msg": "Hello world"
}

PLAY RECAP **************************************************************************************
192.0.2.50: ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
192.0.2.51: ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
192.0.2.52: ok=3    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

在这个输出中,您可以看到:

  • 提供 play 和每个任务的名称。始终使用描述性名称,使 playbook 易于验证和故障排除。
  • Gather Facts 任务隐式运行。默认情况下,Ansible 会收集有关可以在 playbook 中使用的清单的信息。
  • 每个任务的状态。每个任务都有一个 ok 状态,表示它成功运行。
  • play 总结用于汇总每个主机 playbook 中所有任务的结果。在本例中,有三个任务,因此 ok=3 表示每个任务都成功运行。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.