ansible-playbook快速入门
Posted 晓风残梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ansible-playbook快速入门相关的知识,希望对你有一定的参考价值。
一。yaml语法:
1. yaml语法编写
1.1 同层级的字段通过相同缩进表示
1.2 map结构里面key/value用‘:’来分隔
1.3 key/value可以同行写,也可以换行写,换行写必须以“-”来分隔
1.4 区分大小写
1.5 数组可以用 []
1.6 hash可以用{}
2. yaml语法注意事项:
2.1 字符串不一定要用双引号
2.2缩进中空格的数量不重要,关键是需要相同数量的空格,即同层级的字段需要左对齐
2.3不能用Tab字符
3. 下面一个yaml文件的两种写法,帮助理解其格式和语法
二。playbook语法:
1. 需要以‘---’开始,并顶行首写
2. 使用#号写注释代码
3. 次行建议写注释,说明功能
4. 相同层级的字段,具备相同的缩进
5. 程序判断配置的级别是通过缩进结合换行来实现的
6. 一个name只能包括一个task
三。playbook实用小技巧
1. --limit参数:
ansible-playbook xxx.yaml --limit webserver
此参数将无视文件里的host字段,仅对Inventory里的webserver操作
2. --list-hosts
ansible-playbook xxx.yaml --list-hosts
罗列出执行yaml文件时,生效的host,方便了解受影响的范围
3. --remote-user
在playbook中,如果host里没有定义user,那么将实用Inventory里的定义的用户,如果Inventory里也没有定义的话
ansible将默认使用当前系统用户身份来通过ssh远程主机中,运行playbook的的内容
当然,也可以通过--remote-user来指定ssh远程主机及执行命令的账号
4. --inventory=PATH,指定inventory的路径
5. -vvvv,精确显示每分钟的输出
6. --extra-vars=VARS,定义在playbook里使用的变量
7.--forks=NUM,指定并发执行的任务数量,默认为5
8.--checke 检测模式,Playbook的所有任务在每台主机上进行检测,但不真正执行
四。 样例见下面的博客:
https://blog.csdn.net/chengyuqiang/article/details/78529454
以上是关于ansible-playbook快速入门的主要内容,如果未能解决你的问题,请参考以下文章