第 9 章 使用 Ansible playbook 备份和恢复 IdM 服务器
使用 ipabackup
Ansible 角色,您可以自动备份 IdM 服务器,在服务器和 Ansible 控制器之间传输备份文件,并从备份中恢复 IdM 服务器。
9.1. 使用 Ansible 创建 IdM 服务器的备份
您可以在 Ansible playbook 中使用 ipabackup
角色创建 IdM 服务器的备份,并将其存储在 IdM 服务器上。
先决条件
您已配置了 Ansible 控制节点以满足以下要求:
- 您在使用 Ansible 版本 2.15 或更高版本。
-
已安装
freeipa.ansible_freeipa
集合。 - 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
-
示例假定 secret.yml Ansible vault 存储了您的
ipaadmin_password
,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
-
目标节点(这是执行
freeipa.ansible_freeipa
模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
流程
进入
~/MyPlaybooks/
目录:cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/
Copy to Clipboard Copied! 制作位于
/usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks
目录中的backup-server.yml
文件的副本:cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/backup-server.yml backup-my-server.yml
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/backup-server.yml backup-my-server.yml
Copy to Clipboard Copied! -
打开
backup-my-server.yml
Ansible playbook 文件以进行编辑。 通过将您的清单文件中的
hosts
变量设置为主机组来调整 文件。在本例中,将其设置为ipaserver
主机组:--- - name: Playbook to backup IPA server hosts: ipaserver become: true roles: - role: freeipa.ansible_freeipa.ipabackup state: present
--- - name: Playbook to backup IPA server hosts: ipaserver become: true roles: - role: freeipa.ansible_freeipa.ipabackup state: present
Copy to Clipboard Copied! - 保存该文件。
运行 Ansible playbook,指定清单文件和 playbook 文件:
ansible-playbook --vault-password-file=password_file -v -i ~/MyPlaybooks/inventory backup-my-server.yml
$ ansible-playbook --vault-password-file=password_file -v -i ~/MyPlaybooks/inventory backup-my-server.yml
Copy to Clipboard Copied!
验证
- 登录到您备份的 IdM 服务器。
验证备份是否位于
/var/lib/ipa/backup
目录中。ls /var/lib/ipa/backup/
[root@server ~]# ls /var/lib/ipa/backup/ ipa-full-2021-04-30-13-12-00
Copy to Clipboard Copied!