当前位置: 首页 > news >正文

Hyper-V 2节点集群高可用的限制


豆子使用学习windows 2012 Hyper-V的集群大概半年多了,这阶段看了很多人的博客,自己也搭建过实验环境,最后工作环境中也搭建了一个,但是直到上周,才发现双节点集群的在高可用方面的限制性。


上周末,豆子需要升级 Hyper-V 节点的firmware,心里想的很简单啊,首先做个live migration把虚拟机都挪到另外一个节点,然后关机,升级firmware,开机,另外一台主机上重复以上操作。但是呢,事实和豆子考虑的是有出入的~~  第一台主机成功升级了,但是操作第二台的时候,悲剧发生了,尽管SCVMM的migration操作显示成功了,但是当我关机以后,集群上面所有的VM都一起歇菜了~t_0004.gif 最开始 我以为是SAN的问题,因为我并不是使用传统的共享SAN,而是通过starwind软件把本地硬盘强行模拟成共享SAN,后来在另外一个实验环境里面使用了共享SAN,居然也发现了同样的问题,最后终于发现这个事故的罪魁祸首是Witness Disk的局限性造成的。


http://technet.microsoft.com/en-us/library/cc770620(v=ws.10).aspx


配置witness disk有4种模式,如下所示。


  • Node Majority: Each node that is available and in communication can vote. The cluster functions only with a majority of the votes, that is, more than half.

  • Node and Disk Majority: Each node plus a designated disk in the cluster storage (the “disk witness”) can vote, whenever they are available and in communication. The cluster functions only with a majority of the votes, that is, more than half.

  • Node and File Share Majority: Each node plus a designated file share created by the administrator (the “file share witness”) can vote, whenever they are available and in communication. The cluster functions only with a majority of the votes, that is, more than half.

  • No Majority: Disk Only: The cluster has quorum if one node is available and in communication with a specific disk in the cluster storage.


当初我也没怎么考虑,直接用的是软件的自动最佳配置,我使用的是Nodes and Disk majority。经过分析,如果我只有2个节点和1个witness disk,那么总共有3票(votes),任何时候如果有2票通过,那么集群就会正常运作。很不幸的是,witness disk总是位于其中一台节点上的,如果刚好是这台主机重启,那么就意味着有2票同时都没了,cluster会立刻紊乱,上面的虚拟机自然也就会出现各种异常,自动关机了。如果是那台没有witness的主机重启,剩下还有2票工作,自然是没有问题的,这就是为什么豆子的第一个操作是成功的,而第二个却失败了。


那怎么解决这个问题呢,按照这4个配置选项,我可以使用选项3 Node and File Share majority,重新找个服务器,上面设置共享,这样一来,因为这个共享文件始终在线,任何一台主机重启,都能保证2个投票,那肯定是一直工作的;或者呢,豆子有钱的话,在现有的集群里面再安装一个节点,那么可以使用选项1 Nodes Majority以便保证2个投票;如果更有钱,能够安装一共4个节点的集群,那么才可以使用Node and Disk Majority。


这些选项考试和配置实验的时候豆子都遇见过,可是当时都没在意,考试嘛很容易就过了,实验默认配置啊 Failover, Live Migration好像也都工作。不少老师前辈的博客实验一般也是搭建个双节点的集群,貌似也就测试一下live migration就表示实验成功。


不足之处 欢迎拍砖!

t_0012.gif









本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1353003,如需转载请自行联系原作者

相关文章:

  • 记几个IOS工具网站
  • MIME邮件面面观
  • CentOS 6.3(x86_32)下安装Oracle 10g R2
  • lsof命令的使用
  • linux0.11学习笔记(2)
  • C#基本数据类型 思维导图
  • android FM播放时拔出耳机后,FM APP出现拔出耳机,Fm停止的提示框,然后自动close...
  • 编写shell脚本的另一种方法
  • 《CLR via C#》 之运行时序列化(3)
  • 一些可能没用过的调试窗口
  • Uboot 运行时内存的分配 -- 转
  • Linux系统下4个扇区的解释
  • Kerberos简介
  • ArgoUML 的简单用法
  • 修改eclipse自动生成的comments中的author名字
  • dva中组件的懒加载
  • JS+CSS实现数字滚动
  • JSDuck 与 AngularJS 融合技巧
  • Material Design
  • Vue2 SSR 的优化之旅
  • 使用 QuickBI 搭建酷炫可视化分析
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 云大使推广中的常见热门问题
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • ​ubuntu下安装kvm虚拟机
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • #android不同版本废弃api,新api。
  • ()、[]、{}、(())、[[]]命令替换
  • (Oracle)SQL优化技巧(一):分页查询
  • (初研) Sentence-embedding fine-tune notebook
  • (二)学习JVM —— 垃圾回收机制
  • (分类)KNN算法- 参数调优
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (九)c52学习之旅-定时器
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (顺序)容器的好伴侣 --- 容器适配器
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (转)大道至简,职场上做人做事做管理
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • **CI中自动类加载的用法总结
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .chm格式文件如何阅读
  • .NET CORE 第一节 创建基本的 asp.net core
  • .net FrameWork简介,数组,枚举
  • .Net MVC + EF搭建学生管理系统
  • .Net Redis的秒杀Dome和异步执行
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .NET与 java通用的3DES加密解密方法
  • @LoadBalanced 和 @RefreshScope 同时使用,负载均衡失效分析
  • [2021ICPC济南 L] Strange Series (Bell 数 多项式exp)
  • [ACTF2020 新生赛]Upload 1
  • [AI]ChatGPT4 与 ChatGPT3.5 区别有多大
  • [bzoj4010][HNOI2015]菜肴制作_贪心_拓扑排序