Answers:
可以使用Ansible备份服务器。我是Ansible的新用户,所以我不确定这是否是一个好习惯。
如果要备份数据库,可以使用mysql_db模块。
tasks:
- name: backup db server
mysql_db: name={{item}} state=dump target=/{{item}}-{{ansible_date_time.iso8601}}.sql
with_items: db_name
那么您可以使用获取或同步模块将这些文件传输到本地计算机。使用fetch
模块时,由于不支持通配符和文件夹下载,因此无法下载多个文件。创建一个tar文件是解决此问题的一种选择。
您还可以scp
用于从远程实例下载备份文件。
- name: Downloading backup files from remote machine
command: scp -i {{ansible_ssh_private_key_file}} {{remote_user}}@{{host}}:/backup/* {{backup_folder}}
delegate_to: 127.0.0.1
在回答我自己的问题时,我找到了允许从远程服务器下载文件的访存模块:http : //docs.ansible.com/ansible/fetch_module.html