【清单文件】
[student@workstation ~]$ lab start playbook-inventory
[student@workstation ~]$ cd playbook-inventory/
[student@workstation playbook-inventory]$ ll
total 4
-rw-r--r--. 1 student student 43 Jul 12 19:08 ansible.cfg
[student@workstation playbook-inventory]$ cat inventory
[webservers]
server[a:d].lab.example.com
[raleigh]
servera.lab.example.com
serverb.lab.example.com
[mountainview]
serverc.lab.example.com
[london]
serverd.lab.example.com
[development]
servera.lab.example.com
[testing]
serverb.lab/example.com
[production]
serverc.lab.example.com
serverd.lab.example.com
[us:children]
raleigh
mountainview
[student@workstation playbook-inventory]$ ansible-navigator inventory -i inventory -m stdout --list (可以跟组名例:us)
(-i 指定当前目录下 -m 指定输出 --list 列出)
[student@workstation playbook-inventory]$ lab finish playbook-inventory
【playbook】
{
---
- name: install and start apache httpd
hosts: web
tasks:
- name: ensure httpd packages is present (安装httpd)
ansible.builtin.dnf:
name: httpd
state: present (状态:present 让软件包存在
absent 让软件包不存在 latest 安装最新的)
- name: correct index.html is present(将文件。。放到、、)
ansible.builtin.copy:
src:files/index.html。。
dest:/var/www/html/index.html、、
- name: ensure httpd is started(启动服务)
ansible.builtin.service:
name:httpd
state:started
enabled: true
---
- name: enable intranet services
hosts: servera.lab.example.com
become: true
tasks:
- name:
ansible.builtin.dnf:
name:
- httpd
- firewalld
state: latest
}
[student@workstation ~]$ lab start playbook-review
[student@workstation ~]$ cd playbook-review
[student@workstation playbook-review]$ vim internet.yml
写清单文件
[student@workstation playbook-review]$ ansible-navigator run -m stdout internet.yml --syntax-check
playbook: /home/student/playbook-review/internet.yml
[student@workstation playbook-review]$ ansible-navigator run -m stdout internet.yml
PLAY [enable internet web service] *********************************************
TASK [Gathering Facts] *********************************************************
ok: [serverb.lab.example.com]