ansible 基本用法

版权声明:微信:15216874307 QQ:1009002494 https://blog.csdn.net/Doudou_Mylove/article/details/89839297

 

ansible是一个基于Python开发的自动化运维工具
ansible的功能实现基于SSH远程连接服务
ansible可以实现批量系统配置,批量软件部署,批量文件拷贝,批量运行命令等功能

特点
1)不需要单独安装客户端,基于系统自带的sshd服务,sshd就相当于ansible的客户端
2)不需要服务端
3)需要依靠大量的模块实现批量管理
4)配置文件/etc/ansible/ansible.cfg

 

管理端安装ansible(需要epel.repo源)

yum -y install epel*

yum -y install ansible

 

所有被管理端需要安装:

yum -y install libselinux-python(CentOS7默认已安装)

 

配置文件修改:

vim /etc/ansible/ansible.cfg

host_key_checking = False(将注释去掉,以防下图报错)

添加被管理端主机信息:

ansible_ssh_userssh连接的用户名

ansible_ssh_passssh连接的密码

#如果设置了ssh密钥连接的话,hosts文件只配置IP即可。

 

ansible命令测试:

 

调用ansible内置的copy模块:

先创建一个临时测试文件:echo "111" >/tmp/cjk.txt

查看copy内容是否正确:

 

远程执行脚本测试:

#先将脚本分发到各个机器上去

echo "echo '测试成功!'" > /tmp/test.sh

ansible benn -m copy -a "src=/tmp/test.sh dest=/tmp/ mode=0755 backup=yes"

#注意:dest路径的写法,若是不存在的目录,结尾要加斜线(/tmp/),否则默认不会创建目标目录

#特别提示:
如果目标路径存在文件,并且目标文件和你想要copy的文件完全相同的话,也会导致ansilbecopy功能失效

 

远程批量执行脚本

 

常用模块:每个模块就是一个功能

 

ansible-doc -l 查看所有的模块
ansible-doc -s service 查看指定模块用法

 

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/Doudou_Mylove/article/details/89839297