Ansible — Ansible playbook 的基础
概念 – Concept
库存
作为Ansible的主要前提条件,
在清单中,可以将操作对象的主机分组。
战略手册
在Playbook中,可以描述一系列的处理流程,用于对该组进行特定动作的操作。
库存 x 执行手册
这个组合是自由的。
由于在清单文件中对主机进行分组,因此在Playbook中可以省去关于目标主机的繁琐描述。
确认操作
庫存
作为一个团队,描述连接目标主机
[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è)