编写一个简单的playbook,实现在所有被控节点上循环安装php和 mariadb服务, 在被控节点node1上面组安装Development Tools组包,更新被控节点node1上面的所有软件包。
时间: 2024-02-05 09:11:58 浏览: 34
下面是一个简单的Ansible Playbook,可以实现在所有被控节点上循环安装php和mariadb服务,以及在被控节点node1上面组安装Development Tools组包,更新被控节点node1上面的所有软件包。
```yaml
---
- name: Install php and mariadb on all nodes
hosts: all
become: true
tasks:
- name: Install php and mariadb
yum:
name: "{{ item }}"
state: present
loop:
- php
- mariadb
- name: Install Development Tools and update software on node1
hosts: node1
become: true
gather_facts: true
tasks:
- name: Install Development Tools group package
yum:
group: "Development Tools"
state: present
- name: Update all software packages
yum:
name: "*"
state: latest
```
在上面的Playbook中,我们定义了两个任务:
- 第一个任务用于在所有被控节点上安装php和mariadb服务。
- 第二个任务用于在被控节点node1上安装Development Tools组包,并更新所有软件包。
需要注意的是,我们使用了两个不同的hosts标记来区分这两个任务。第一个任务使用了hosts: all,表示它将在所有被控节点上运行。第二个任务使用了hosts: node1,表示它将仅在被控节点node1上运行。