自动化运维工具Ansible之playbooks剧本及roles角色定制

本文介绍了Ansible中的playbooks和roles概念。playbooks是Ansible的剧本,用于配置、部署和管理远程节点,采用YAML语言编写。roles则提供了层次化的结构,方便组织和复用任务。文章详细讲解了playbooks的格式、基础组件,以及roles的目录结构和使用场景。
摘要由CSDN通过智能技术生成

一:playbooks;                                                                                                              

playbooks是Ansible用于配置、部署和管理被控节点的剧本。 通过执行一系列tasks,让远程主机达到预期状态;playbooks就像Ansible控制器给被控节点列出的的一系列to-do-list,而被控节点必须要完成。playbooks由YAML语言编写,YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822,Clark Evans在2001年5月在首次发表了这种语言,另外Ingy döt Net与Oren Ben-Kiki也是这语言的共同设计者。

playbooks格式:

1、文件的第一行应该以 ”—” (三个连字符)开始,表明YAML文件的开始(非必须);

2、在同一行中,#之后的内容表示注释,类似于shell,python和ruby;

3、YMAL中的列表元素以”-”开头然后紧跟着一个空格,后面为元素内容;

4、同一个列表中的元素应该保持相同的缩进。否则会被当做错误处理;

5、play中hosts,variables,roles,tasks等对象的表示方法都是键值中间以”:”分隔表示,”:”后面还要增加一个空格;

6、文件以.yml结尾。

eg:- apple- banana- orange等价于JSON的这种格式

Playbooks配置文件的基础组件:

Hosts:运行指定任务的目标主机;
remoute_user: 在远程主机上执行任务的用户;
sudo_user:也可以使用sudo,但是用户必须要有执行相应tasks的权限;
tasks:任务列表;
模块,模块参数;
格式:
(1) action: module arguments
(2) module: arguments
注意:shell和command模块后面直接跟命令,而非key=value类的参数列表;
(1) 某任务的状态在运行后为changed时,可通过“notify”通知给相应的handlers;
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值