4. 站点恢复管理器(SRM)架构与部署
站点恢复管理器(Site Recovery Manager,SRM)是 vSphere 环境中实现自动化灾难恢复编排的核心组件。它本身并不复制虚拟机数据,而是负责在受保护站点与恢复站点之间建立配对关系、维护清单映射、组织保护组,并在故障发生时按恢复计划自动执行虚拟机在恢复站点的注册、重配置与开机。理解 SRM 的关键,是把"数据复制"与"恢复编排"两条链路分开看:底层复制由 vSphere Replication 或存储阵列复制完成,SRM 只负责在恢复站点把复制过来的数据"变成可运行的虚拟机"。
SRM 的核心组件
SRM 采用典型的"每站点一对组件"架构。每个站点都需要部署一个 SRM Server(通常以 Linux 或 Windows 虚拟设备形式提供),并配套一个 SRM 数据库(内嵌 PostgreSQL 或外部数据库)。SRM Server 通过插件注册到该站点的 vCenter Server,因此 SRM 与 vCenter 是强绑定关系:一个 SRM 实例只服务一个 vCenter,一个 vCenter 在同一时间只注册一个 SRM 实例。
除 SRM Server 外,还有几个必须理解的组件:
- SRM 插件:注册到 vCenter 后,在 vSphere Client 中出现"Site Recovery"界面,所有配对、映射、保护组、恢复计划操作都在这里完成。
- vSphere Replication 管理服务器(VRMS):当使用 vSphere Replication 作为复制机制时,每个站点还需部署 VRMS,负责管理复制任务。SRM 与 VRMS 协同工作,SRM 编排恢复,VRMS 负责数据复制。
- 占位虚拟机(Placeholder VM):这是 SRM 最具特色的概念。在恢复站点,SRM 会为每个受保护虚拟机创建一个占位虚拟机,它只占用少量存储(通常几十 MB),不包含真实数据,作用是"占住"恢复站点清单中的位置,并绑定恢复所需的资源(计算资源、文件夹、网络、存储策略)。
- 清单映射:把受保护站点的对象映射到恢复站点的对应对象,包括资源映射(计算资源/集群)、文件夹映射、网络映射和存储策略映射。
站点配对与清单映射
部署完成后,第一步是站点配对。在受保护站点的 SRM 界面中,输入恢复站点 vCenter 的地址和 SRM 凭据,双方通过证书交换建立信任。配对成功后,两个站点互为对端,SRM 才能读取对方的清单信息。
配对之后必须完成清单映射,否则保护组无法创建。映射的本质是告诉 SRM:"受保护站点的这个集群/网络/文件夹,在恢复站点对应哪个对象。"例如受保护站点使用"生产集群"和"VM Network",恢复站点使用"恢复集群"和"DR-VLAN-100",就需要建立对应关系。存储策略映射则用于把源站点的存储策略对应到恢复站点的存储策略,确保恢复后的虚拟机落在正确的数据存储上。
保护组与恢复计划
保护组(Protection Group)是 SRM 中"被保护对象"的集合。创建保护组时,需要选择复制机制(vSphere Replication 或阵列复制)、选择要保护的虚拟机,并指定恢复计划中使用的清单映射。保护组创建后,SRM 会为其中的每台虚拟机在恢复站点生成占位虚拟机。
恢复计划(Recovery Plan)则是"恢复动作的编排"。一个恢复计划可以包含一个或多个保护组,并定义虚拟机开机的顺序、开机延迟、以及恢复时的网络配置。恢复计划支持测试(Test Recovery)和实际恢复(Recovery)两种执行模式:测试模式在隔离网络中进行,不影响生产;实际恢复则真正在恢复站点启动虚拟机。
下面这张图展示了 SRM 从受保护站点到恢复站点的完整逻辑链路,包括复制链路与编排链路的分工,以及占位虚拟机在恢复站点的位置。
安装配置流程
SRM 的部署流程可以概括为"先装组件、再配对、后映射、最后建组和计划"。以下是一个可参考的配置顺序,示例参数以两站点各一个 vCenter 为例。
- 部署 SRM Server:在受保护站点和恢复站点分别部署 SRM 虚拟设备。部署时指定 vCenter 地址、SRM 数据库连接、以及管理员密码。示例:SRM-A 部署在 10.10.1.20,SRM-B 部署在 10.20.1.20。
- 注册插件:SRM 部署完成后,通过管理界面将 SRM 插件注册到对应 vCenter。注册成功后,vSphere Client 中会出现 Site Recovery 图标。
- 部署 VRMS:如果使用 vSphere Replication,在两个站点分别部署 VRMS,并注册到 vCenter。VRMS 负责复制任务的管理。
- 站点配对:在受保护站点 SRM 界面中,输入恢复站点 vCenter 的地址(如 10.20.1.10)和 SRM 凭据,完成配对。配对成功后,双方状态显示为"已连接"。
- 清单映射:分别配置资源映射、文件夹映射、网络映射和存储策略映射。例如把受保护站点的"生产集群"映射到恢复站点的"恢复集群",把"VM Network"映射到"DR-VLAN-100"。
- 创建保护组:选择复制机制,选择要保护的虚拟机,指定清单映射。创建完成后,检查恢复站点是否已生成对应的占位虚拟机。
- 创建恢复计划:把保护组加入恢复计划,设置虚拟机开机顺序和延迟。例如先启动 VM-DB,延迟 60 秒后再启动 VM-App,最后启动 VM-Web。
- 测试恢复:执行 Test Recovery,在隔离网络中验证恢复流程。测试完成后执行 Cleanup,清理测试环境。
关键判断与常见问题
部署 SRM 时,最常见的失败点集中在三处:一是站点配对证书不信任,表现为配对状态一直显示"未连接";二是清单映射不完整,表现为创建保护组时提示"未映射的网络"或"未映射的文件夹";三是占位虚拟机创建失败,通常与恢复站点的资源不足或权限不足有关。排查时可以先检查 SRM 与 vCenter 的注册状态,再检查配对状态,最后检查映射完整性。
另一个需要理解的点是:占位虚拟机并不等于恢复后的虚拟机。占位虚拟机只是清单中的"占位符",真正恢复时,SRM 会把复制过来的数据挂载到占位虚拟机对应的配置上,使其成为可运行的虚拟机。因此,占位虚拟机的资源绑定(集群、网络、存储策略)必须与恢复计划中的映射一致,否则恢复后虚拟机可能无法正常开机或网络不通。
从业务连续性角度看,SRM 的价值在于把原本需要人工执行的"注册虚拟机、改网络、按顺序开机"等操作自动化,把恢复时间从小时级压缩到分钟级。但前提是复制链路本身健康、映射关系正确、恢复计划经过测试验证。建议在正式上线前至少完成一次完整的测试恢复,并记录每台虚拟机的开机顺序和延迟参数,作为恢复计划的实际依据。