saltstack之备份分发文件
前言
在日常工作中,我们经常会用saltstack来分发文件,但是如果稍有不慎就会不小心覆盖掉之前不想修改的文件,这样我们就需要回滚,但是又不知道具体被修改了那些地方,那么我们就需要一个备份的功能,每次分发文件时,如果有文件被修改,那么就将文件备份到指定目录,这样就算出错,我们也可以把原文件替换回去.
那么我们有2种方法:
- 在minion的配置文件中添加backup_mode: minion
- 在执行分发文件的states时,添加参数backup: minion
# 借用官网的例子
/etc/ssh/sshd_config:
file.managed:
- source: salt://ssh/sshd_config
- backup: minion
当sls 执行时发现sshd_config,被修改了的话,那么salt就会自动帮你备份sshd_config到/var/cache/salt/minion/file_backup(默认路径),并在文件名后面加上具体的日期方便查看.
这样就算我们误操作把原文件覆盖掉,我们也有备份文件可以还原.
参考
https://docs.saltstack.com/en/latest/ref/states/backup_mode.html#file-state-backups