ansible安装建议使用rpm安装,简单便捷容易上手,作为初学者来说是再好不过的安装方法了,安装了ansible,让我们来了解下他的目录结构,以及配置文件结构。
一、 ansible目录结构介绍
shell> rpm -ql ansible | more
目录主要是以下几项
/etc/ansible #配置文件目录,主要功能为inventory主机信息配置、ansible工具功能配置;
/etc/ansible/ansible.cfg
/etc/ansible/hosts
/etc/ansible/roles
/usr/bin/ansible #执行文件目录,ansible命令默认存放目录
/usr/bin/ansible-2
/usr/bin/ansible-2.7
/usr/bin/ansible-config
/usr/lib/python2.7/site-packages/ansible #lib库依赖目录和python存放在一起
/usr/lib/python2.7/site-packages/ansible-2.7.10-py2.7.egg-info
/usr/lib/python2.7/site-packages/ansible-2.7.10-py2.7.egg-info/PKG-INFO
/usr/share/doc/ansible-2.7.10 #帮助文档目录
/usr/share/doc/ansible-2.7.10/CHANGELOG-v2.7.rst
/usr/share/man/man1/ansible-config.1.gz #man文档目录
/usr/share/man/man1/ansible-console.1.gz
二、ansible 主配置文件解析
ansible的主配置目录默认在 /etc/ansible/ansible.cfg ,ansible.cfg配置文件可以存放在多个地方,ansible读取配置文件的顺序一次是 当前命令执行目录->嫁用户目录下的.ansible.cfg->/etc/ansible.cfg,先找到那个就使用那个配置,ansible.cfg配置所有的内容均可在命令行通过参数的形式传递或定义在playbooks中。
shell> vim /etc/ansible/ansible.cfg
[defaults]
inventory = /etc/ansible/hosts #定义inventory
library = /usr/share/my_modules/ #自定义lib库存放目录
module_utils = /usr/share/my_module_utils/ #共享模块目录
remote_tmp = ~/.ansible/tmp #临时文件远程主机存放目录
local_tmp = ~/.ansible/tmp #临时文件本地存放目录
plugin_filters_cfg = /etc/ansible/plugin_filters.yml #插件文件
forks = 5 #默认开启得并发数
poll_interval = 15 #默认开启得轮询时间间隔
sudo_user = root #默认sudo用户
ask_sudo_pass = True #是否需要sudo密码
ask_pass = True #是否需要密码
transport = smart #
remote_port = 22 #远程端口
module_lang = C
module_set_locale = False
roles_path = /etc/ansible/roles #roles路径
timeout = 10 #ssh 超时
remote_user = root #远程用户
log_path = /var/log/ansible.log #日志存放
[inventory]
[privilege_escalation]
#become=True #是否sudo
#become_method=sudo #sudo方式
#become_user=root #sudo后变成root用户
#become_ask_pass=False #sudo后是否验证密码
[paramiko_connection]
#record_host_keys=False #不记录新主机的key以提升效率
#pty=False #禁用sudo功能
[ssh_connection]
#pipelining = False #管理加速功能,需配合requiretty使用方可生效
[persistent_connection] #持久链接
#connect_timeout = 30 #链接超时
#connect_retry_timeout = 15 #连接重试
#command_timeout = 10 #连接超时
[accelerate]
#accelerate_port = 5099 #加速链接端口
#accelerate_timeout = 30 #命令执行超时时间,单位秒
#accelerate_connect_timeout = 5.0 #链接超时时间,单位秒
#accelerate_daemon_timeout = 30 #上一个活动的链接的时间,单位分钟
#accelerate_multi_key = yes
[colors] #对颜色进行了定义
#highlight = white
#verbose = blue
#warn = bright purple
#error = red
#debug = dark gray
#deprecate = purple
#skip = cyan
#unreachable = red
#ok = green
#changed = yellow
#diff_add = green
#diff_remove = red
#diff_lines = cyan
[diff]
#always = no #运行时打印不同
#context = 3 #打印行数