准备 Service Manager 灾难恢复
本文介绍在发生问题之前,Service Manager 灾难恢复必须执行的步骤。 从灾难中恢复的步骤取决于完成此处概述的步骤。 一般情况下,为灾难恢复准备 Service Manager 环境涉及以下内容:
- 在单独的计算机上使用管理服务器和数据库部署 Service Manager
- 备份 Service Manager 和数据仓库管理服务器上的加密密钥
- 备份 SQL 数据库
- 备份未密封的管理包
灾难恢复的部署策略
最佳做法是,在单独的计算机上为 Service Manager 部署管理服务器和关联的数据库。 将管理服务器和数据库相隔离可在出现潜在的软件和设备故障时为实现成功的灾难恢复操作做好准备。
你必须具有一个正常运行的数据库来还原发生故障的管理服务器。 如果管理服务器和关联的数据库在同一台物理计算机上并且该计算机发生了故障,则无法恢复管理服务器。 有关详细信息,请参阅 在四台计算机上安装 Service Manager。
备份 Service Manager 管理服务器
部署 Service Manager 时,会创建加密密钥并将其存储在管理服务器上的注册表中。 在相关联的数据库中创建匹配的加密密钥。 Service Manager 和数据仓库管理服务器的加密密钥存储在 Service Manager 数据库中。 数据仓库管理服务器所匹配的加密密钥存储在 DWStagingAndConfig 数据库中。 通过备份 SQL Server 数据库,即可备份加密密钥。
此外,管理服务器和自助服务门户的计算机名称存储在关联的数据库中。 无论遇到管理服务器还是自助服务门户的软件或硬件故障,恢复过程都基于还原计算机名称与失败的计算机名称相同的计算机。
从管理服务器故障中进行恢复的步骤如下所示:
- 在运行安装程序并安装新管理服务器之前还原加密密钥。
- 在与原计算机同名的计算机上安装新管理服务器。
- 安装管理服务器时,请选择“使用现有数据库” ,然后指定承载关联数据库的计算机的名称。
有关这些步骤的详细信息,请参阅 实现 Service Manager 灾难恢复。
备份 Service Manager 加密密钥
Service Manager 的灾难恢复策略取决于在完成 Service Manager 安装后立即备份加密密钥。 备份加密密钥并将其存储在安全位置后,可以从 Service Manager 和数据仓库管理服务器上的软件或硬件故障中恢复。
使用加密密钥备份或还原向导在管理服务器和自助服务门户中备份加密密钥。 此向导位于 Tools\SecureStorageBackup 文件夹中的 Service Manager 安装介质上。
备份加密密钥
使用管理员组成员的帐户登录到承载数据仓库管理服务器的 Service Manager 管理服务器的计算机。
在 Windows 资源管理器中,打开安装媒体上的 Tools\SecureStorageBackup 文件夹。
右键单击 SecureStorageBackup.exe 并选择“ 以管理员 身份运行”以启动加密密钥备份或还原向导。
在“简介” 页上,选择“下一步”。
在 “备份或还原” 页上,选择“ 备份加密密钥”,然后选择“ 下一步”。
在“ 提供位置” 页上,输入加密密钥的路径和文件名。 例如,如果要在备份共享文件夹中为 MyServer 服务器上的加密密钥指定文件名SMBackupkey.bin,请输入 \\MyServer\Backup\SMBackupkey.bin,然后选择“ 下一步”。
在“提供密码”页上的“密码”框中,输入至少包含 8 个字符的密码。 在 “确认密码 ”框中,重新输入相同的密码,然后选择“ 下一步”。
重要
如果密码丢失或忘记,则无法恢复密码。
看到“安全存储备份完成”消息后,选择“完成”。
备份 System Center - Service Manager 数据库
System Center - Service Manager 环境中最多有 8 个数据库:
- ServiceManager
- DWDataMart
- DWRepository
- DWStagingAndConfig
- ReportServer
- 分析师
- OMDWDataMart
- CMDWDataMart
此列表中的前四个数据库需要与 Service Manager 和数据仓库管理服务器连接和交换数据。 数据在这些交换过程中被加密。 在管理服务器上,加密密钥会根据需要进行备份和还原,如本文所述。 对于承载数据库的服务器,加密密钥存储在数据库自身中。
如果承载数据库的计算机发生故障,那么只要能够将数据库(包含加密密钥)还原到与原计算机同名的计算机上即可。 Service Manager 数据库的灾难恢复策略应基于常规 SQL Server 灾难恢复过程。 有关详细信息,请参阅 规划灾难恢复。
在灾难恢复准备过程中,你将需要运行脚本来捕获安全日志,以保存每个数据库的用户角色信息。 部署 Service Manager 后,如有必要,请运行数据仓库注册向导,使用 SQL Server 脚本向导创建捕获 SQL Server 登录权限和对象级权限的脚本。 然后,如果需要还原 Service Manager 数据库的新服务器,可以使用此脚本重新创建必要的登录权限和对象级权限。
在 SQL Server 上启用公共语言运行时
在安装 Service Manager 数据库期间,Service Manager 安装程序在运行 SQL Server 的计算机上启用公共语言运行时(CLR)。 如果将 Service Manager 数据库还原到另一台运行 SQL Server 的计算机,则必须手动启用 CLR。 有关详细信息,请参阅 Enabling CLR Integration。
启动 SQL Server 脚本向导
可以将以下过程用作 Service Manager 灾难恢复准备步骤的一部分,以生成脚本来捕获 SQL Server 登录权限和对象级权限。 在托管 SQL Server Reporting Services(SSRS)的计算机以及托管以下 Service Manager 和数据仓库数据库的计算机上执行此过程:
- DWDataMart
- DWRepository
- DWStagingAndConfig
- ServiceManager
- ReportServer
启动 SQL Server 脚本向导
- 使用具有管理员权限的帐户登录到托管 Service Manager 或数据仓库数据库的计算机。
- 在 Windows 桌面上,选择“开始”,指向“程序”,指向计算机上安装Microsoft SQL Server 版本,然后选择“SQL Server Management Studio”。
- 在 “连接到服务器 ”对话框中,执行以下操作:
- 在“服务器类型” 列表中,选择“数据库引擎” 。
- 在 “服务器名称” 列表中,选择 Service Manager 数据库的服务器和实例。 例如,选择 computer\INSTANCE1。
- 在 “身份验证 ”列表中,选择“ Windows 身份验证”,然后选择“ 连接”。
- 在“对象浏览器” 窗格中,展开“数据库” 。
- 右键单击数据库名称,指向 “任务”,然后选择“ 生成脚本”。 对于此示例,右键单击 ServiceManager,指向“任务”,然后选择“生成脚本”。
- 在“生成和发布脚本向导”中,执行以下操作:
- 在“简介” 页上,选择“下一步”。
- 在 “选择对象 ”页上,选择“ 选择特定数据库对象”,然后选择“ 全选”。
- 在数据库对象列表中,展开 “表”。
- 清除下表的复选框:
- dbo。STG_Collation
- dbo。STG_Locale
- dbo。STG_MTD_ConverisonLog
- 向上滚动到列表顶部,然后折叠 表。
- 展开 存储过程。
- 清除以下存储过程的复选框:
- dbo。STG_DTS_ConvertToUnicode
- dbo。STG_DTS_CreateClonedTable
- dbo。STG_DTS_InsertSQL
- dbo。STG_DTS_ValidateConversion
- 选择下一步。
- 在“设置脚本选项”页上,选择“保存脚本”,选择“保存到文件”,选择“单个文件”,在“文件名”中指定文件位置,然后选择“下一步”。
- 在“摘要”页上,选择“下一步”。
- 脚本完成后,在 “保存或发布脚本 ”页上,选择“ 完成”。
- 如果需要还原数据库,请使用此脚本设置权限。
备份未密封的管理包
Service Manager 管理服务器的灾难恢复计划的一部分涉及备份未密封的管理包。 下列过程描述如何备份未密封的管理包。
可以使用 Windows PowerShell 命令行界面识别未密封的管理包并将其复制到硬盘驱动器上的文件夹。 复制这些管理包后,保存这些管理包,以便作为 Service Manager 灾难恢复计划的一部分,稍后可以导入这些管理包。
若要备份未密封的管理包,请执行以下步骤:
在承载 Service Manager 管理服务器的计算机上,在硬盘驱动器上创建一个文件夹,用于存储管理包的备份副本。 例如,创建文件夹 C:\mpbackup。
在 Windows 桌面上,选择“开始”,指向“程序”,指向“Windows PowerShell 1.0”,右键单击“Windows PowerShell”,然后选择“以管理员身份运行”。
在 Service Manager 控制台中,选择“ 管理”。
在“任务”窗格中,选择“启动 PowerShell 会话”
在 Windows PowerShell 命令提示符下,输入以下命令:
Get-SCSMManagementPack | where {$_.Sealed -eq $false}|Export-SCSMManagementPack -Path c:\mpbackup
将未密封的管理包保存在单独的物理计算机上。