Ansible简介
1、Ansible是什么
自动化运维工具,主要用来批量管理我们服务器。
2、Ansible的组成
Ansible只有一个服务端,是通过SSH协议进行主机间的互联。
3、Ansible的优点
1、Alsible可以批量管理主机
2、Ansible非常轻量级
3、ANsible可以统一Linux命令
4、Ansible缺点
1、在大规模集群下,性能比较低。
5、Ansible的安装
1、下载epel源
[root@master ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
2、安装Ansible
[root@master ~]# yum install ansible -y
3、测试
[root@master ~]# ansible --version
ansible 2.9.24
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Nov 16 2020, 22:23:17) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
6、配置Ansible
# 主配置文件(配置ansible的)
/etc/ansible/ansible.cfg
# hosts配置文件(配置ansible可以操作的主机的)
/etc/ansible/hosts
7、ansible主机配置
[root@master ~]# cat /etc/ansible/hosts
[web]
172.16.1.7 ansible_ssh_pass='1' ansible_ssh_port=22 ansible_ssh_user=root
172.16.1.8 ansible_ssh_port=22 ansible_ssh_pass='1' ansible_ssh_user=root
172.16.1.9 ansible_ssh_pass='1' ansible_ssh_port=22 ansible_ssh_user=root
1、纯IP
[web]
172.16.1.7
2、纯主机名
[web]
web01
3、IP和主机名
[web]
172.16.1.7
web02
4、组合
[web01]
172.16.1.7 ansible_ssh_pass='1' ansible_ssh_port=22 ansible_ssh_user=root
[web02]
172.16.1.8 ansible_ssh_pass='1' ansible_ssh_port=22 ansible_ssh_user=root
[web03]
172.16.1.9 ansible_ssh_pass='1' ansible_ssh_port=22 ansible_ssh_user=root
[web:children]
web01
web02
web03
# 注:
当ansible返回的颜色是绿色的时候,即为成功
当ansible返回的颜色是黄色的时候,表示远程主机内容已经被修改
当ansible返回的颜色为红色的时候,表示远程主机链接失败
8、基本操作
# 格式
ansible [链接主机组名] -m [模块名] -a [执行的命令]
all和*代表所有的主机组
9、ansible模块的帮助命令
ansible-doc
# 参数
-l : 查看所有的模块
# 查看帮助
ansible-doc [模块名]
10、模块
1、command模块