#概念
ansible:自动化运维,批量管理众多机群
控制端安装ansible,被控制端只要有ssh,最小化默认都装了。
制作秘钥,实现不需要输密码连接
ssh-keygen -f /root/.ssh/id_rsa -N ''
#生成秘钥 -f 指定存放位置,-N给秘钥加密,密码为空(’’)pub开头是公钥
#利用for循环传秘钥给机群
for i in node1 node2 node3 node4 node5
> do
> ssh-copy-id $i
> done
测试 ssh node1 无密码进入即为成功
vim /etc/hosts 解析
192.168.4.253 control
192.168.4.11 node1
192.168.4.12 node2
192.168.4.13 node3
192.168.4.14 node4
192.168.4.15 node5
#安装ansible
首先需要三个包 ansible.tar.gz
ansible_soft.tar.gz lnmp_soft.tar.gz
tar -xf ansible_soft.tar.gz 解压
cd ansible_soft/ cd进来
cd 进来之后将里面的包全部装上,安装注意路径,相对路径yum -y install * 既能全部装上
#创建ansible的配置文件
[
root@control ~]# mkdir ~/ansible
[root@control ansible]# vim ~/ansible/ansible.cfg 是个新文件,写一下两行内容。
[defaults]
inventory= ~/ansible/hosts # 被控制端主机清单,待会去创建
#forks = 5 #ssh并发数量
#ask_pass = True #使用密钥还是密码远程
#host_key_checking = False #是否校验密钥
注释部分可以以不写
创建一个被控制端主机的清单文件
[参考/etc/ansible/hosts]
[root@control ~]# vim ~/ansible/hosts 定义组,实现批量管理
[test] #定义主机组(组名随意)
node1 #定义组中的机群
[proxy]
n