ansible安装配置

ansible特点:
模块化:调用特定的模块,完成特点的任务;

基于python语言开发,由paramiko、pyYAML和jinja2三个模块
部署简单:agentless  无客户端
支持自定义模块
支持playbook

幂等性 允许重复执行

一、安装

yum install ansible

/etc/ansible/ansible.cfg 主配置文件
/etc/ansible/hosts         主机列表

ansible 管理主机的两种方式:

1.通过将ansible主机秘钥分发在被管理主机,实现免密登录

2.或者在/etc/ansible/hosts配置主机列表中配置连接信息

二、简单应用

ansible通过ssh实现配置管理、应用部署、任务执行等功能,因此,需要实现配置
ansible端能基于秘钥认证的方式联系各被管理的节点

ansible <host-pattern> [-f forks] [-m module_name] [-a args]
  -m module: 默认command

ansible-doc: show ansible module documentation
  -l, --list List available modules
  -s, --snippet    show playbook snippet for specified module(s)

说明:

host-pattern: 指明要管理的主机

-f  forks  表示一次执行多少台机器

-m 调用什么模块  默认command

[root@master ~] # ansible-doc -l    // 显示ansible的模块
[root@master ~] # ansible-doc -s command    // 显示ansible command模块的用法
[root@master ~] # ansible 10.0.2.167 -m command -a 'ip a'    // 在167主机上远程执行查看ip命令 
[root@master ~] # ansible all -m command -a 'ip a'  // 在所有主机上执行查看ip命令
[root@master ~] # ansible all  -a 'ip a' 省略写法
[root@master ~] # ansible all -a 'ls' --list-hosts 显示主机列表
[root@master ~] # ansible all -a 'ls' -v  查看版本
[root@master ~] # ansible test123 -a 'ls'  指定分组
[root@master ~] #
原文地址:https://www.cnblogs.com/sunshine-long/p/10630552.html