Ansible笔记

1、Ansible目录结构
一、/etc/ansible/ 配置文件目录
功能: Inventory 主机信息配置、ansible工具功能(ansibe.cfg、hosts、roles) 
二、/usr/bin 执行文件目录
三、/usr/lib/python/site-packages/ansible/ lib库依赖目录
四、/usr/share/doc/ansible 帮助文档目录
五、/usr/share/man/man1 man文档目录node

2、Ansible配置文件解析
[defaults]
inventory = /etc/ansible/hosts 定义Inventory
library = /usr/share/my_modules/ 自家义lib库目录
remote = $HOME/.ansbile/tmp 临时文件远程主机存放目录
local_tmp = $HOME/.ansbile/tmp 临时文件本地存放目录
forks = 5 并发数
sudo_user = root 默认sudo用户 
ask_sudo_pass = True 否须要sudo密码 
role_path = /etc/ansible/roles 默认下载的Roles存放目录
host_key_checking = False 首次链接是否须要检测查key
timeout = 10 超时时间
log_path 日志路径
module_name = command 执行模块 
action_plugins= action插件的存放目录 
callback_plugins callback插件的存放目录
connection_plugins connection插件的存放目录
lookup_plugins lookup插件的存放目录
vars_plugins vars插件的存放目录
filter_plugins filter插件的存放目录
strategy_plugins strategy插件的存放目录
fact_caching = memory getfact缓存的主机信息存放方式 
retry_files_enabled = Falsepython

[privilege_escalation]
become=True 是否sudo 
become_method=sudo sudo方式
become_user=root sudo后变为root用户 
become_ask_pass=False sudo是否 验证密码shell

[paramiko_connection]
recore_host_keys=False 不记录新主机的key以提高效率
pty=False缓存

[ssh_connection]
pipelining =False 管道加速功能配合 requiretty使用并发

[accelerate]
accelerate_port 加速链接端口
accelerate_timeout 命令执行超时时间 
accelerate_connection_timeout 链接超时时间 
accelerate_daemon_timeout 上一个活动链接时间
accelerate_multi_key = yesssh

3、ansible命令
-m NAME 指定执行使用模块
-u 远程主机以username运行命令
-s 至关于sudo
-U 使用sudo工具

例子:
建立 /etc/ansible/hosts
[k8s]
10.18.1.232
10.18.1.233
10.18.1.234
[node1]
10.18.1.232ui

ansible all -m ping -u root
ansible node1 -m shell -a ifconfig插件

3、inventory详解
Inventory是ansible管理主机信息配置文件
一、定义主机和组
二、定义主机变量
三、定义组变量
四、定义组嵌套及组变量
五、多重变量定义scala

相关文章
相关标签/搜索