ansible服务器:10.0.0.20
client01:10.0.0.21
client02:10.0.0.22
一、安装ansible
1、 python版本需要2.6以上,CentOS7默认安装python2.7.5
2、 添加yum 源
a、 vim /etc/yum.repos.d/ansible http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
b、 添加如下内容:
[epel] name = all source for ansible baseurl = https://mirrors.aliyun.com/epel/7/x86_64/ enabled = 1 gpgcheck = 0 [ansible] name = all source for ansible baseurl = http://mirrors.aliyun.com/centos/7/os/x86_64/ enabled = 1 gpgcheck = 0
3、yum clean all
4、安装ansible:yum install ansible -y
5、相关文件及命令说明
/etc/ansible/ansible.cfg 主配置文件
/etc/ansible/hosts 主机清单
/etc/ansible/roles/ 存放角色的目录
ansible-doc 帮助文档,模块功能查看工具
ansible-galaxy 下载/上传代码或Roles模块的官网平台
ansible-playbook 定制自动化任务
ansible-pull 远程执行命令工具
ansible-vault 文件加密工具
ansible-console 基于Console界面与用户交互的执行工具
#ansible.cfg 说明 #inventory = /etc/ansible/hosts #主机列表配置文件 #library = /usr/share/my_modules/ #库文件存放目录 #module_utils = /usr/share/my_module_utils/ #remote_tmp = ~/.ansible/tmp #临时py命令文件存放在远程主机目录 #local_tmp = ~/.ansible/tmp #本机的临时命令执行目录 #forks = 5 默认并发数 #poll_interval = 15 #sudo_user = root #默认sudo用户 #ask_sudo_pass = True #每次执行ansible命令是否询问ssh密码 #ask_pass = True #transport = smart #remote_port = 22 #module_lang = C #module_set_locale = False host_key_checking = False #检查对应服务器的host_key,建议取消注释 log_path = /var/log/ansible.log #日志文件,建议开启
二、配置ansible
1、 使用ansible前需实现ansible服务器对另外两台机的ssh无密码访问,操作如下:
a、 输入命令:ssh-keygen,一直按回车,直至完成操作;
b、 命令:ssh-copy-id root@10.0.0.21 ,然后输入连接密码即可实现无密码访问,另外一台机的设置方式一样,不再赘述。
2、 添加ansible客户机组,命令:vim /etc/ansible/hosts,在最后面添加如下内容:
[group1]
10.0.0.21
10.0.0.22
三、使用ansible
1、 在另外两台机上执行ping命令:ansible group1 -m ping
2、 复制本机文件到组group1:ansible group1 -m copy -a “src=/etc/hosts dest=/etc/”
3、 帮group1安装软件:ansible group1 -m shell -a “yum install wget -y”