一、前言
在 vSphere 虚拟化基础架构中,担任集组态设定、监控、管理、告警...... 等机制的 vCenter Server 管理平台,在整个 SDDC 软件定义数据中心内的重要性不言而喻(如图 1 所示)。 因此,对于 vCenter Server 的备份和还原作业,管理人员应该审慎规划并确实执行。
图 1、vCenter Server 管理平台功能示意图
虽然,vCenter Server 遭遇灾难事件导致无法正常运作时,运作于 vSphere 虚拟化架构上的工作负载,例如,VM 虚拟主机或容器...... 等,仍然能够正常运作不受影响。 然而,因为 vCenter Server 发生故障无法正常运作时,将会导致管理人员无法管理整个 vSphere 虚拟化架构,并且执行相关维运管理的工作任务,举例来说,无法调整 VM 虚拟主机资源、无法执行 vMotion 在线迁移 VM 虚拟主机...... 等。
在市面上,已经有许多第三方软件厂商,针对 vCenter Server 进行备份和还原的产品。 然而,对于原本 IT 预算就不高的企业和组织来说,这一笔备份软件开销,无疑让原本就稀少的 IT 预算雪上加霜。 因此,在本文中,将说明和实战演练,通过 vCenter Server 内建的备份和还原机制,对 vCenter 进行定期备份作业,并且模拟灾难事件发生时,如何透过备份进行还原任务,让 vCenter Server 管理平台,能够在最短时间内恢复正常运作。
二、实战 – vCenter Server 7 备份和还原
事实上,目前有两种方式支持 vCenter 管理平台的备份任务,第一种称之为「映像档方式」(Image-Based),也就是针对整台 vCenter 虚拟主机进行备份,这也是市面上第三方软件厂商采用的主流备份方式。
第二种,则是「档案方式」(File-Based),将 vCenter 管理平台中相关配置进行备份后,在灾难发生时进行还原作业,在本文实战演练小节中便是采用此方式。
值得一提的是,当企业和组织为 vCenter 管理平台,建立「增强型链接模式」(Enhanced Linked Mode,ELM)运作环境后,建议管理人员应该采用本文介绍的档案方式,为 vCenter 管理平台进行备份作业,而非使用映像文件方式备份。
主要原因在于,增强型链接模式运作环境中,多台 vCenter 同时运作并互相同步和复制相关资料,而采用映像档方式备份时,其实是针对 vCenter 进行实时的快照,当还原时可能会因为还原后的 vCenter 状态,和其它 vCenter 之间相异进而导致 SSO Domain Data 发生冲突,所以建议管理人员在 ELM 运作环境中,应采用本文实战演练的档案方式进行还原。
手动备份 vCenter Server
虽然,是内建的备份机制,但是功能一点都不马虎,除了无须安装任何备份代理程序之外,特色功能也不断增强和演进,举例来说,在 vSphere 6.5 版本时,备份和还原机制支持的通讯协议仅有 FTP(s)、HTTP(s)、SCP,而在 vSphere 6.7U2 版本时,更额外新增支持 SFTP、NFSv3、SMBv2 通讯协议。
请注意,采用 FTPS 时仅支持 Explicit 模式,采用 HTTP(s)时必须在网页服务器上启用 WebDAV,倘若透过 HTTP Proxy 传输备份数据时,仅支持采用 FTP(s)、HTTP(s)通讯协议。
在手动备份实战演练中,模拟企业和组织已经建构完成 vSphere 虚拟化基础架构,但是因为IT预算不足的关系,导致备份用途的 NAS 储存设备必须下个年度才能采购,那么在这段过渡期间该如何进行 vCenter 备份操作 ? 在短期备份需求状态下,可以为 ESXi 虚拟化平台配置一颗大容量硬盘,便可以透过 SFTP 的方式,将 vCenter 备份传送至 ESXi 虚拟化平台中,并且在需要时进行还原作业。
在手动备份实战演练中,模拟企业和组织已经建构完成 vSphere 虚拟化基础架构,但是因为IT预算不足的关系,导致备份用途的 NAS 储存设备必须下个年度才能采购,那么在这段过渡期间该如何进行 vCenter 备份操作 ? 在短期备份需求状态下,可以为 ESXi 虚拟化平台配置一颗大容量硬盘,便可以透过 SFTP 的方式,将 vCenter 备份传送至 ESXi 虚拟化平台中,并且在需要时进行还原作业。
首先,请为储存 vCenter 备份的 ESXi 虚拟化平台,开启 SSH 服务(Port 22)和防火墙允许规则。 在 vCenter 管理界面中,依序点选「Datacenter > ESXi Host > Configure > System > Services > SSH」,点击 START 后,确保 Daemon 字段从原本的「已停止」(Stopped),变更为「运作中」(Running)状态(如图 2 所示),并且确保 SSH 通讯协议在 Firewall 规则允许列表内。
图 2、为 ESXi 主机启动 SSH 服务并确定防火墙允许 SSH 流量通过
接着,透过 SSH Client 工具连线至 ESXi 主机,在本文实作环境中,执行 mkdir 指令建立用于存储备份档案的文件夹「vCenterFileBackup」,执行 pwd 指令确认路径为「/vmfs/volumes/node01-backupdisk/vCenterFileBackup」。
请登入 vCenter Server Management(Port 5480)管理界面,登入后按序点选「Backup > Activity > Backup Now」,在弹出窗口中于 Backup location 栏位中,填入通讯协议为 SFTP 和 ESXi 主机的FQDN和SSH 端口,最后搭配刚才的备份文件夹路径,本文实作环境为「sftp://node0123.lab.weithenn.org:22//vmfs/volumes/node01-backupdisk/vCenterFileBackup 」,在 Backup server credentials 栏位,填入储存备份档案的 ESXi 主机管理帐号 root 和密码,确认无误后按下 START 钮便立即进行单次备份任务(如图 3 所示)。
备份文件大小和花费时间,与 vCenter Server 运行状态、事件、工作项目、配置...... 等有关,备份任务会在刚才指定的备份文件夹中,依序建立 vCenter 的 FQDN 文件夹,以及 vCenter 版本和备份日期及时间子文件夹(如图 4 所示)。
图 4、执行手动备份 vCenter Server 工作任务
值得注意的是,倘若采用 vCenter Server「7.0 U2d」版本的话,管理人员可能在执行 SFTP 备份作业时,遭遇到「General system error reported by backup server 」的错误讯息,原因在于这个版本中的 curl 指令,在执行备份到 SFTP 目的端时会发生崩溃的情况导致备份失败,管理人员可以考虑两种解决方式。
第一种方式是,采用其它支持的通讯协定进行备份任务,例如,采用NFS或SMB 。 第二种方式,则是将 vCenter 更新至「7.0 U3d」版本即可解决此问题,本文实作环境采用最新的 7.0 U3g 版本,所以已经修复此问题并通过 SFTP 顺利执行备份任务,相关详细信息请参考 VMware KB 85966 知识库文章。
备份任务完成后,管理人员应该已经发现,由于预设高安全性的关系,当ESXi 主机启用 SSH 服务后,将会在 Summary 页签出现「SSH for the host has been enabled」讯息(如图 5 所示),并且 ESXi 图标会有警告符号产生,这些都是系统提醒管理人员,记得将ESXi主机启动的 SSH 服务关闭,避免持续开启 SSH 服务降低 ESXi 主机安全性,以及遭受恶意攻击的机会。
图 5、备份完毕后记得将 ESXi 主机启动的 SSH 服务关闭
日程定期备份 vCenter Server
相对于手动备份这种短期过渡需求,对于企业和组织来说,日程安排时间定期备份 vCenter Server 管理平台,才是长期的备份解决方案。 在本小节中,将为担任备份用途的储存设备开启 SMB 通讯协议,储存 vCenter 计划备份文件。 值得注意的是,目前排程备份机制一次只能设定一个日程安排,并未支持配置多个日程点同时执行。
登录管理界面后,依序点选「Backup > Backup Schedule > Configure 」,在弹出的排程备份视中,在 Backup location 栏位填入通讯协议 SMB,以及存储设备FQDN和备份文件夹路径,在Backup server credentials 字段,填入具备该备份文件夹写入权限的用户帐号和密码,在 Schedule 字段,支持采用每日和每周或每周的哪几天进行备份,在Encrypt backup 字段的部份,倘若管理人员希望加密备份档案时,请键入两次加密密码,在 Number of backups to retain 栏位中,选择「Retain all backups」项目,将会保留所有的备份档案,选择「Retain last backups 」项目,则是保留指定的备份档案份数,本文实作环境选择保留最后七天的备份档案,确认无误后按下 Create 钮即完成调度备份设定(如图 6 所示)。
图 6、配置排程备份机制
日程备份机制设定完成后,在Backup Schedule 区块将会显示刚才配置内容,而指定的日程安排时间后系统便会自动执行备份任务,并且在 Activity 区块可以看到备份任务的执行结果(如图 7 所示)。
备份 vDS 分布式虚拟交换器
当企业和组织在 vSphere 虚拟化环境中,建立并部署「分布式虚拟交换器」(vSphere Distributed Switch,vDS)时,建议管理人员也单独将 vDS 分布式虚拟交换器配置导出,以便后续需要时可以导入或还原 vDS 配置,否则有可能会在还原 vCenter 管理平台之后,遭遇到 vDS 分布式虚拟交换器配置遗失的问题,相关详细信息请参考 VMware KB 2034602 知识库文章。
请在 vCenter 管理界面中,依序点选「Home > Networking > Distributed Switch >Actions > Settings > Export Configuration 项目,在弹出窗口中,管理人员可以选择两种导出选项,选择「Distributed switch and all port groups」项目,导出 vDS 分布式虚拟交换器和所有 Port Groups 配置,或是选择「Distributed switch only」项目,仅导出 vDS 分布式虚拟交换器的部份,至于下方描述区块可依管理人员需求进行填写,确认无误后按下 OK 钮即可(如图 8 所示)。
此时,链接 vCenter 管理界面的浏览器,将会自动下载名称为 Backup.zip 的压缩文件,便是刚才选择 vDS 分布式虚拟交换器配置项目。 后续,便可以依据管理人员需求进行「导入」或「还原」vDS 分布式虚拟交换器配置。
备份 vCenter Server High Availability 环境
事实上,以档案方式备份 vCenter Server,目前并无法完整支持 vCHA(vCenter High Availability)丛集环境(如图 9 所示),但是管理人员仍然能够进行备份任务,并且在 vCHA 丛集架构发生重大灾难事件时快速还原和重建。
图 9、vCHA(vCenter High Availability)丛集环境运作架构示意图
因此,当企业或组织为 vCenter Server 建立 vCHA(vCenter High Availability)丛集环境时,虽然备份任务仅会备份 vCenter Server 主要节点(Active Node) ,一旦 vCHA 丛集环境发生灾难事件时,管理人员只要在执行还原任务之前,先将 vCHA 丛集环境整个关闭,包含主动节点、被动节点和见证节点,当还原任务执行完毕后,vCenter Server 会处于单机运作环境,管理人员只要透过 GUI 图形界面进行引导设定,重新建构 vCHA 丛集环境即可,相关详细信息请参考 VMware KB 60229、KB 2147014、KB 2147038、KB 2147046 知识库文章。
还原 vCenter Server
养兵千日用在一时,即便已经配置设置安排定时备份,管理人员应该定期确认备份档案,是否能够顺利执行还原任务。 倘若,还原程序是用于验证用途时,管理人员可以在还原 vCenter Server 时,将 vCenter 的虚拟网络拔除,即可避免和现有运作中的 vCenter 发生冲突的情况。
整个还原程序共分为两个阶段(如图 10 所示),第一个阶段将会部署一台新的 vCenter Server 虚拟主机,第二个阶段则是透过先前备份数据,将配置和相关数据传输至新部署的 vCenter Server 虚拟主机中。 值得注意的是,采用以档案方式备份机制,在执行还原作业时有个限制,也就是 vCenter 采用哪个版本的 ISO 映像文件安装,就必须用哪个版本的 ISO 映像档执行还原作业才行,例如,采用 vCenter 7.0 U3g 安装和部署,便需要使用 vCenter 7.0 U3g 的 ISO 映像文件执行还原作业才行。
事实上,整个还原 vCenter Server 的工作任务,跟安装部署 vCenter Server 时非常类似。 请挂载 vCenter ISO 映像文件后,执行 vcsa-ui-installer/win32 文件夹内的installer.exe 档案,在弹出的安装精灵窗口中,点击 Restore 项目以进入还原工作流程。
在第一阶段的还原工作流程中,于 3. Enter Backup details 画面,请于 Location 字段填入先备存储备份文件的路径,以及可访问备份文件路径权限的用户帐号和密码。 值得注意的是,备份文件路径必须是包含「backup-metadata.json」的路径,本文实作环境填入的备份路径为「 smb://LAB-D/vCenterScheduleBackup/vCenter/sn_vcenter7.lab.weithenn.org/S_7.0.3.00800_20220911-084004_」(如图 11 所示)。
图 11、填入备份文件存放路径和具备访问权限的用户帐号和密码
在 4. Review backup information,系统请管理人员再次检查键入的备份档案存放路径是否正确,倘若键入的路径不正确,或 backup-metadata.json 档案损毁的话,这个步骤将会出现错误讯息并停止还原程序。
在 5. vCenter Server deployment target,请键入要将新部署的 vCenter 虚拟主机,部署至哪一台 ESXi 主机,或另一台 vCenter 虚拟化环境中,并且键入具备管理权限的用户帐号和密码。 在 6. Set up target vCenter Server VM,请键入新部署的 vCenter 虚拟主机名称,本文实作为「vCenter7」,以及 root 管理员帐户密码。
值得注意的是,倘若故障损坏的 vCenter 仍然处于 Power On 开机状态时,管理人员应将其关闭并且修改 vCenter 虚拟主机名称,例如,本文实作环境将原有 vCenter 虚拟主机名称,修改为「vCenter7-legacy」,否则系统在进行检查作业时,将会因为发现 vCenter 虚拟主机名称已存在而停止还原程序(如图 12 所示)。
图 12、准备还原的 vCenter 虚拟主机名称和原有 vCenter 名称发生冲突
在 7. Select deployment size,管理人员可以视需求选择不同等级的 vCenter 部署规模,本文实作采用Small规格大小。 倘若,管理人员一开始在部署 vCenter 时选错规模,或是随着时间演进不断扩大的 vSphere 基础架构,导致原有 vCenter 部署规模不足以因应时,管理人员也可以在备份后执行还原作业,并在此步骤中重新选择部署规模较大的 vCenter 等级。
在 8. Select datastore,请选择放置 vCenter 虚拟主机硬盘的储存资源。 值得注意的是,倘若管理人员不勾选「Enable Thin Disk Mode 选项的话,那么新部署的 vCenter 虚拟硬盘格式,将会采用「Thick」模式进行部署,管理人员必须确保储存资源空间足够才行,举例来说,本文实作环境选择「Small」规模大小时,储存空间至少必须大于「694GB」才行。
在 9. Configure network settings,请键入 vCenter 虚拟主机网络配置,本文实作环境 FQDN 为「vcenter7.lab.weithenn.org」,而固定 IP 地址则是「10.10.75.20」。 值得注意的是,在 Network 栏位的部份,倘若采用 vDS 分布式虚拟网络交换器时,在下拉菜单中仅会显示「暂时绑定」(Ephemeral binding)的 Port Group,一般常用「静态绑定」(Static binding)的 Port Group 并不支持所以不会显示,或是管理人员也可以选择使用 vSS 标准式虚拟网络交换器,在本文实作中选择名称为「Restore-vNet」的 Port Group(如图 13 所示)。 有关暂时绑定和静态绑定的详细信息,请参考 VMware KB 1022312 知识库文章。
https://www.weithenn.org/2022/12/vcenter-server-backup-and-restore.html
文章评论