我在两台主机(vsphereA和vsphereB)的HA群集中运行vSphere 5。 我已configurationHA群集进行主机监视和数据存储区心跳监视,禁用了准入控制(希望我正确地理解数据存储区心跳监视可防止由于pipe理networking隔离导致无意和不需要的HA故障转移)。 每台主机都有一个到专用iSCSInetworking和iSCSI目标(无MPIO)的单一连接。 所有虚拟机的所有vmdk都存在于iSCSI数据存储上。 作为HA的testing,我断开了vsphereB上的iSCSI连接,很惊讶地看到vsphereB上的正在运行的VM继续在vsphereB上运行。 被closures的虚拟机显示为无法访问(我预料中的原因是它们没有运行,并且从vsphereB到iSCSI目标的连接被切断),但正在运行的虚拟机继续运行,并继续被vsphereB“拥有” 。 我希望看到这些虚拟机发生HA故障转移,并希望在HA故障转移(未发生)后由vsphereA“看pipe”它们。 我不知道为什么这些虚拟机没有发生HA故障转移。 我误解了应该发生HA故障切换的情况吗?
你似乎混淆vMotion和HA,这是不同的function,做不同的事情。
vMotion是一项function,允许将虚拟机从一台物理主机迁移到另一台物理主机,而无需停机,并且服务中断时间最短(毫秒)。 这是在维护之前完成的,并且要求VM以及源和目标主机已经处于健康状态。 HA是一种重新启动失败虚拟机的function(如果configuration了主机隔离,则虚拟机不可访问),并导致虚拟机停机,因为整个虚拟机会closures并重新启动。
重要的外带:vMotion不是HA故障转移。 HA故障切换是HA故障切换。
vMotion是由以下几点触发的:
HA故障切换由以下事件触发:
底线:vMotion是由于性能事件而发生的,HA因为可用性事件而发生故障转移。
你所做的是从正在运行的虚拟机下面取出磁盘。 在这种情况下,vSphere和大多数虚拟机pipe理程序的标准行为是让虚拟机独立运行,并让它处理自己的磁盘问题。 这有几个很好的理由:
另一方面,对于很多工作负载(数据库浮现在脑海里),只要有可能发生腐败或丢失事务,closures它是一个好主意。 但是,在最好的情况下,由于无法在没有磁盘的情况下干脆静止数据库,所以您可能最终处于不一致的状态。
归根结底,HA有一些很好的用例,可以让HA对不可靠的存储做出反应,但是现在这种情况并没有发生,你所看到的行为是完全正常的。