在专用服务器中实现完全冗余的最佳方法是什么?

在专用服务器中实现完全冗余的最佳方法是什么?

我一直在阅读有关完全冗余的信息,以实现在专用服务器上运行的关键任务应用程序(处理财务数据)的几乎 100% 的正常运行时间,但我仍然不明白如何做到这一点。

1) 假设我当前的服务器上运行着多个 Web 应用程序(包含大量且频繁的文件和数据库更新)。据我所知,我需要获得另一台专用服务器(作为备份服务器),以便我可以将所有文件和数据库数据镜像到其中,并且如果我的主服务器因任何原因发生故障,我的备份服务器将立即承担负载。从主服务器到备份服务器的传输是通过 DNS 完成的。这是正确的吗?有没有比这更好的方法来实现冗余?

2) 如果我们按照我在 #1 中提到的方法操作,那么如果主服务器再次上线会发生什么?主服务器如何跟上备份服务器上所做的所有更改?

3) 有没有我可以阅读的明确指南,告诉我如何才能做到这一点?我已经通过 Google 搜索过了,但我遇到的大多数方法都不适合我们,因为我们的网络应用程序至少不能停机超过 5 分钟,我们不能丢失 5 分钟的数据。

4) 有没有可以为我们做到这一点的服务?由于我们已经有一个现有的专用服务器,因此该服务必须围绕现有的工作环境运行。但如果我能学习如何自己做到这一点,我会更高兴。

如果你们能给我指明正确的方向,我将不胜感激。

答案1

这完全取决于所使用的特定应用程序的架构和可用性选项。

您的数据库是否支持集群部署?镜像/复制部署?两者都支持吗?每种部署的注意事项是什么?故障转移/恢复过程是什么?资源分配要求是什么?您的 Web 应用程序呢?可以集群吗?负载平衡?两者都支持吗?您的 ISP 呢?您有冗余互联网连接吗?从不同的管道进入建筑物的不同侧面,这样施工不会同时损坏两者?您的电源配置是什么?您有冗余电源吗?冗余 UPS?数据中心的发电机?

这些问题不是为了在这里得到回答 - 它旨在向您展示设计此类解决方案的冰山一角。 100% 正常运行时间是一个无法实现的目标,但是如果您想尽可能接近,您应该聘请有经验的人,因为根据问题的内容,您还远远没有做好准备。

答案2

MDMarra 是正确的,这不是一个可以在这里合理地给出明确答案的问题(+1)。

您需要查看 OSI 模型的所有七层中的应用程序,然后在以下位置添加冗余:每个级别。您很可能需要所有相关开发人员和管理员的输入。

当管理层开始抱怨价格标签时,请准备好讨论停机成本与冗余成本。一个好的经验法则是,每个小数点(99.9% -> 99.99% -> 等)都等于成本末尾的另一个零,因此它很可能归结为经过充分研究的设计和执行,以满足技术需求和管理层的成本担忧。构建一个价值百万美元的解决方案来保护价值 1000 美元的应用程序是非常不合理的。

但是,如果管理层给你开一张空白支票,我相信有很多人愿意提供咨询=)

相关内容