Ansible — Ansible playbook 的基础

概念 – Concept

库存

作为Ansible的主要前提条件,
在清单中,可以将操作对象的主机分组。

image.png

战略手册

在Playbook中,可以描述一系列的处理流程,用于对该组进行特定动作的操作。

image.png

库存 x 执行手册

这个组合是自由的。

由于在清单文件中对主机进行分组,因此在Playbook中可以省去关于目标主机的繁琐描述。

image.png

确认操作

庫存

作为一个团队,描述连接目标主机

[example]
0.0.0.0
0.0.0.1

玩法手册

在这个例子中

    • example グループに対して

 

    • shell モジュールを使って

 

    ファイルを作成する

执行这个处理。

---
- hosts: example
  tasks:
  - name: touch text file
    shell: touch example.txt

执行

ansible-playbook -i inventory.txt playbook.yml

在存货中定义变量。

库存

    example グループが変数 ( vars ) を持つようにする
[example]
0.0.0.0
0.0.0.1

[example:vars]
file_name=example

玩法手册

在Playbook中,变量({{file_name}})可以被使用

---
- hosts: example
  tasks:
  - name: touch text file
    shell: touch {{file_name}}.txt

在播放书中定义变量。

将在存货中定义的变量移动到Playbook中。

库存

这里不需要指定变量。

[example]
0.0.0.0
0.0.0.1

玩法手册

在Playbook中定义变量,并尝试使用它。

---
- hosts: example
  vars:
    file_name: example
  tasks:
  - name: touch text file
    shell: touch {{file_name}}.txt

ansible命令与其它命令的区别。

如果要使用ansible命令执行相同的操作,请按照以下步骤进行。

ansible -i inventory.txt example -m shell -a 'touch example.txt'

虽然在 Ansible 命令中仍需要使用清单文件,
但由于操作本身需要写成一行命令,所以复杂的处理变得更加困难。

在中文中,只需要以下一种选项来转述这句话:参考

    • Ansible | Docker で Ansible の動作環境を作る – Qiita

 

    • Intro to Playbooks — Ansible Documentation

 

    shell – Executes a shell on a remote node — Ansible Documentation

招募聊天成员

如果你有任何问题、烦恼或需要咨询,可以使用LINE开放聊天来与我们交流。

 

推特 (tuī tè)

 

广告
将在 10 秒后关闭
bannerAds