前言

请提前使用分发脚本对要管理的主机进行配置免密,否则可能会导致无法按照教程一步步使用ansible管理主机

准备步骤

安装

centos7的简单安装方式如下

yum install -y epel-release
yum install -y ansible

配置主机清单

默认的主机清单位置在/etc/ansible/hosts如无使用-i 指定文件名进行指定主机清单,将会默认使用这个主机清单

vim   /etc/ansible/hosts
# 分组名自定义[分组名]下面几行是分组的主机ip
[oldboy]
192.168.26.101
192.168.26.102
192.168.26.103
192.168.26.104

使用方法

[oldboy]是分组名 ping是模块名

ansible oldboy -m ping

ansible 基础说明

ansible 命令格式

ansible   主机分组  -m  指定模块
ansible   主机分组  -m  指定模块  -a  指定模块中的选项

注意!批量执行与管理时不要执行交互式命令

ansible 配置文件

/etc/ansible/ansible.cfg   # ansible的配置文件
host_key_checking = False #取消这行注释,是用来避免连接新机器时出现yes/no的确认
/etc/ansible/hosts            # ansible的默认主机清单

ansible 主机清单

基本格式
[oldboy]  #[分组名]
192.168.26.101
192.168.26.102
192.168.26.103
192.168.26.104
指定用户名,密码,端口

不推荐 建议使用上面的基本格式,并且做免密登录分发

主机清单中指定的信息
连接的ssh端口 ansible_ssh_port=22
连接的ssh用户 ansible_ssh_user=root
连接的ssh密码 ansible_ssh_pass=’Aa142536’

写法如下:

[oldboy]  #[分组名]
192.168.26.101   ansible_ssh_port=22  ansible_ssh_user=root  ansible_ssh_pass='Aa142536'
子组
[web]
192.168.26.101
[db]
192.168.26.104
[nfs]
192.168.26.103
[backup]
192.168.26.102

[data:children] #data:children表示data是创建的子组,组里包含db,nfs,backup3个组
db
nfs
backup

注:使用ansible命令时如果需要调用所有,则在分组名写all,如果需要调用单台则使用ip