ansible之playbook脚本
Playbook1.playbook的组成部分
[*] 开头
用 --- 表示,表示是一个yaml文件,但是可以忽略不写
[*] Tasks(使命)
包罗了在目标主机上执行的操作,操作还是由模板来执行。每一个使命都是一个ansible的模块,调用系统命令、操作管理等等。
[*] Variables(变量)
存储和传递数据,可以自定义变量,在playbook中变量都是全局的。
[*] Templates模板
用于天生配置文件,可以在ansible当中定义好变量和属性,直接传给配置文件。
[*] Handlers处理惩罚器
满足条件时,举行触发的操作,通常用在使命发生“change”时,可以触发这个处理惩罚器,一般是用处理惩罚器来对服务举行重启
[*] Roles 脚色
是一种构造和封装playbooks的方式,类似docker-compose。(如今几乎不用)
2.实例
实例1: 简朴的playbook
https://i-blog.csdnimg.cn/direct/d95375c7a4af43e9b44cd5be7f9a30d3.png
https://i-blog.csdnimg.cn/direct/426d78dd72c642839849e7daa3f06602.png https://i-blog.csdnimg.cn/direct/9ae374b305114849a11e06f65830dac9.pnghttps://i-blog.csdnimg.cn/direct/e174145b15e2470db1c34b768b0576a8.png
实例2: vars
https://i-blog.csdnimg.cn/direct/d6690e87768f42e48439a2a43eb0ec42.png
https://i-blog.csdnimg.cn/direct/16b61adb1bc84f7d9f23143ad3fb9576.png https://i-blog.csdnimg.cn/direct/67d6ef924f65489881ff106eff01c0aa.png
https://i-blog.csdnimg.cn/direct/552b7b61a10147f1bad57218ee16c396.png
实例3: when判定
https://i-blog.csdnimg.cn/direct/10310807f5af4e78bc07ccc295f3cab5.png
练习
主机2台,只有当ip=192.168.206.50时,安装nginx,修改访问的页面“this is nginx”,修改完之后重启服务。
https://i-blog.csdnimg.cn/direct/7adaff04ede14f2080a72afaf72b1334.png
实例4: 循环
with_items 循环遍历
with_list 列表输出
with_together 同一列表位置数据组合输出的循环
with_nested 列表数据循环匹配
https://i-blog.csdnimg.cn/direct/949f70564c3b4915be72912868c2cd22.pnghttps://i-blog.csdnimg.cn/direct/8c7e518dbe044d97990a8d83778aed52.png
https://i-blog.csdnimg.cn/direct/a68383ccf1124caaa047173dde68c14b.pnghttps://i-blog.csdnimg.cn/direct/37bc0787bd9e4e92853ff98d673db099.pnghttps://i-blog.csdnimg.cn/direct/4006675079984883a81fb3dc65fe6740.png
https://i-blog.csdnimg.cn/direct/41b222011c36458c9b3c218aaff757b6.png
三种循环传参方式
https://i-blog.csdnimg.cn/direct/474864c554f5493283d9adcb4e795018.png
https://i-blog.csdnimg.cn/direct/cf0df322e4d048199d36f13e7d5d1983.png
https://i-blog.csdnimg.cn/direct/8856ac6fd938468981aaef65ccfaf6d8.png
实例5: tags
#tags -->
#debug 在ansible中相称于标签,在执行playbook的时候指定标签来运行我们必要的tasks。
1.debug:调试,调试的效果不会写入到目标主机
2.always:始终会运行的使命。
3.setup:网络主机信息
4.pre_tasks:在主使命之前运行的使命
5.post_tasks:在主使命之后运行的使命
6.自定义标签
7.never:这个使命永远不运行
https://i-blog.csdnimg.cn/direct/129c86e543c14710bb2a54fd0b3bce64.png
https://i-blog.csdnimg.cn/direct/6422f5db2e95438c9b85e1f820f4705e.png
https://i-blog.csdnimg.cn/direct/bdb85fd2b8de476fa66d20160e94d2ce.png
实例6: template
https://i-blog.csdnimg.cn/direct/49dc028cebe64e01981420c5d2dc026d.png
https://i-blog.csdnimg.cn/direct/942797f169e4483d859c25bae47b6657.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]