配置高可用性(后台使用MSSQL数据库)

概述

对于关键的服务,一个主要的需求就是对密码的持续访问。PAM360提供的高可用性就是用来满足这个需求的。需要在主数据库和备用 MS SQL 数据库之间相互同步。可以通过两种方式完成,使用 SQL Server Management Studio或者使用PAM360。 本文将引导您通过PAM360在主备MSSQL数据库之间进行同步。

另外一种使用SQL Server management studio实现主备数据库服务器同步的文章请参阅这里

参阅以下主题,使用Microsoft SQL Server数据库配置高可用性:

  1. 高可用性工作原理
  2. PAM360的高可用性架构
  3. 情景实例

    3.1审计记录会丢失么?

  4. 如何部署高可用性?

    4.1使用 PAM360 进行数据同步

    4.2使用 Microsoft SQL server studio进行数据同步

  5. 检验高可用性部署

1.高可用性工作原理?

  • 需安装备用PAM360服务器和数据库实例。
  • 主服务器的部署用于用户的读/写操作。
  • 备用服务器将充当备份。
  • 主备服务器的数据是相互同步的。
  • PAM360使用SQL Server数据库的复制技术进行数据同步,数据同步通过安全加密的通道进行。
  • 当主服务器停机后,用户以"只读"(即除密码重置功能之外的其它功能)权限访问备用服务器,当主服务恢复服务后,用户将被自动重定向到主服务,而在此期间,备服务器上产生的数据库变化也将自动同步至主服务器。

2.PAM360的高可用性架构

3. 情景实例

PAM360中高可用架构的2个场景,请参阅下表:

情景 1

主备服务器处于同一网络环境

在这种情况下,当主服务器发生故障时,所有用户都将获得对备用服务器读/写访问权限(密码重置操作除外)。

示例

主和辅助服务器位于同一网络中,主服务器运行情况出问题

假设主备服务器都部署在地理位置A,在主服务器崩溃或停止服务时,所有用户都将从备用服务器获得对密码的紧急访问。

情景 2

主和辅助服务器位于不同网络环境中,当二者间的WAN连接出现故障时

在这种情况下,主备服务器位于不同的网络上。远程网络中的备服务器在 WAN 链路故障或主服务器故障时获得读/写访问(密码重置操作除外)。

示例

主和辅助服务器位于不同的地理位置, 当二者间的WAN连接出现故障

假设主服务器位于地点A,备用服务器位于地点B。两个地点的用户都连接到主服务器获取管理中的密码。主服务器的数据将实时同步到备用服务器数据库。一旦A、B间的网络连接出现了问题。这样的话,地点A的用户将继续连接到主服务器进行“读写”访问。地点B的用户获得对备用服务器紧急使用的“只读”访问。当网络故障解决之后,主备服务器将自动同步。


3.1 审计记录会丢失么?

在上面的高可用性情景中,所有审计记录都会正常记录。 在场景 2 中,只要两个服务器之间有网络连接,审计会由主服务器记录。 当用户连接到备服务器时,它将记录"密码检索"、"登录"和"注销"等操作。 当两个位置恢复网络连接时,审计数据将同步。 在场景 1中,当主数据库崩溃时,备服务器的审计功能将记录用户的"密码检索","登录"和"注销"操作。 其他审记记录将在网络连接恢复后同步

4.1 如何部署高可用性 - 使用PAM360复制

高可用性工作原理的图片

步骤

第 1 步:

  • 停止主服务器

第 2 步:

  • 主服务器使用的数据库实例将作为“主数据库”,指定另外一个MSSQL实例为“备数据库”数据库。需要要导入备MSSQL server数据库SSL证书到PAM360主服务器。 在执行此步骤之前,要配置备用服务器的SSL。 您可以参阅 此文档中的步骤 1,2,3。

在主服务器上导入证书:

  • 转到<PAM360 主安装目录 >/bin目录执行命令importCert.bat <slavecert.cer >

第 3 步:

  • 转到<PAM360 主安装目录>/conf目录,打开masterkey.key文件并复制 SQL主密钥。 后面的步骤会用到。

第 4 步:

配置主、从数据库间的复制

  • 转到<PAM360 主安装目录>/bin 目录并执行命令ConfigureReplication.bat(Windows)或sh ConfigureReplication.sh(Linux)
  • 指定需要的主从数据库信息

主数据库实例信息:

    1. Master主机名称:主数据库实例所在机器的主机名或IP。
    2. 端口:PAM360连接到数据库的端口,默认为1433。 因为PAM360只支持使用SSL模式连接到SQL Server,推荐你创建独占的数据库实例,并且使用非默认的端口。
    3. 用户名和密码:数据库的用户名和密码。(用户应该是sysadmin角色。 PAM360 不会保存该用户名和密码,只在配置数据库复制时使用)。
      如果从 Windows 连接到SQL Server,您还可以使用 Windows 身份验证。 在这种情况下,用户名格式为 < 域名 >\<用户名>
    4. Master数据库名称:PAM360 数据库的名称。
    5. Master密钥:复制上面步骤3复制的主密钥。

备数据库实例信息:

    1. Slave主机名称:从属数据库实例所在机器的主机名或IP。
    2. 端口:PAM360连接到数据库的端口,默认为1433。
    3. 因为PAM360 只能使用SSL模式连接到SQL Server,推荐你创建独占的数据库实例,并且使用非默认的端口。

    4. 用户名和密码:数据库的用户和密码。(用户应该是sysadmin角色。 PAM360 不会保存该用户名和密码,只在配置数据库复制时使用)。
      如果从 Windows 连接到数据库,您还可以使用 Windows 身份验证。 这样的话用户名为 < 域名 ><用户名>
    5. Slave数据库名称:PAM360 数据库的名称。 默认值为"pam360standby"。 (如果您在配置主服务器ChangeDB.bat选择"Custom(定制)”,你要创建新的从数据库,创建主密钥,创建证书和创建使用 AES 256 加密的对称密钥。 在这里提供从数据库名称。
    6. 点击Test & Configure来完成复制。 此过程大约需要30分钟或更长时间。

第 5 步:

启动主服务器

第 6 步:

安装新的PAM360作为备用服务器。安装备用服务器的时候,要选择Configure this server as High Availability secondary server (Read Only)安装后,先不要启动 PAM360 备用服务器

第 7 步:

安装后更改其使用的后台数据库:

执行 ChangeDB.bat

执行命令输入数据库信息:\bin ChangeDB.bat ( Windows )/bin sh ChangeDB.sh( Linux )

选择 SQL Server

    1. Host Name of Slave Database:从属数据库实例所在机器的主机名或IP。
    2. Port:PAM360连接到数据库的端口。 默认值为 1433。
    3. Database Name:步骤4配置的PAM360数据库名称。
    4. Authentication:选择身份验证方式。Windows或SQL, 推荐选择"Windows",这样就不会在任何地方存储用户名和密码。
    5. User Name and Password:如果选择了选择了"SQL",请指定 PAM360 需要连接到数据库的用户名和密码。 此处输入的用户名和密码将存储在 PAM360 中。。 所以,你需要照顾硬化主机。
      在这里,如果从 Windows 连接到SQL Server,你还可以使用Windows身份验证。在这种情况下,用户名格式为 < 域名 ><用户名>
    6. Encryption Key:数据加密的密钥。选择"Default"让PAM360生成一个密钥。或选择“Custom”自己定义。
    7. 如果选择了选项"Custom:提供主数据库证书名称和对称密钥名。
    8. 测试保存。

第 8 步:

对于PAM360许可文件、定制图标和换标设置,请转到 <PAM360_备_安装目录>/conf目录下编辑manage_key.conf,并复制SQLServerHAPack.zip到<PAM360_备_安装目录>并解压。注意解压文件到<PAM360_备_安装目录并覆盖原文件,>不是<PAM360_备_安装目录>/SQLServerHAPack文件夹。

第 9 步:

解压缩SQLServerHAPack.zip后,转到<PAM360_备_安装目录>/conf文件夹,编辑manage_key。conf,指定pam360_key文件的位置。 (加密主钥)。然后,启动备用服务器。PAM360每次启动时需要访问该文件。启动后,就可以把该文件所在驱动器卸载了。

5.检验高可用性部署

部署完成后,你可以检查高可用性是否工作正常。打开主服务器的“管理 >> 全局 >> 高可用性”。如果部署没有问题,你将看到如下信息:

高可用性状态:Alive

它表示高可用性工作正常。。 如果状态变为"失败",则表示设置失败。

 

请参阅:

使用 SQL Server Management studio同步的MS SQL的高可用性

© 2021, ZOHO 公司,保留所有权利。

页首