ansible -i pbs_hosts all -m copy -a "src=file/hosts dest=/etc/ backup=yes"
那我们就可以用下面这种方式进行回滚
cat restore.hosts.yml
--- #固定格式 #- hosts: "{{ ansiblegroupnames }}" #需要操作的组或者服务器,可以使用-e传入 - hosts: "saas_hosts" gather_facts: false vars: file_name: /etc/hosts #需要恢复的远程文件位置,可以使用-e传入,当前位置为测试用文件 ansiblegroupnames: 127.0.0.1 tasks: - name: "查找指定文件:{{ file_name }}" find: recurse: no paths: - "{{ file_name | dirname }}" #- "/etc/" patterns: - '{{ file_name | basename }}\..*~' #这里必须使用单引号 use_regex: true register: backup_file #注册成变量 # - name: # debug: # msg: "{{ backup_file }}" - name: "查找最后一个备份文件按mtime时间排序" set_fact: latest_backup: "{{ (backup_file.files | sort(attribute='mtime') | last).path }}" - name: "还原备份文件:{{ file_name }}" copy: src: "{{ latest_backup }}" remote_src: true dest: "{{ file_name }}"
cat saas_hosts_all
[saas_hosts] 192.168.1.1
ansible-playbook -i saas_hosts_all restore.hosts.yml -C
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。