hugang 发表于 2015-4-3 11:01:54

深入理解Hyper-V虚拟机故障转移策略

本帖最后由 wuyvzhang 于 2016-8-2 17:24 编辑 <br /><br />  在这篇博客里,笔者将要讨论在一个Win 2k8 R2故障转移集群里,Hyper-V虚拟机故障转移所使用的策略。大多数情况下,集群故障转移策略在集群中是通用且应用于所有的workloads,包括SQL,文件服务器等。关于这些网上有丰富的文档,笔者在这里会重点关注理解当集群的一个节点崩溃后又哪些因素会影响那些部署在这个节点上的虚拟机会被转移到哪个节点。
  默认的故障转移策略:
  当集群的一个节点失败了,部署在该节点上的虚拟机将会遍历余下的集群节点然后将虚拟机部署到部署了最少虚拟机的节点上。例如,部署了10台虚拟机的节点A崩溃了。集群服务会获取其中的一台虚拟机,然后遍历所有在线的节点并找到当前部署了最少虚拟机的节点(技术上说,它查询整个集群关系组然后选择包含最低虚拟机数的节点),被选中的虚拟机就被部署到这个节点上了。然后选择下一台虚拟机,再重新遍历在线节点然后选择当前部署了最少虚拟机的节点将这台虚拟机部署上。整个流程将不断重复直道所有的虚拟机都被部署到新的节点上。所有的虚拟机将会根据当时节点所部署的虚拟机的数量被部署到不同的节点上。
  为了防止“启动风暴”——同时启动过多虚拟机可能对服务器性能或者后层存储的严重影响,对于单个节点将会限制其虚拟机启动。作为一个安全的预防措施,在故障转移或者节点启动时,在同一个节点上给定时间内启动的虚拟机最多不能超过32台(在线的虚拟机被称为群集资源)。剩下的虚拟机将会加入到当前节点的启动队列中。一旦一台虚拟机启动完毕,通过获取过去POST(就是集群资源从等待在线转换为在线),为了稍稍的错开所有的虚拟机启动,另一台虚拟机接着会被启动。
  对于一般的读者来说,上面的内容就是你想知道或者关心的了。接下来笔者将会继续介绍更多高级主题。
  高级故障转移策略:
  在这里我将再次提醒,总体来说,默认的设置对于大多数人是最好的选择。可是,集群确实提供了丰富的选择使得用户可以调整默认的行为。
  · 可能所有者(Possible Owners)- 对于一台给定的虚拟机(任何集群资源)你可以配置该虚拟机想要故障转移的节点。默认是所有的节点,可是如果有一个节点你永远也不希望你的虚拟机被故障转移到它上,你就可以将这个节点从虚拟机的可能所有者(Possible Owners)移出来禁用它。
  其他影响故障转移的因素:
  还有许多值得讨论的能够在故障转移时影响虚拟机部署和行为的设置。我们在这里再讨论其中的一些:
  · 暂停节点(Pause Node) - 在服务器级别,你可以暂停一个节点。当这个节点被暂停了,就意味着没有虚拟机(没有集群组)能被故障转移到这个节点上。如果这个节  点被暂停了,它将会从故障转移的可能所有者列表中移除。当想要进行维护工作比如说应用一个更新包时,暂停一个节点是一个比较好的选择,这样当你在节点上做一些工作的时候,虚拟机不会被故障转移到这个节点上。
  · 禁用故障转移(Disable Failover)- 对于一台给定的虚拟机(任意集群组),你可以配置“自动启动(Auto Start)”设置。如果自动启动被禁用了,这意味着这台虚拟机将不会在故障转移节点上被启动。对于那些低优先级的虚拟机,如果你不需要对它进行故障转移的话,这会是一个有用的设置。如果你仍然想集群它的话,可以尝试在线迁移。
  启动部署策略:
  · 持久化模式(Persistent Mode)- 当一个集群全部关闭然后重启,虚拟机将会尝试在关闭前的节点上冲起。这通过“持久化模式(Persistent mode)”进行控制,默认情况下是启动的。集群服务等待节点重新加入集群的默认总时间是30秒,这通过集群的普通属性ClusterGroupWaitDelay来进行配置。你也许会选择对于高优先级别德虚拟机禁用持久化模式,因为你并不想等原来的节点加回到集群而只是希望尽可能快地启动虚拟机。关于更多信息请点击。

www.138553.com SO娱乐城:真_人.足球.彩票齐全| 开户送10元.首存送58元.手机可投乂注任何游戏顶级信用乂提现即时到账SO.CC
页: [1]
查看完整版本: 深入理解Hyper-V虚拟机故障转移策略