在接下来的几个月里,我们希望将故障转移和负载平衡添加到我们的环境中.我们将有2台服务器是Hyper V主机.我们希望在两台主机上都有一个IIS App服务器和sql数据库服务器.这样,如果一个盒子出现故障,另一个盒子会在那里取而代之.现在我的困惑来自于我一直在进行的一些谷歌搜索.据我所知,似乎有sql集群/点对点事务设置,以及Hyper-V集群.我不确定在这种情况下哪种方法最有效.主机还将具有随机的其他服务器,例如系统中心,我们的票证服务器,Exchange管理服务器以及其他几个服务器.所以我不确定现在的Hyper-V集群是否是最糟糕的选择.
谢谢.
使用Hyper-V群集,您可以将一组Hyper-V服务器(2)连接到同一组网络存储,以便LUN可用于Hyper-V群集中的所有服务器.您必须具有此设置的网络存储空间.使用Hyper-V实时迁移,您可以将正在运行的VM从一个Hyper-V主机移动到另一个主机.这允许来自一个服务器的工作负载在服务器发生故障时转移到另一个服务器.如果剩余的服务器能够处理其他VM的负载,则可以为您提供物理冗余.此设置不会保护您免受VM操作系统和应用程序本身的损坏. (有关此设置的详细信息,请参阅
http://technet.microsoft.com/en-us/library/dd446679(WS.10).aspx.)
sql有自己的冗余,有几种不同的集群选项.您可以使用活动节点和一个或多个被动节点执行传统的主动/被动群集.此设置需要服务器之间的共享磁盘,并且仅安装在活动节点上. sql还支持多种类型的复制,允许多个活动节点.此方法不需要共享存储,并在每个服务器上保留数据库的单独副本. (有关sql 2008高可用性选项,请参阅http://msdn.microsoft.com/en-us/library/ee523927(v=sql.100).aspx)
sql级别的群集可以防止单个节点上的故障OS或应用程序出现故障,从而允许在该方案中自动进行故障转移.如果每个实例位于不同的Hyper-V服务器上,则还可以防止硬件故障.此外,sql Server的某些群集方法可防止各个节点上的数据库损坏.使用Hyper-V群集并且只有sql Server的单个实例不能保护您免受VM中的操作系统/软件故障的影响.如果停机不是一个大问题,您可以在短时间内从VM快照恢复.
编辑:
忘记IIS负载均衡部分.
对于负载平衡IIS,您可以使用Window Network Load Balancing,它可以创建在两台主机之间共享的虚拟IP. (见http://technet.microsoft.com/en-us/library/cc770689(v=ws.10).aspx)
对于Hyper-V群集或NLB是否是正确选项,IIS服务器作为sql服务器应用相同的规则.除了其他VM之外,除非它们是群集/负载平衡的,否则它们不受Hyper-V主机没有Hyper-V群集的问题的保护.