案例演示
将已安装阿帕奇的主机的配置文件,拷贝到ansible服务器上
scp root@192.168.17.30:/etc/httpd/conf/httpd.conf ./
将ansible服务器上的阿帕奇的配置文件改为模板
vim httpd.conf
Listen {{http_port}} #将监听端口设为变量
ServerName {{server_name}} #将域名改为变量
Maxclients {{max_access}} #将最大连接数设为变量
mv httpd.conf httpd.conf.j2
在ansible的hosts文件中,为变量赋值
vim /etc/ansible/hosts
[webserver]
192.168.17.20 http_port=192.168.17.20:80 server_name=www.mq.com:80 max_access=500
在ansible服务器上写一个剧本,并检查语法,执行
vim apache.yaml
- hosts: webserver
remote_user: root
vars:
- server: httpd
tasks:
- name: install httpd
yum: name={{server}}
- name: config file
template: src=/opt/httpd.conf.j2 dest=/etc/httpd/conf/httpd.conf
notify:
- restart httpd
- name: start httpd
service: name={{server}} state=started
handlers:
- name: restart httpd
service: name={{server}} state=restarted enabled=true
ansible-playbook apache.yaml --syntax-check
ansible-playbook apache.yaml