自动化运维工具
开源网站:https://www.github.com
yum install ansible -y 安装ansible,可能需要先提前准备依赖包,制作本地yum源
rpm -ql ansible | less 查看包括的文件列表
ansible --version 查看版本
ansible 主配置文件:
/etc/ansible/ansible.cfg
defaults,
#invertory =/etc/ansible/hosts 主机目录
#library =usr/share/my_modules/ 库
#module_utils =/usr/share/my_module_utils/ 模块路径
#remote_tmp =~/.ansible/tmp
#local_tmp =~/.ansible/tmp
//把脚本生成python本地配置文件,然后CP到被控制主机的/.ansible/tmp目录下,然后执行。
注意:host_key_checking=False //需要先ssh到主机,在/etc/.ssh/know_hosts中存在记录才能正常连接。可以通过把下放配置文件#host_key_checking=False 取消注意。不check。
把日志文件启用: 需要把下方配置文件 #log_path=/var/log/ansible.log 注释取消。
ansible常用模块:
ansible 192.168.1.100 -m ping 查看存活 ansible的ping命令走的不是网络中的ICMP协议,用的是ssh协议。 //如果存活,则回应 pong
ansible 192.168.1.100,192.168.1.101 -m ping -k 输入口令。
//如果多主机密码不一样,不会多次输入口令。
//ssh 到主机会在.ssh know_hosts中存在
// ansible all -m ping ,host中的所有主机。主机清单/etc/ansible/hosts 192.168.1.100:700 .加端口号
ansible [group name] -m(模块) shell -a(返回结果) 'hostname' //shell模块直接使用linux命令
ansible [group name] -m copy -a 'src=(源路径)/root/ansible/test dest=(目标路径)/tmp backup=yes(备份) mode=(755 //权限) owner=(所属者)' //从服务器端copy文件到被控端
ansible [group name] -m fetch -a 'src=/tmp dest=/tmp' //从被控端copy文件到控制端