一.什么是Ansible?
官方的title是“Ansible is Simple IT Automation”——简单的自动化IT工具。这个工具的目标有这么几项:让我们自动化部署APP;自动化管理配置项;自动化的持续交付;自动化的(AWS)云服务管理。所有的这几个目标本质上来说都是在一个台或者几台服务器上,执行一系列的命令而已。批量的在远程服务器上执行命令 。
二.实验环境配置
ansible需要在epel源里面下载 所以需要主机联网
1.配置nodea-----ansible服务器
别忘了在主机开启地址伪装策略
2.测试nodea配置 并修改主机名
3.配置nodeb
网络配置:
修改主机名:
三.Ansible的安装
1.阿里云寻找链接
开发者------> 镜像站
----->EPEL
----->链接
2.nodea 输入链接
安装成功!!
3.查看版本号
3.构建Anisble清单
清单就是ansible控制主机的列表
/etc/ansible/hosts ##全局清单文件
1.#清单查看:
ansible 清单中组名称 [-i 清单文件] --list-hosts
ansible ungrouped --list-hosts
ansible all --list-hosts
14 vim hosts
15 ansible all --list
16 ansible westos --list
17 ansible westos --list-hosts
18 vim /mnt/inventory
25 ansible ungrouped --list --inventory /mnt/inventory
26 ansible lee --list --inventory /mnt/inventory
27 ansible all --list --inventory /mnt/inventory
2. #单层清单#
[list1]
node1.westos.com
node2.westos.com
[list2]
node2.westos.com
[list3]
172.25.254.240
#嵌套清单#
[westos:children]
list1
list3
[root@westos_ansible ansible]# vim hosts
34 ansible test1 --list
35 ansible testall --list
#3.主机规格的范围化操作#
#通过指定主机名称或IP的范围可以简化Ansible主机清单
#语法:
#[start:end]
[westostest]
172.25.254.[100:108]
14 vim hosts
36 ansible testmore --list
#4.指定其他清单文件
ansible默认情况是不读取 其他清单
但是可以指定
1)在 mnt 下写清单
vim /mnt/westos
2)默认情况ansible不会读取
3)指定清单
5. #ansible命令指定清单的正则表达式
: 逻辑或
* 所有
:& 与
:! 逻辑非
~ 以关键字开头
~(str1|str2) 以条件1或条件2开头
vim hosts