虚拟机ha原理

2025-01-23 11:04:46
单叔菁
冶金VPS

理解vSphere HA

vSphereHA可以检测ESXi主机上的虚拟机是否出现故障,并立即重新启动故障虚拟机,重启时间应根据虚拟机的实际情况确定。
(Win 和 Linux 使用带有自己日志的文件系统,因此如果发生关闭,数据丢失或文件损坏的可能性相对较小。
) vSphereHA 实践经验: 1. 在具有 5 个主机的集群中,特定主机发生故障时。
当它关闭时,该系统上运行的 15 到 20 个虚拟机也将关闭。
HA 按预期进行干预并重新启动虚拟机。
但这些虚拟机是在监控报警服务器崩溃后才关闭的,因此虚拟机关闭事件立即重新启动,并没有触发报警。
2. 在有两台主机的集群中,将其中一台主机下电以产生故障。
在此期间,虚拟机IP地址从故障到恢复会长时间被ping通。
分钟。
vSphereFT 可以提供更短的故障切换恢复时间。
vSphereHA 使用故障域管理器(FaultDomainManager、FDM)。
FDM采用主/从架构,不依赖主/从主机。
FDM 支持管理网络和存储设备进行通信。
FDM可以解决网络分段和网络隔离问题。
FDM Agent 安装在集群中的每台主机上,安装路径为 /opt/vmware/fdm,配置文件路径为 /etc/opt/vmware/fdm。
它与vCenter管理代理vpxa(用于vCenter和ESXi主机之间的通信)不同。
启用 vSphereHA 后,vSphereHA 代理会选择 vSphereHA 主控主机。
vSphereHA 主控主机在集群中执行以下任务: 监控从属主机,然后在主机发生故障时启动虚拟机。
它负责监控虚拟机的电源状态,以便在发生故障时可以执行操作。
主机、添加和删除。
原主主机出现故障后,负责将主主机信息更新到vCenter,新主机接管HA操作并联系负责保护或存储主主机上虚拟机的保护设备。
集群配置负责设置辅助主机心跳、保持心跳活动,并且通常向 vCenter 报告状态。
vSphereHA 从属主机在集群中执行以下任务: 监控虚拟机的运行状况并将重要更改传达给主控主机。
管理集群中的主机并参与新Master主机的选举。
支持主控主机管理另一个 vSphereHA 虚拟机功能 VMHealthMonitoring。
1. 在 vSphere HA 集群中,所有主机都可以访问集群共享存储位置。
2. 在 vSphere HA 集群中,所有主机都可以访问同一虚拟网络。
使用 vSphereDRS 时,所有主机必须添加到同一 vDS。
配置 vSphereHA 后,您可以使用 vMotion 对其进行测试。
使用vMotion测试是否满足上述两个条件。
但如果所有路径都异常(APD)或发生永久设备丢失(PDL),HA就无法解决问题。

vcenterha怎么取消

1.首先安装并打开vcenterha。
2. 接下来,单击主页上的“UpdateManage”选项。
3、最后在选项中找到“设置”,点击“设置”-“取消通知”-“编辑”,取消勾选“检查通知”即可取消。
vCenter是一个虚拟机集群应用程序。
HA的全称是HighAvailability。
VMware HA 群集具有由两个或更多 ESX 主机组成的逻辑队列。
在HA集群中,每台VMware ESX服务器都配备了HA代理,该代理持续检测来自集群中其他主机的心跳信号。

HA是什么,它的工作原理是什么

以下摘自新浪sunny博客

原文链接:https://delxu.blog.51cto.com/975660/717516

delxu原创

HA 的工作原理

我很早就想写有关 VMware HA 的博客了。
我做了一些功课,查了很多资料,写了一些笔记,但最终还是得到了回报。
由于很多原因没有写下来。
随着vSphere5的发布,HA机制做了很多调整,需要编写一些修正。
这篇文章(或许我也可以写几篇关于HA的机制和工作原理的文章做成一个系列)是根据我的一些读书笔记整理而成的。

【什么是HA】HA的英文名称是HighAvailability,高可用性。
从字面上看,它是一种有助于最大程度地减少服务中断的技术。
VMware的HA类似于微软的MSCS(Win2008后更名为FailoverClustering)。
多台服务器被组织成一个故障转移集群(Cluster)。
集群上运行的服务(或虚拟机)不会因单个服务器停止而失败。
我们用一张图来简单解释一下HA的运行原理:图中的橙色服务器ESXi01坏了,其上的两台虚拟机VM1和VM2按照规定被两台服务器ESXi-02和ESXi-03接管。
HA 安排并重新启动它。

注意:本文中的图片均取自《VMware vSphere5 Clustering Digital Deepdive》,但需要注意的是,HA(无论是 VMware 的HA或MSCS)并不是传统意义上的高可用,这根本不会中断服务。
HA只是一种自动故障转移机制。
当主机出现故障时,服务或VM(对于配置了MSCS的Hyper-V,VM实际上被视为服务)会在另一台可用主机上自动重新启动。
这本质上是一个中断和重启的过程。
对于虚拟机来说,看起来就像服务器突然被拔掉然后又重新打开。
失败然后重新启动的过程实际上相当漫长,并且在不同的虚拟机上有所不同。
此过程短则需要 1-2 分钟,长则需要 5-6 分钟。
如果在缺乏资源的主机上运行,​​这个时间可能会更长。

【创建VMwareHA】创建VMwareCluster并激活HA的方法非常简单。
在谷歌和百度上很容易找到一堆。
这里就不详细说了,这几天有时间,我会拍一些照片,单独写一篇关于Cluster创建图的博客。
这里我想重点讲的是HA的原理。
[创建HA的先决条件] 一个通用的HA集群通常包括以下必备条件: *2台或更多服务器 *这些服务器共享外部内存 *虚拟机运行在共享内存上 *服务器上至少有2块网卡,其中一块需要负责用于传输“心跳”信号。
以上条件适用于大多数高可用集群。
另外,要成功配置VMwareHA,必须满足一些必要条件: * 必须有vCenterServer(虽然没有vCenterHA也可以工作,但是创建集群时必须加入 vCenter) * 所有主机必须具有相同的 vSwitch 配置

需要注意的是,对于 ESX4,加入集群还必须使用 It 的 FQDN。
但从 vSphere5 开始,这不再是必要的。
IP地址直接用于HA集群通信,减少HA依赖,提高HA响应速度。
但是,由于 VMware vSphere 5 的某些服务和其他组件仍然需要 DNS,因此仍然建议使用 FQDN。

【HA组件】vSphere5 HA组件有以下三个组件:

FDM

hostd

vCenter

FDM是FaultDomainManager的缩写,它的前身在ESX4中被称为AAM,用于FaultDomainManager之一HA 管理的最重要组成部分。
它负责集群的心跳、主机之间的通信、与vCenter的通信、协调虚拟机的放置、调度虚拟机重新启动、日志记录等。
Hostd负责直接监控和处理虚拟机,如启动虚拟机、监控虚拟机的状态等。
FDM需要借助hosts来完成对虚拟机的操作(如启动)。
简而言之,FDM 依赖于 Hostd。
如果 Hostd 发生故障,FDM 也将停止工作。
vCenter是企业虚拟架构的集中管理平台。
虽然HA并不依赖它来运行。
但是在设置HAcluster时,必须通过vCenter进行初始化。
其主要功能是在服务器上安装HA Agent(指FDM和hostingdagent),并在Cluster配置发生变化时通知各个服务器。
【主从】 在ESX4中,节点分为主节点和从节点。
加入集群的前五个节点成为主节点,每个节点都有一个 AAMDatabase。
vSphere5 简化了这一过程。
现在不再有Primary和Secondary的概念,而是Master和Slave的概念。
Cluster中只有一个Master,其余都是Slave。
Master的作用是管理整个集群。
作为集群的主要管理器,它监视虚拟机的运行状态并确定某个主机是否宕机。
需要在其他服务器上重新启动。
对于集群来说,Master 是集群上所有虚拟机的“所有者”。
哪里可以知道房主是不是大师? 见下图

没有Master的集群将没有Leader,没有Leader的集群将会失败。
当Master失败时怎么办? 集群不能缺少Master,所以Master选举会立即启动。
【Master选举】以下情况会触发选举:

HA创建时;

Master处于非活动状态;

Master处于孤立或集群状态分区状态;

Master 处于维护状态或 Standby 状态;

集群重新配置时;

Master 与 vCenter 失去联系;

选举将于15日举行 第二。
选举通过 UDP 协议(​​端口 8182)进行。
选举规则是:选出拥有最多数据存储的服务器。
如果具有相同数据存储数量的服务器,将选出 ManagedObjectiveID 最大的服务器。
(注:这里的最大值不是最大值,而是从左到右依次排列的每个数字的大小。
例如99大于100,因为先比较第一个数字,9大于1)【大师维护主权]一旦当选,新的master将维护master的权威,并尝试接管所有数据存储。
问:如何接管? (或者如何接管一个数据存储) A:通过锁定一个文件,这个文件存在于每个数据存储上,名称为“受保护列表”。
该文件的位置为: //.vSphere-HA//protectedlist 该文件存储受 HA 保护的虚拟机列表。
如果Master发生故障,它的锁就会过期,新选出的Master可以接管文件并再次锁定它。
Master还负责监控Slave的状态。
如果检测到Slave没有响应其心跳,则判断是否重新启动Slave上的虚拟机。
Slave 之间不会相互通信,除非它们选举出 Master。