概述
题目要求:
一、创建剧本 config_nginx.yml,完成以下功能:
1、安装nginx
2、提供默认主页
3、启动并开机自启服务
步骤:
- 创建 config_nginx.yml 文件
[root@student day2]# touch config_nginx.yml
- 按要求编写脚本
---
- hosts: all
tasks:
- name: 1. install nginx
yum:
name: nginx
- name: 2. default page
copy:
content: 'This is my default page!n '
dest: /var/www/html/index.html
- name: 3. config services
service:
name: nginx
state: started
enabled: yes
- name: 4. firewalld
firewalld:
service: http
permanent: yes
immediate: yes
state: enabled
- 对脚本进行语法检查或空运行
# 语法检查
[root@student day2]# ansible-playbook config_nginx.yml --syntax-check
# 空运行
[root@student day2]# ansible-playbook config_nginx.yml -C
PLAY [all] ************************************************************************
TASK [Gathering Facts] ************************************************************
ok: [student]
ok: [node3]
ok: [node1]
ok: [node2]
TASK [1. install nginx] ***********************************************************
ok: [node3]
ok: [node1]
ok: [node2]
ok: [student]
TASK [2. default page] ************************************************************
ok: [node3]
ok: [node1]
ok: [node2]
ok: [student]
TASK [3. config services] *********************************************************
ok: [node3]
ok: [node2]
ok: [node1]
ok: [student]
TASK [4. firewalld] ***************************************************************
ok: [node3]
ok: [node2]
ok: [node1]
ok: [student]
PLAY RECAP ************************************************************************
node1 : ok=5 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
node2 : ok=5 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
node3 : ok=5 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
student : ok=5 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
- 运行脚本
[root@student day2]# ansible-playbook config_nginx.yml
PLAY [all] ************************************************************************
TASK [Gathering Facts] ************************************************************
ok: [student]
ok: [node1]
ok: [node2]
ok: [node3]
TASK [1. install nginx] ***********************************************************
ok: [node1]
ok: [node2]
ok: [node3]
ok: [student]
TASK [2. default page] ************************************************************
ok: [node1]
ok: [node3]
ok: [node2]
ok: [student]
TASK [3. config services] *********************************************************
ok: [node1]
ok: [node3]
ok: [node2]
ok: [student]
TASK [4. firewalld] ***************************************************************
changed: [node2]
changed: [node1]
changed: [node3]
changed: [student]
PLAY RECAP ************************************************************************
node1 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
node2 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
node3 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
student : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
二、创建一个名为packages.yml的剧本
1、在 dev,prod 和 test 主机组中安装 php 和 mariadb 软件包
2、在 dev 主机组中安装 Development Tools 包组
3、升级 dev 主机组中主机的所有软件包
步骤:
- 创建 packages.yml 文件
[root@student day2]# touch packages.yml
- 按要求编写脚本
---
- name: 1. #在 dev,prod 和 test 主机组中安装 php 和 mariadb 软件包
hosts: dev,prod,test
tasks:
- name: 1.1 install php
yum:
name: php
- name: 1.2 install mariadb
yum:
name: mariadb
- name: 2. #在 dev 主机组中安装 Development Tools 包组
hosts: dev
tasks:
- name: install Development Tools
yum:
name: "@Development Tools"
state: present
- name: 3. #升级 dev 主机组中主机的所有软件包
hosts: dev
tasks:
- name: upgrade dev all software
yum:
name: "*"
state: latest
最后
以上就是年轻唇彩为你收集整理的Ansible实战:Playbook编写的全部内容,希望文章能够帮你解决Ansible实战:Playbook编写所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复