注意三台都需要联网
我的是80.100、80.101、80.102
我是在80.100上操作的其他两台只要开着就行了不需要操作
yum install -y epel-release //安装epel源
yum install ansible -y
ansible --version //查看ansible版本
yum install tree -y
cd /etc/ansible
vi hosts //配置主机清单
最后一行添加
[web]
192.168.80.10[1:2]
ansible all --list-hosts 显示所有已定义的主机
ssh-keygen -t rsa
ssh-copy-id [email protected]
ssh-copy-id [email protected]
ansible all -a 'systemctl stop firewalld'
ansible all -a 'setenforce 0'
mkdir -p /opt/roles/Nginx/{tasks,templates}
cd /opt/roles/Nginx/tasks/
vi epel.yml
- name: copy epel
copy: src=/etc/yum.repos.d/ dest=/etc/yum.repos.d/
vi user.yml
- name: create user
user: name=Nginx group=Nginx system=yes shell=/sbin/nologin
vi group.yml
- name: create group
group: name=Nginx system=yes
vi yum.yml
- name: install package
yum: name=Nginx
vi start.yml
- name: start service
service: name=Nginx state=restarted enabled=true
vi restart.yml
- name: restart service
service: name=Nginx state=restarted
cd ../templates/
yum install -y Nginx
cp /etc/Nginx/Nginx.conf Nginx.conf.j2
vi Nginx.conf.j2
worker_processes {{ ansible_processor_vcpus }};
cd ../tasks/
vi temp.yml
- name: copy conf file
template: src=Nginx.conf.j2 dest=/etc/Nginx/Nginx.conf
vi main.yml
- include: epel.yml
- include: group.yml
- include: user.yml
- include: yum.yml
- include: temp.yml
- include: start.yml
cd /etc/ansible/
vi Nginx_role.yml
- hosts: web
remote_user: root
roles:
- role: Nginx
tree roles/
mkdir -p /etc/ansible/group_vars/
touch /etc/ansible/group_vars/all
mkdir -p /etc/ansible/roles/common
mkdir -p /etc/ansible/roles/httpd/{files,templates,tasks,handlers,vars,defaults,Meta}
mkdir -p /etc/ansible/roles/MysqL/{files,templates,tasks,handlers,vars,defaults,Meta}
mkdir -p /etc/ansible/roles/PHP/{files,templates,tasks,handlers,vars,defaults,Meta}
touch /etc/ansible/roles/httpd/{defaults,vars,tasks,Meta,handlers}/main.yml
touch /etc/ansible/roles/MysqL/{defaults,vars,tasks,Meta,handlers}/main.yml
touch /etc/ansible/roles/PHP/{defaults,vars,tasks,Meta,handlers}/main.yml
vi /etc/ansible/site.yml
- hosts: web
remote_user: root
roles:
- httpd
- MysqL
cd /opt/
vi Nginx.yml
- hosts: web
remote_user: root
roles:
- role: Nginx
ansible web -a "rpm -Uvh http://Nginx.org/packages/centos/7/noarch/RPMS/Nginx-release-centos-7-0.el7.ngx.noarch.rpm"
ansible-playbook Nginx.yml
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。