2个虚拟服务器与一个SAN硬盘上的数据库,一个虚拟机作为另一个备用

我正在考虑以下设置:

  • 2个具有本地C:驱动器的虚拟服务器
  • 1 SAN上的文件系统
  • 数据库服务器软件都安装在SAN文件系统上的数据库上
  • 1台虚拟服务器做生产,另外一台是备用服务器
  • 两个虚拟服务器都configuration为100%完全相同,除了IP地址,其中只有一个可以同时连接到SAN文件系统

这样,当升级/修补数据库服务器到一个更新的版本,我们可以这样做:

  • 升级备用服务器的数据库服务器软件
  • 断开用户连接
  • 将主服务器移到不同的IP地址,并从SAN文件系统断开连接
  • 将辅助服务器移到生产IP地址并连接到SAN文件系统
  • 重新连接用户,以便他们现在使用辅助服务器
  • 升级主服务器的数据库服务器软件

在此之后,angular色是交换机,使主服务器成为备用,反之亦然。 据我所知,这个总停机时间应该是几秒钟。

这是一个可行的设置? 有什么我应该注意的吗?

这是一个完全可以接受的设置。 根据您select的数据库引擎,我只会build议,也许您也设置了数据库的第二个副本,也许实现镜像或日志传送计划。 在一个数据库中发生任何损坏的远程机会,你可以故障转移到另一个数据库。 但我离题了:)

回到你的问题,还有一些额外的考虑 – 切换的时间是多less,这将影响你的用户群。

这可以工作。 你唯一可能遇到的麻烦就是数据库本身。 它可能不喜欢在没有附加数据的情况下升级(在备份机器上),而且我不喜欢在升级后(在备份之后)重新显示数据。

在投入生产之前,绝对要在实验室对数据库软件进行testing,因为这可能会损坏数据库。 防止这种情况的一种方法是在切换之前创buildSAN快照,以便在发生灾难时可以在原始服务器和快照上重新切换。