Ansible——部署ansible
1、ansible清单
清单:定义ansible将要管理的一批主机,可以通过在静态文本文件中定义或外部来源获取信息的脚本来动态确定,因此,分为静态主机清单(包括INI或YAML样式)和动态主机清单。
定义主机清单:主机组名称用“[]”括起来,改组中每一受管主机的主机名或IP地址各占一行。
嵌套组:创建后缀名“:children”包含多个主机组构成的组。
范围简化:指定主机名称或IP地址范围来简化主机清单。[1:6]
验证清单:ansible HOSTNAME --list-host。-i选项:指定清单位置。
2、配置文件优先级
./ansible.cfg优先于 ~/.ansible.cfg优先于/etc/ansible/ansible.cfg
3、配置文件中设置
由defaults(设置ansible操作默认值)和privilege_escalation (配置ansible在受管主机上执行特权升级)两部分组成,以键值对形式定义的设置。
[defaults]
Inventory = ./inventory 指定清单文件路径
Remote_user = user 受管主机登录的用户名称
Rask_pass = false 是否输入ssh密码
[privilege_escalation]
Become = ture 是否需要提权
Become_mothod = sudo 提权方式
Become_user = root 提权到root用户
Become_ask_pass = false 是否需要输入密码
4、配置文件注释
井号或编号字符(#):注释掉整行
分号(;)注释掉其右侧所有内容
5、运行ansible临时命令【具有最高优先级】
-a |
模块参数 |
-c |
空运行 |
-e |
声明变量,指定变量赋值 |
-i |
指定位置 |
-m |
模块名称 |
-o |
单行输出 |
--syntax-check |
语法检查 |
-b |
提权 |
-k(--ask-passwd) |
是否需要密码 |
-u |
指定远程登录用户 |