Ansible Playbook剧本

编写Ansible Playbook剧本,使用Playbook完成自动化操作

  • 熟悉Playbook语法格式
  • 编写Playbook管理系统账户
  • 编写Playbook管理逻辑卷
  • 编写Playbook管理软件包

YAML的格式要求如下:

  • "#"代表注释,一般第一行为三个横杠(---)
  • 键值【(key/value)->(a: 11)和a=11一个性质】对使用":"表示,数组(一个变量有多个值){a=(11  12  13)}使用"-"表示,"-"后面有空格数组
  • key和value之间使用":"分隔,":"后面必须有空格
  • 一般缩进由两个或以上空格组成
  • 相同层级的缩进必须对齐,缩进代表层级关系
  • 全文不可以使用tab键
  • 区分大小写
  • 扩展名为yml或者yaml
  • 跨行数据需要使用>或者|,其中|会保留换行符

Playbook语法格式要求如下:

  • playbook采用YAML格式编写
  • playbook文件中由一个或多个play组成
  • 每个play中可以包含:
  • hosts(主机)、tasks(任务)、vars(变量)等元素组成
  • 使用ansible-playbook命令运行playbook剧本

测试Playbook语法格式

编写第一个Playbook(剧本)

hosts、tasks、name是关键词(不可修改),ping是模块,调用不同模块完成不同任务。

  • [root@control ansible]# vim ~/ansible/test.yml
  • ---
  •      - hosts: all                                   #hosts定义要远程谁?
  •         tasks:                                       #tasks定义远程后要执行的任务有哪些?
  •            - name: This is my first playbook       #name后面的具体内容可以任意
  •              ping:
  • [root@control ansible]# ansible-playbook ~/ansible/test.yml          #执行

定义多个主机和任务的剧本

hosts由一个或多个组或主机组成,逗号分隔,tasks由一个或多个任务组成,多个任务按顺序执行,执行ansible-playbook命令可以使用-f选项自定义并发量。

  • [root@control ansible]# vim ~/ansible/test.yml
  • ---
  • - hosts: test,webserver
  •   tasks:
  •     - name: This is my first playbook #name后面的内容可以任意
  •       ping:
  •     - name: Run a shell command
  •       shell: touch ~/shell.txt
  • #hosts定义需要远程哪些被管理主机,hosts是关键词
  • #tasks定义需要执行哪些任务,tasks是关键词
  • #第一个任务调用ping模块,该模块没有参数
  • #第二个任务调用shell模块在被管理主机创建一个空文件~/shell.txt
  • [root@control ansible]# ansible-playbook ~/ansible/test.yml -f 5
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值