playbook
简称剧本,可通过剧本做很多任务
与ad-hoc的区别
任务复杂,操作多时使用playbook
任务简单,临时性工作使用ad-hoc
语法
注意:是空格,不是tab键
ymal格式要求
1,第一行以3个'-'开始,可以不写
2,#表示注释
3,表达元素内容 ': ',有空格(重要)
4,列表缩进表示相同元素,否则格式错误
--- #开头,可以不写--- - hosts: test #指定主机 remote_user: centos #指定用户 tasks: #指定任务 #name 注释 #shell,yum为剧本使用的模块 - name: print info shell: echo $HOSTNAME ${date} + "%Y-%m-%d %T" - name: install sl yum: name=sl state=present - name: running sl shell: sl
剧本名playbook.yml
格式说明:
--- -(空格)hosts:(空格)test (空格)(空格)remote_user:(空格)centos (空格)(空格)tasks: #指定任务 (空格)(空格)(空格)(空格)-(空格)name:(空格)print info (空格)(空格)(空格)(空格)(空格)(空格)shell:(空格)echo $HOSTNAME(空格)${date}(空格)+(空格)"%Y-%m-%d(空格)%T" (空格)(空格)(空格)(空格)-(空格)name:(空格)install sl (空格)(空格)(空格)(空格)(空格)(空格)yum:(空格)name=sl state=present (空格)(空格)(空格)(空格)-(空格)name:(空格)running(空格)sl (空格)(空格)(空格)(空格)(空格)(空格)shell:(空格)sl
语法检查
#语法检查 ansible --syntax-check playbook.yml #预执行 ansible -C playbook.yml