前言
这一篇ansible-playbook(二) 是紧跟上一篇ansible-playbook 的使用 来进行扩展,这一篇相对上一篇增加了 template (模板),backup(备份),register,failed_when 等情况的扩展。这一篇也是要基于上一篇关于 ansible-playbook 变量,Roles 的基础上来看。
实践
template 和 backup
先大致介绍template 和backup 功能:
template : 我们在针对一个比如像配置文件进行拷贝的时候,这个配置文件基本框架都是不变的。比如一个web 应用yml 针对 dev,stg,prd 环境需要规定端口是什么,数据库是什么等等。但针对dev 、stg、prd 的数据库url ,用户名,密码又是不一样的。所以针对同一个配置文件,面对不同环境又不能简单拷贝。这个时候我们就可以设置一个模板,但涉及到具体 url ,用户名,密码 用变量替代。针对不同环境使用不同值,这个时候过去文件就会将具体涉及到用户名,密码 变量的地方就会被真正值所替代了。
backup: 备份,顾名思义就是拷贝文件的时候如果原来的地方就有一个文件,这个时候就将原来的文件从命名一个备份文件。但如果原来文件和新拷贝文件一致则不会备份。
例子: