我的主机向我收取每月50美元的费用,将我的服务器放在同一个VLAN上,这样我就可以使用网络负载平衡功能创建一个集群.
我真的不需要分割服务器之间的负载,我一直在寻找一种简单的方法来创建故障转移方案来防止服务器故障.但是,我认为这笔费用不贵.
有没有办法在不使用NLB的情况下创建集群?也许某些东西监视我的主服务器并在域发生故障时更改域的DNS?
解决方法
DNS是模拟故障转移的不良选择.原因是
> DNS记录有效期一段时间,为了实现实时故障转移,您需要将DNS条目上的TTL降低到足以使您的站点的每个请求都导致DNS查找.这会严重减慢访问者的体验
>有些人怀疑,即使在今天,具有极低TTL值的DNS也不会受到ISP和较旧的破碎名称服务器的尊重.
>使用循环DNS不会提供故障转移,因为平均有50%的请求将发送到列出的每个IP.如果HTTP的更高级别协议内置了重试,这实际上会起作用.
我的建议是
>如果您的第二台服务器位于同一个托管公司,那么请考虑租用一个真正的负载均衡器,供您自己使用,或者大多数托管公司可以租用您的部分共享负载均衡基础设施
>使用spread或Linux HA服务器之类的东西将服务分配给在物理服务器之间传递的浮动虚拟IP.群集中的服务器相互监视并确定谁是虚拟IP的当前所有者.
我强烈建议阅读Scalable Internet Architectures by Theo Schlossnagle,因为他非常详细地介绍了这一点