使用身份管理执行灾难恢复
大约 26 分钟
使用身份管理执行灾难恢复
来源:官方文档 原始多页入口:使用身份管理执行灾难恢复 内容规模:约 31,331 字符,29 个章节标题,132 个命令/代码块,5 条提示框
阅读提要
- 副标题:在服务器或数据丢失后恢复 IdM
- 摘要:硬件故障和站点中断需要快速、准确的响应来恢复身份管理(IdM)服务。识别特定的故障类型并评估您的 IdM 拓扑以确定最有效的恢复路径。 使用复制来替换丢失的服务器,或者应用虚拟机快照和 IdM 备份来恢复损坏的数据。恢复后,更新 DNS 和 Kerberos 的客户端设置,以确保整个环境中的完全连接和服务功能。
- 主要章节:在服务器或数据丢失后恢复 IdM;对红帽文档提供反馈;第 1 章 IdM 中的灾难情况;第 2 章 使用复制恢复单个服务器;第 3 章 使用复制恢复多个服务器;第 4 章 使用虚拟机快照恢复数据丢失;第 5 章 使用 IdM 备份恢复数据丢失;第 6 章 使用 Ansible playbook 恢复 IdM 服务器;第 7 章 管理数据丢失;第 8 章 在恢复过程中调整 IdM 客户端
- 推荐阅读顺序:先看“阅读提要”和目录,再按章节查看“关键点/命令/注意”;需要原文细节时点击来源链接。
章节笔记
概览
- 该章节主要为下一级主题的入口。
在服务器或数据丢失后恢复 IdM
- 要点:摘要
对红帽文档提供反馈
- 要点:我们致力于为您提供高质量的文档,您的反馈将对我们有很大帮助。为帮助我们改进,您可以通过 Red Hat Jira 跟踪系统提交建议或报告错误。
- 要点:流程
- 列表:登录到 Jira 网站。 如果您还没有帐户,请创建一个。
- 列表:单击顶部导航栏中的 Create。
- 列表:在 Summary 字段中输入描述性标题。
- 列表:在 Description 字段中输入您对改进的建议。包括文档相关部分的链接。
- 列表:点窗口底部的 Create。
第 1 章 IdM 中的灾难情况
- 要点:在身份管理(IdM)系统中准备和响应各种影响服务器、数据或整个基础架构的灾难场景。识别特定的灾难场景及其对域操作的影响有助于确定适当的恢复策略。
- 注意:警告 当所有证书颁发机构(CA)副本或所有 IdM 服务器丢失了,且没有用于恢复的虚拟机(VM)快照或备份时,会发生完全丢失的情况。如果没有 CA 副本,IdM 环境无法部署额外的副本或重建其自身,从而无法恢复。为避免这种情况,请确保备份存储在异地,维护多个地理冗余的 CA 副本,并将每个副本连接到至少两个其它的副本。
- 表格样本(共 4 行):
- 灾难类型 | 原因示例 | 如何准备 | 如何响应
- Server loss :IdM 部署丢失了一个或多个服务器。 | 硬件故障 | 通过使用复制来为服务器丢失的情况做准备 | 使用复制恢复单个服务器
- Data loss :一个服务器上的 IdM 数据被意外修改,其变化传播到其他服务器中。 | 用户意外删除数据 软件错误修改数据 | 使用虚拟机快照为数据丢失的情况做准备 计划使用 IdM 备份进行数据恢复 | 使用虚拟机快照恢复数据丢失 使用 IdM 备份恢复数据丢失 管理数据丢失
- Total infrastructure loss :所有 IdM 服务器或证书颁发机构(CA)副本都丢失了,且没有可用的虚拟机快照或数据备份。 | 缺少异地备份或冗余阻碍了故障或灾难后的恢复。 | 使用虚拟机快照为数据丢失的情况做准备 | 这个情形是完全丢失的情况。
第 2 章 使用复制恢复单个服务器
- 要点:通过从功能副本重新安装,在失败后恢复身份管理(IdM)服务器。使用现有的复制拓扑将失败的服务器返回到正常工作的状态,确保数据一致性,并在您的环境中保持高可用性。
- 要点:如果您的 IdM 拓扑包含集成的证书颁发机构 (CA),删除和替换已损坏的副本的步骤因 CA 续订服务器和其它副本而异。
2.1. 恢复丢失 CA 续订服务器
- 要点:如果证书颁发机构 (CA) 续订服务器丢失,您必须首先推广另一个 CA 副本以满足 CA 续订服务器角色,然后部署替代的 CA 副本。
- 要点:先决条件
- 列表:您的部署使用 IdM 的内部证书颁发机构 (CA)。
- 列表:环境中的另一个 Replica 已安装了 CA 服务。
- 列表:从环境中的另一个副本中,升级环境中的另一个 CA 副本,以作为新的 CA 续订服务器。请参阅 更改并重置 IdM CA 续订服务器。
- 列表:从环境中的另一个副本中,将复制协议删除丢失的 CA 续订服务器。请参阅 使用 CLI 从拓扑中删除服务器。
- 列表:安装一个新的 CA Replica 来替换丢失的 CA 副本。请参阅 安装带有 CA 的 IdM 副本。
- 列表:更新 DNS 以反应副本拓扑的更改。如果使用 IdM DNS,则会自动更新 DNS 服务记录。
- 命令/配置摘录:
[root@server ~]# kinit admin
Password for admin@EXAMPLE.COM:- 注意:警告 如果出现以下情况,IdM 部署是不可恢复的: CA 续订服务器已经丢失。 没有安装 CA。 没有带有 CA 角色的副本备份。 使用 CA 角色从副本制作备份非常重要,从而使证书数据受到保护。有关创建备份和从备份恢复的更多信息,请参阅 使用 IdM 备份为数据丢失做准备。
2.2. 从丢失一个常规副本的情况下进行恢复
- 要点:要替换不是证书颁发机构 (CA) 续订服务器的副本,请从拓扑中删除丢失的副本,并在该位置安装一个新的副本。
- 要点:先决条件
- 列表:CA 续订服务器正在正确运行。如果 CA 续订服务器丢失,请参阅 恢复丢失的 CA 续订服务器。
- 列表:删除丢失的服务器的复制协议。请参阅 卸载 IdM 服务器。
- 列表:使用相应的服务(CA、KRA、DNS)部署一个新副本。请参阅 安装 IdM 副本。
- 列表:更新 DNS 以反应副本拓扑的更改。如果使用 IdM DNS,则会自动更新 DNS 服务记录。
- 列表:验证 IdM 客户端可访问 IdM 服务器。请参阅 在恢复过程中调整 IdM 客户端。
- 列表:以 IdM 用户身份成功检索 Kerberos Ticket-Granting-Ticket 在新副本中测试 Kerberos 服务器。 [root@newreplica ~]# kinit admin Password for admin@EXAMPLE.COM:
- 命令/配置摘录:
[root@newreplica ~]# kinit admin
Password for admin@EXAMPLE.COM:第 3 章 使用复制恢复多个服务器
- 要点:在同时丢失多个副本后恢复身份管理(IdM)环境。根据您的 CA 配置和续订服务器的运行状态识别正确的恢复路径。
3.1. 在一个无 CA 的部署中从丢失多个服务器的情况下进行恢复
- 要点:重新构建一个身份管理(IdM)环境,因为使用外部证书颁发机构(CA),所有服务器都被视为平等。在这种情况下,您可以通过以任何顺序删除和替换丢失的副本来重建环境。
- 要点:先决条件
- 列表:您的部署使用了外部证书颁发机构 (CA)。
- 列表:请参阅 恢复丢失的常规副本。
3.2. 当 CA 续订服务器未被破坏时,从丢失了多个服务器的情况下进行恢复
- 要点:恢复 CA 续订服务器完好的身份管理(IdM)环境。因为关键 CA 续订服务器仍然可以正常工作,所以您可以按照任何顺序替换它们来恢复丢失的副本。
- 要点:先决条件
- 列表:您的部署使用 IdM 内部证书颁发机构 (CA)。
- 列表:请参阅 恢复丢失的常规副本。
3.3. 从丢失 CA 续订服务器和其它服务器的情况下进行恢复
- 要点:当包含 CA 续订角色的服务器与其他副本丢失时,恢复身份管理(IdM)环境。在这种情况下,您必须首先将正常工作的 CA 服务器提升到续订角色,然后才能重建剩余的环境。
- 要点:先决条件
- 列表:您的部署使用 IdM 内部证书颁发机构 (CA)。
- 列表:至少一个 CA 副本没有被破坏。
- 列表:提升另一个 CA 副本以满足 CA 续订服务器角色。请参阅 恢复丢失的 CA 续订服务器。
- 列表:替换所有其他丢失的副本。请参阅 恢复丢失的常规副本。
第 4 章 使用虚拟机快照恢复数据丢失
- 要点:通过部署包含证书颁发机构(CA)角色的服务器的虚拟机(VM)快照来恢复身份管理(IdM)环境。您可以通过将恢复的服务器重新整合到当前拓扑中,或者从单一时间点镜像重建新环境,使用快照从数据崩溃中恢复。
4.1. 只从虚拟机快照中恢复
- 要点:当所有服务器都丢失且只保留一个证书颁发机构(CA)副本的虚拟机(VM)快照时,重新创建您的身份管理(IdM)deployment。您可以通过引导快照、删除对失败服务器的引用并安装新副本来重新创建环境。
- 要点:先决条件
- 列表:您已准备了 CA 副本虚拟机的虚拟机快照。请参阅 使用虚拟机快照以防数据丢失。
- 列表:引导 CA 副本虚拟机所需的快照。
- 列表:将复制协议删除任何丢失的副本。 [root@server ~]# ipa server-del lost-server1.example.com [root@server ~]# ipa server-del lost-server2.example.com ...
- 列表:安装第二个 CA 副本。请参阅 安装 IdM 副本。
- 列表:VM CA 副本现在是 CA 续订服务器。红帽建议在环境中提升另一个 CA 副本,以充当 CA 续订服务器。请参阅 更改并重置 IdM CA 续订服务器。
- 列表:通过部署带有所需服务(CA、DNS)的额外副本来重新创建所需的副本拓扑。请参阅 安装 IdM 副本
- 命令/配置摘录:
[root@server ~]# ipa server-del lost-server1.example.com
[root@server ~]# ipa server-del lost-server2.example.com ...4.2. 在部分工作环境中从虚拟机快照中恢复
- 要点:当灾难影响一些 IdM 服务器,而其他 IdM 服务器仍然正常运行时,恢复您的 Identity Management (IdM) deployment 的特定状态。您可以从快照中将证书颁发机构 (CA) 副本带回环境中,将其与剩余的服务器重新同步,并部署新副本以返回到满容量。
- 要点:先决条件
- 列表:您已准备了 CA 副本虚拟机的虚拟机快照。请参阅 使用虚拟机快照以防数据丢失。
- 列表:删除到丢失的服务器的复制协议。请参阅 卸载 IdM 服务器。
- 列表:引导 CA 副本虚拟机所需的快照。
- 列表:在恢复的服务器和任何丢失的服务器间删除所有复制协议。 [root@restored-CA-replica ~]# ipa server-del lost-server1.example.com [root@restored-CA-replica ~]# ipa server-del lost-server2.example.com ...
- 列表:如果恢复的服务器对仍在生产中的任何服务器没有复制协议,请使用其它一个服务器连接恢复的服务器,以更新恢复的服务器。 [root@restored-CA-replica ~]# ipa topologysegment-add Suffix name: domain Left node: restored-CA-replica.example.com Right node: server3.example.com Segment name [restored-CA-replica.com-to-server3.example.com]: new_segment --------------------------- Added segm…
- 列表:查看 /var/log/dirsrv/slapd-YOUR-INSTANCE/errors 中的 Directory 服务器错误日志,以查看快照中的 CA 副本是否与剩余的 IdM 服务器正确同步。
- 命令/配置摘录:
[root@restored-CA-replica ~]# ipa server-del lost-server1.example.com
[root@restored-CA-replica ~]# ipa server-del lost-server2.example.com ...4.3. 从虚拟机快照恢复以建立新的 IdM 环境
- 要点:如果来自恢复的虚拟机 (VM) 快照中的证书颁发机构 (CA) 副本无法在其他服务器中复制,请从虚拟机快照创建一个新的 IdM 环境。
- 要点:要建立新的 IdM 环境,隔离虚拟机服务器,从其中创建额外的副本,并将 IdM 客户端切换到新环境。
- 列表:您已准备了 CA 副本虚拟机的虚拟机快照。请参阅 使用虚拟机快照以防数据丢失。
- 列表:引导 CA 副本虚拟机所需的快照。
- 列表:通过移除所有复制拓扑片段,将恢复的服务器与当前部署的其余部分隔离。 首先,显示所有 domain 复制拓扑片段。 [root@restored-CA-replica ~]# ipa topologysegment-find Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: new_segment Left node: restored-CA-replica.example.com Right node: server2.example.com Connectivity: both ... --…
- 列表:首先,显示所有 domain 复制拓扑片段。 [root@restored-CA-replica ~]# ipa topologysegment-find Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: new_segment Left node: restored-CA-replica.example.com Right node: server2.example.com Connectivity: both ... ---------------------------- Number …
- 列表:删除涉及恢复的服务器的所有域拓扑片段。 [root@restored-CA-replica ~]# ipa topologysegment-del Suffix name: domain Segment name: new_segment ----------------------------- Deleted segment "new_segment" -----------------------------
- 列表:识别涉及恢复服务器的 ca 拓扑片段。 [root@restored-CA-replica ~]# ipa topologysegment-find Suffix name: ca ------------------ 1 segments matched ------------------ Segment name: ca_segment Left node: restored-CA-replica.example.com Right node: server4.example.com Connectivity: both ---------------------------- Number of entries r…
- 命令/配置摘录:
[root@restored-CA-replica ~]# ipa topologysegment-find
Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: new_segment Left node: restored-CA-replica.example.com Right node: server2.example.com Connectivity: both ... ---------------------------- Number of entries returned 8 ----------------------------第 5 章 使用 IdM 备份恢复数据丢失
- 要点:使用 ipa-restore 工具将身份管理服务器或其 LDAP 数据恢复到以前的状态。
5.1. 从备份中恢复 IdM 服务器
- 要点:如果您使用 ipa-restore 工具创建了备份,您可以将 IdM 服务器或 LDAP 内容恢复到创建备份时的状态。
- 要点:图 5.1. 本例中使用的复制拓扑
- 列表:server1.example.com:您要从备份中恢复的服务器。
- 列表:caReplica2.example.com:连接到 server1.example.com 主机的证书颁发机构 (CA) 副本。
- 列表:replica3.example.com:连接到 caReplica2.example.com 主机的副本。
- 列表:您已使用 ipa-backup 工具为 IdM 服务器生成全服务器或者仅数据备份。请参阅创建备份。
- 列表:您的备份文件不在 /tmp 或 /var/tmp 目录中。
- 列表:在从全服务器备份中执行全服务器恢复前,请从服务器中 卸载 IdM ,并使用与之前相同的服务器配置 重新安装 IdM。
- 命令/配置摘录:
[root@server1 ~]# ipa-restore ipa-full-2020-01-14-12-02-32
[root@server1 ~]# ipa-restore /mybackups/ipa-data-2020-02-01-05-30-00- 注意:注意 ipa-restore 实用程序自动检测该目录包含的备份类型,并且默认执行同类型的恢复。要从全服务器备份中只执行数据恢复,请在 ipa-restore 命令中添加 --data 选项: [root@server1 ~]# ipa-restore --data ipa-full-2020-01-14-12-02-32
5.2. 从加密备份中恢复
- 要点:您可以从加密的 IdM 备份中恢复 IdM 服务器。ipa-restore 工具会自动检测 IdM 备份是否已加密,并使用 GPG2 根密钥环恢复它。
- 要点:先决条件
- 列表:GPG 加密的 IdM 备份。请参阅创建 GPG2 加密的 IdM 备份。
- 列表:LDAP Directory Manager 密码
- 列表:创建 GPG 密钥时使用的口令
- 列表:如果您在创建 GPG2 密钥时使用了自定义密钥环位置,请验证 $GNUPGHOME 环境变量是否被设置为该目录。请参阅 创建 GPG2 密钥。 [root@server ~]# echo $GNUPGHOME /root/backup
- 列表:为 ipa-restore 实用程序提供备份目录位置。 [root@server ~]# ipa-restore ipa-full-2020-01-13-18-30-54 输入 Directory Manager 密码。 Directory Manager (existing master) password: 输入您创建 GPG 密钥时使用的密码短语。 ┌────────────────────────────────────────────────────────────────┐ │ Please enter the passphrase to unlock the OpenPGP secret key: │ │ "GPG …
- 列表:输入 Directory Manager 密码。 Directory Manager (existing master) password:
- 命令/配置摘录:
[root@server ~]# echo $GNUPGHOME
/root/backup第 6 章 使用 Ansible playbook 恢复 IdM 服务器
- 要点:使用 ipabackup Ansible 角色,您可以自动从备份中恢复 IdM 服务器,并在服务器和 Ansible 控制器之间传输备份文件。
6.1. 为 IdM 创建 Ansible 清单文件
- 要点:为 Identity Management (IdM) 创建 Ansible 清单文件,以组织 playbook 目标,并在没有 root 权限的情况下从主目录中运行 playbook。
- 要点:在使用 Ansible 时,最好在主目录中创建一个专用于 Ansible playbook 的子目录,您可复制 /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/* 和 /usr/share/doc/rhel-system-roles/* 子目录并进行相应的调整。这种做法有以下优点:
- 列表:您可以在一个位置找到所有 playbook。
- 列表:您可以运行 playbook,而无需调用 root 特权。
- 列表:在主目录中为您的 Ansible 配置和 playbook 创建目录: $ mkdir ~/MyPlaybooks/
- 列表:进入 ~/MyPlaybooks/ 目录: $ cd ~/MyPlaybooks
- 列表:使用以下内容创建 ~/MyPlaybooks/ansible.cfg 文件: [defaults] inventory = /home/<username>/MyPlaybooks/inventory [privilege_escalation] become=True
- 列表:使用以下内容创建 ~/MyPlaybooks/inventory 文件: [eu] server.idm.example.com [us] replica.idm.example.com [ipaserver:children] eu us 此配置定义了两个主机组,即 eu 和 us,用于这些位置中的主机。此外,此配置定义了 ipaserver 主机组,它包含来自 eu 和 us 组的所有主机。
- 命令/配置摘录:
$ mkdir ~/MyPlaybooks/
$ cd ~/MyPlaybooks6.2. 使用 Ansible 从服务器中存储的备份中恢复 IdM 服务器
- 要点:您可以使用 Ansible playbook ,从存储在该主机上的备份恢复 IdM 服务器。
- 要点:先决条件
- 列表:在控制节点上: 您使用 Ansible 版本 2.15 或更高版本。 您已安装了 ansible-freeipa 软件包。 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:您使用 Ansible 版本 2.15 或更高版本。
- 列表:您已安装了 ansible-freeipa 软件包。
- 列表:示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
- 列表:示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:目标节点(即运行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
- 命令/配置摘录:
$ cd ~/MyPlaybooks/
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/restore-server.yml restore-my-server.yml6.3. 使用 Ansible 从 Ansible 控制器中存储的备份中恢复 IdM 服务器
- 要点:您可以使用 Ansible playbook ,从存储在 Ansible 控制器上的备份恢复 IdM 服务器。
- 要点:先决条件
- 列表:在控制节点上: 您使用 Ansible 版本 2.15 或更高版本。 您已安装了 ansible-freeipa 软件包。 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:您使用 Ansible 版本 2.15 或更高版本。
- 列表:您已安装了 ansible-freeipa 软件包。
- 列表:示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
- 列表:示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:目标节点(即运行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
- 命令/配置摘录:
$ cd ~/MyPlaybooks/
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/restore-server-from-controller.yml restore-my-server-from-my-controller.yml6.4. 使用 Ansible 将 IdM 服务器的备份复制到 Ansible 控制器
- 要点:您可以使用 Ansible playbook 将 IdM 服务器的现有备份文件从 IdM 服务器复制到 Ansible 控制器。
- 要点:先决条件
- 列表:在控制节点上: 您使用 Ansible 版本 2.15 或更高版本。 您已安装了 ansible-freeipa 软件包。 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:您使用 Ansible 版本 2.15 或更高版本。
- 列表:您已安装了 ansible-freeipa 软件包。
- 列表:示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
- 列表:示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:目标节点(即运行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
- 命令/配置摘录:
$ mkdir ~/ipabackups
$ cd ~/MyPlaybooks/- 注意:注意 要将所有 IdM 备份复制到控制器,请将 Ansible playbook 中的 ipabackup_name 变量设置为 all : vars: ipabackup_name: all ipabackup_to_controller: true 例如,请参阅 /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks 目录中的 copy-all-backups-from-server.yml Ansible playbook。
6.5. 使用 Ansible 将 IdM 服务器的备份从 Ansible 控制器复制到 IdM 服务器
- 要点:您可以使用 Ansible playbook 将 IdM 服务器的现有备份文件从 Ansible 控制器复制到 IdM 服务器。
- 要点:先决条件
- 列表:您已配置了 Ansible 控制节点以满足以下要求: 您使用 Ansible 版本 2.15 或更高版本。 您已安装了 ansible-freeipa 软件包。 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:您使用 Ansible 版本 2.15 或更高版本。
- 列表:您已安装了 ansible-freeipa 软件包。
- 列表:示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
- 列表:示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:目标节点(即运行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
- 命令/配置摘录:
$ cd ~/MyPlaybooks/
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/copy-backup-from-controller.yml copy-backup-from-my-controller-to-my-server.yml6.6. 使用 Ansible 从 IdM 服务器中删除备份
- 要点:您可以使用 Ansible Playbook 自动从 IdM 服务器中删除旧的或不必要的备份文件。
- 要点:先决条件
- 列表:在控制节点上: 您使用 Ansible 版本 2.15 或更高版本。 您已安装了 ansible-freeipa 软件包。 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:您使用 Ansible 版本 2.15 或更高版本。
- 列表:您已安装了 ansible-freeipa 软件包。
- 列表:示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
- 列表:示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
- 列表:目标节点(即运行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
- 命令/配置摘录:
$ cd ~/MyPlaybooks/
$ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/remove-backup-from-server.yml remove-backup-from-my-server.yml- 注意:注意 要从 IdM 服务器中删除所有 IdM 备份,将 Ansible playbook 中的 ipabackup_name 变量设置为 all : vars: ipabackup_name: all 例如,请参阅 /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks 目录中的 remove-all-backups-from-server.yml Ansible playbook。
第 7 章 管理数据丢失
- 要点:通过隔离受影响的服务器或手动恢复丢失的信息来响应数据丢失事件。您可以根据数据丢失是否隔离到特定副本,或者是否在整个环境中传播来确定适当的恢复方法。
7.1. 隔离数据丢失
- 要点:如果发生数据丢失,请立即将受影响的服务器与复制拓扑隔离,并将其替换为从剩余的健康服务器创建的新副本,从而最大程度减少损坏的数据的传播。
- 要点:先决条件
- 列表:带有多个副本的强大 IdM 复制拓扑。请参阅 使用复制以防服务器丢失。
- 列表:要限制复制数据丢失,请移除其复制拓扑片段,断开所有受影响的副本与拓扑的其余部分的连接。 显示不是中的所有 domain 复制拓扑段。 [root@server ~]# ipa topologysegment-find Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: segment1 Left node: server.example.com Right node: server2.example.com Connectivity: both ... ---------------------…
- 列表:显示不是中的所有 domain 复制拓扑段。 [root@server ~]# ipa topologysegment-find Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: segment1 Left node: server.example.com Right node: server2.example.com Connectivity: both ... ---------------------------- Number of entries returned 8 -------…
- 列表:删除所有涉及到受影响服务器的 domain 拓扑段。 [root@server ~]# ipa topologysegment-del Suffix name: domain Segment name: segment1 ----------------------------- Deleted segment "segment1" -----------------------------
- 列表:识别涉及恢复服务器的 ca 拓扑片段。 [root@server ~]# ipa topologysegment-find Suffix name: ca ------------------ 1 segments matched ------------------ Segment name: ca_segment Left node: server.example.com Right node: server2.example.com Connectivity: both ---------------------------- Number of entries returned 1 ----------------…
- 列表:删除涉及恢复的服务器的所有 ca 拓扑片段。 [root@server ~]# ipa topologysegment-del Suffix name: ca Segment name: ca_segment ----------------------------- Deleted segment "ca_segment" -----------------------------
- 命令/配置摘录:
[root@server ~]# ipa topologysegment-find
Suffix name: domain ------------------ 8 segments matched ------------------ Segment name: segment1 Left node: server.example.com Right node: server2.example.com Connectivity: both ... ---------------------------- Number of entries returned 8 ----------------------------7.2. 在所有服务器中的有限数据丢失
- 要点:对已传播到所有副本的已知有限数据丢失(如意外删除)进行响应。您可以使用备份或虚拟机(VM)快照手动将缺少的信息重新添加到数据库中。
- 要点:先决条件
- 列表:包含丢失数据的 IdM 服务器的 Virtual VM snapshot 或 IdM 备份。
- 列表:如果您需要查看任何丢失数据,请将虚拟机快照或备份到单独的网络上的隔离服务器。
- 列表:使用 ipa 或 ldapadd 命令,将缺少的信息添加到数据库中。
- 列表:使用虚拟机快照恢复数据丢失
- 列表:备份和恢复 IdM
7.3. 在所有服务器中的未定义的数据丢失
- 要点:响应影响 deployment 中每个副本的严重或未知数据丢失。您可以将身份管理(IdM)证书颁发机构(CA)服务器从虚拟机(VM)快照恢复到已知的良好状态,并使用它来部署一个全新的环境。
- 要点:先决条件
- 列表:VM 快照包含丢失的数据。
- 列表:将 IdM 证书颁发机构 (CA) 复制从虚拟机快照恢复到已知良好状态,并从中部署新的 IdM 环境。请参阅 只从虚拟机快照进行恢复。
- 列表:添加在使用 ipa 或 ldapadd 命令进行快照后创建的任何数据。
- 列表:使用虚拟机快照恢复数据丢失
第 8 章 在恢复过程中调整 IdM 客户端
- 要点:更新 Identity Management(IdM)配置以反映服务器拓扑的变化。您可以通过将客户端指向可正常工作的副本、更新 DNS 记录以及清除本地缓存来删除过时的服务器信息来确保客户端继续正确验证。
- 要点:流程
- 列表:调整 DNS 配置 : 如果 /etc/hosts 包含对 IdM 服务器的任何引用,请确保硬编码的 IP 到主机名映射有效。 如果 IdM 客户端使用 IdM DNS 进行名称解析,请确保 /etc/resolv.conf 中的 nameserver 条目指向提供 DNS 服务的工作 IdM 副本。
- 列表:如果 /etc/hosts 包含对 IdM 服务器的任何引用,请确保硬编码的 IP 到主机名映射有效。
- 列表:如果 IdM 客户端使用 IdM DNS 进行名称解析,请确保 /etc/resolv.conf 中的 nameserver 条目指向提供 DNS 服务的工作 IdM 副本。
- 列表:调整 Kerberos 配置 : 默认情况下,IdM 客户端会查找 Kerberos 服务器的 DNS 服务记录,并将调整到副本拓扑中的更改: [root@client ~]# grep dns_lookup_kdc /etc/krb5.conf dns_lookup_kdc = true 如果 IdM 客户端已被硬编码为使用 /etc/krb5.conf 中的特定 IdM 服务器: [root@client ~]# grep dns_lookup_kdc /etc/krb5.conf dns_lookup_kdc = false 确保 /etc/krb5.conf 中的 kdc、master_kdc 和 admin_serv…
- 列表:默认情况下,IdM 客户端会查找 Kerberos 服务器的 DNS 服务记录,并将调整到副本拓扑中的更改: [root@client ~]# grep dns_lookup_kdc /etc/krb5.conf dns_lookup_kdc = true
- 列表:如果 IdM 客户端已被硬编码为使用 /etc/krb5.conf 中的特定 IdM 服务器: [root@client ~]# grep dns_lookup_kdc /etc/krb5.conf dns_lookup_kdc = false 确保 /etc/krb5.conf 中的 kdc、master_kdc 和 admin_server 条目指向正常工作的 IdM 服务器: [realms] EXAMPLE.COM = { kdc = functional-server.example.com:88 master_kdc = functional-server.example.com:88 admin_serve…
- 命令/配置摘录:
[root@client ~]# grep dns_lookup_kdc /etc/krb5.conf
dns_lookup_kdc = true完整目录
- 在服务器或数据丢失后恢复 IdM
- 对红帽文档提供反馈
- 第 1 章 IdM 中的灾难情况
- 第 2 章 使用复制恢复单个服务器
- 2.1. 恢复丢失 CA 续订服务器
- 2.2. 从丢失一个常规副本的情况下进行恢复
- 第 3 章 使用复制恢复多个服务器
- 3.1. 在一个无 CA 的部署中从丢失多个服务器的情况下进行恢复
- 3.2. 当 CA 续订服务器未被破坏时,从丢失了多个服务器的情况下进行恢复
- 3.3. 从丢失 CA 续订服务器和其它服务器的情况下进行恢复
- 第 4 章 使用虚拟机快照恢复数据丢失
- 4.1. 只从虚拟机快照中恢复
- 4.2. 在部分工作环境中从虚拟机快照中恢复
- 4.3. 从虚拟机快照恢复以建立新的 IdM 环境
- 第 5 章 使用 IdM 备份恢复数据丢失
- 5.1. 从备份中恢复 IdM 服务器
- 5.2. 从加密备份中恢复
- 第 6 章 使用 Ansible playbook 恢复 IdM 服务器
- 6.1. 为 IdM 创建 Ansible 清单文件
- 6.2. 使用 Ansible 从服务器中存储的备份中恢复 IdM 服务器
- 6.3. 使用 Ansible 从 Ansible 控制器中存储的备份中恢复 IdM 服务器
- 6.4. 使用 Ansible 将 IdM 服务器的备份复制到 Ansible 控制器
- 6.5. 使用 Ansible 将 IdM 服务器的备份从 Ansible 控制器复制到 IdM 服务器
- 6.6. 使用 Ansible 从 IdM 服务器中删除备份
- 第 7 章 管理数据丢失
- 7.1. 隔离数据丢失
- 7.2. 在所有服务器中的有限数据丢失
- 7.3. 在所有服务器中的未定义的数据丢失
- 第 8 章 在恢复过程中调整 IdM 客户端
