防止服务器停机影响网站

防止服务器停机影响网站

我正在设置一个运行 Ubuntu 12.10 的 Web 服务器。我使用 Canonical Landscape 来管理该系统以及我可能添加的任何未来系统。我想知道防止网站因硬件故障或系统过热而停机的最佳方法。

我使用良好的 30 分钟以上备份系统来确保少于 30 分钟的电源故障不会影响我的网站(UPS 电池备份),但如果服务器本身发生故障,会发生什么情况。我见过许多“云”配置的设置,但都毫无意义。我是服务器管理的新手,所以很多术语都是新的。

随着我的网站规模不断扩大,我将把 MySQL 数据库放到另一台服务器上,以确保速度。我还在家里托管,因此不可能拥有冗余网络。如果我的固定电话发生故障,服务器就会停机。不过这并不困扰我。数据中心可能会因网络问题而离线,所以我并不担心这一点。

任何软件或硬件负载分配系统建议都会有所帮助。此外还有一些简化的文档,这样我不明白的任何事情都会得到解释或仅使用简化的术语。

提前致谢。

答案1

将 Varnish 纳入您的托管堆栈。Varnish 将充当缓存并处理大多数匿名用户的请求。因此,即使您的 Apache 服务器出现故障,Varnish 仍将继续处理请求。

如果您的流量很大,请考虑使用 VPS 和前端的几个 varnish 头来与多个 Apache 服务器通信。

答案2

这是一个非常广泛的问题,但这里有一些提示。为了防止硬件故障,您需要调查负载平衡(我使用 ldirector)和/或心跳。这意味着您需要另一个或多或少相同的主机作为备用主机。

虽然它们的设计目的不同,但从高可用性的角度来看,它们可以实现大致相同的功能。Heartbeat 允许一对服务器监控彼此的可用性,并将服务(例如 Web 服务器)切换到继续运行的主机。

负载平衡可以通过从池中移除“死机”主机来实现类似的设置。这里有一个关于心跳的很好的入门教程:http://www.linuxjournal.com/article/5862和这个http://www.howtoforge.com/set-up-a-loadbalanced-ha-apache-cluster-ubuntu8.04-p3处理 ubuntu 上的 ldirectord(虽然不是你正在使用的版本)

我使用良好的 30 分钟以上备份系统,以确保 30 分钟内的电源故障不会影响我的网站

很好,但是恢复备份需要多长时间?

我也在家里托管,所以不可能有冗余网络。如果我的固定电话发生故障,服务器就会停机。不过这并不困扰我。数据中心可能会因网络问题而下线,所以我不担心这一点。

当然,没有哪个地方是万无一失的,但 DC 的可用性很可能比家庭宽带连接好得多。DC 通常有(或至少应该有)许多冗余互联网连接、备用电源、防洪设施和大量其他冗余系统,以保持一切正常运行。

如果您想提高网站的可靠性,从众多提供商中获取 VPS 或租用服务器可能是最简单的选择。

祝你的项目顺利。

相关内容