Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具。它用Python写成,类似于Chef和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。它使用SSH来和节点进行通信。
在采用YUM方式安装Ansible,首先安装EPEL源。
A:# yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
查看EPEL源中的Ansible版本
B:# yum info ansible
直接安装此版本,如果有其他要求,请调整源,安装其他ansible版本
C:# yum install -y ansible
安装完成之后,查看ansible版本信息
D:# ansible --version
基于KEY认证授权节点服务器
A:在主控端(Ansible服务器)上生成密钥对。
ssh-keygen
B:使用ssh-copy-id命令来复制Ansible公钥到所有的节点中
Ansible服务器清单简单配置
清单文件/etc/ansible/hosts,在此文件中编写节点主机的对应IP地址和端口
我这里只是做一个演示,其中IP后面可以添加节点真实的SSH的端口,在定义的内容上面有一个[]列表,里面的内容为自定义内容,方面为了操作绑定的节点主机,我习惯称之为分组列表
尝试一把简单验证(PING:PONG)
分组列表形式,是不是感觉到分组的好处了,虽然我在这个分组中只有一个IP,但是聪明的同学估计都已经想到它的实际效果了
SHELL命令执行情况
在主控端执行SHELL命令,查看节点状态信息
A:# ansible -m command -a 'df -lh' websrve
B:# ansible -m command -a 'uptime' websrve
C:# ansible -m command -a 'netstat -tnlp' websrve