d5,ansible(2)-playbooks的研究
#纯属个人理解,不足之处请探讨,
playbooks~
作用:playbooks可以做到在多组机器间编排有序的执行过程,并且可以同步或异步的发起任务。
结构:playbook由一个或多个‘plays’组成,它的内容是一个以‘play‘为元素的列表。
每一个play包含了一个task列表,一个task在其对应的所有主机上执行完毕之后,下一个task才会执行。
关键词:
handlers,handlers也是一种task列表,
大多用来重启服务,或者触发系统重启操作,
等到play中所有task执行完成之后,handlers也只会被执行一次,
任何在排队等候的handles在执行到‘- meta : ’部分时,优先执行。
include,是一种task命令,
当需求在多个play或多个playbook中重复使用同一个task列表时,使用include files,
include file的书写格式,其实就是一个普通的task列表,
include指令(引用include file文件或其它playbook文件):‘- include : *.yml’,其实就是一条普通的task命令,可以和非include的tasks混合使用,
include可以传递变量。
roles(角色),是一个文件结构(目录),
是组织playbook最好的方式,更易于维护,
可以对内容分组,自动加载vars_files,tasks,以及handlers,
可以与其它用户分享。