一个剧本的例子
改进的需求:根据下列要求,创建一个名为/home/student/ansible/roles.yml 的 playbook:
playbook 中包含一个 play, 该 play 在 balancers 主机组中的主机上运行并将使用 balancer 角色。
此角色配置一项服务,以在 webservers 主机组中的主机之间平衡 Web 服务器请求的负载。
浏览到 balancers 主机组中的主机( 例如 http://serverb.example.com/)将生成以下输出:
Welcom to serverc.example.com on 172.25.250.12.
重新加载浏览器将从另一 Web 服务器生成输出:
Welcom to serverd.example.com on 172.25.250.13.
playbook 中包含一个 play, 该 play 在 webservers 主机组中的主机上运行并将使用 phpinfo 角色。
请通过 URL/hello.php 浏览到 webservers 主机组中的主机将生成以下输出:
Hello PHP World from FQDN
其中,FQDN 是主机的完全限定名称。
例如,浏览到 http://serverc.example.com/hello.php 会生成以下输出:
Hello PHP World from serverc.example.com
另外还有 PHP 配置的各种详细信息,如安装的 PHP 版本等。
同样,浏览到 http://serverd.example.com/hello.php 会生成以下输出:
Hello PHP World from serverd.example.com
另外还有 PHP 配置的各种详细信息,如安装 PHP 版本等
---
- name: role apache
hosts: webservers
roles:
- apache
- name: role balancer
hosts: balancers
tags:
- t2
vars:
haproxy_frontend_port: 87
haproxy_backend_servers:
- name: "serverc"
address: "servera.lab.example.com:80"
- name: "serverd"
address: "172.25.250.13:80"
roles:
- balancer
tasks:
- name: firewall 87
firewalld:
port: 87/tcp
permanent: yes
state: enabled
immediate: yes
- name: seport
seport:
ports: 87
proto: tcp
setype: http_port_t
state: present
- name: role phpinfo
hosts: webservers
roles:
- phpinfo
页:
[1]