vSphere高可用架构---HA简介

1.高可用性

2.不同级别的高可用:

1)应用程序级别,2)操作系统级别,3)虚拟化级别,4)物理层级别

不同级别的高可用举例:

  1. 应用程序级别的高可用性。例如:Oracle Real Application Clusters(oracle (RAC))
  2. 操作系统级别的高可用,例如:Windows Failover Clustering (WFC) for Windows Server,RedHat 的RHCS

3)虚拟化层级的高可用,例如:vSphere High Availability (HA) (业务有中断)and vSphere Fault Tolerance(FT)(高级HA业务不中断)

4)物理硬件的高可用— ESXi主机的网卡多路径冗余,存储的链路多路径冗余(HBA卡冗余),网络交换机和光纤交换机的冗余,存储设备的双控制器冗余,以及服务器,存储等设备的双电源冗余

二 vSphere High Availability的监控对象(但最终都是重启虚拟机

1 ESXi 主机故障

VMware vSphere Agent 通过管理网络进行心跳检测每秒一次

当主机出现故障时,其他正常的主机会接管故障主机的上的虚拟机(相当于重启虚拟机),保证虚拟机可用性。

2 客户 OS 故障

HA也可以检测虚拟机的工作状态,默认该功能是禁用的。主机通过Vmtools和虚拟机进行通讯,当虚拟机操作系统出现故障时,重启虚拟机。(通过vmwaer tools检测心跳信号)。

3 应用程序故障

HA也可以通过VMtools 来监控部分支持VMware 应用程序监控的应用程序,当应用程序出现故障时重启虚拟机

三 vSphere High Availability原理

1 VMware vSphere High Availability (HA)可为虚拟机中运行的应用提供易于使用、经济高效的高可用性。一旦物理服务器出现故障,VMware HA可在具有备用容量的其他生产服务器中自动重新启动受影响的虚拟机。若操作系统出现故障,vSphere HA会在同一台物理服务器上重新启动受影响的虚拟机。

2 vSphere HA利用配置为群集的多台ESXi主机,为虚拟机中运行的应用程序提供快速中断恢复和具有成本效益的高可用性

3 FDM:vSphere5以后采用FDM(Fault Domain Manager)实现高可用功能(是一种代理程序,相当于keepalivedde 功能)

4 FDM好处如下:

1)采用master/slave架构(一台master主机其他都是slave主机),而不是 primary/secondary架构,可以支持更多的集群主机

2)同时使用管理网络和存储设备进行通讯来提供心跳机制

3)可以监控网络分区和网络隔离故障,从而采取相关响应,最大限度提高虚拟机可用性。

如图:相当于出现的主机故障

四 Master的作用

1 Master监控slave主机,当slave主机出现故障时重启虚拟机

2 Master监控所有被保护虚拟机的电源状态,如果被保护的虚拟机出现故障,它将重启这个虚拟机

3 Master管理在Cluster内部的主机清单,并且对添加和删除Cluster内部的主机进行管理

4 Master管理被保护虚拟机的清单,在每一次用户发起开关机操作时,更新这个清单,vCenter会要求Master保护或者不保护某些虚拟机

5 Master缓存Cluster配置,Master通知和提醒slave主机,Cluster配置的修改(vcenter要求的cluster配置,由master来缓存cluster配置,再通知给slave主机进行cluster配置

6 Master发送心跳信息给slave主机,让slave主机知道master的存在

7 Master报告状态信息给vCenter,vCenter正常情况下只和master通讯

五 Slave的作用

1 Slave主机监视本地运行的虚拟机状态,把这些虚拟机运行状态的显著变化发送给Master

2 Slave监控Master的健康状态,如果Master出现故障,Slave将会参与Master的选举

3 Slave运用vSphere HA特性,这些特性不需要Master的协调。这些特性包括”VM Health Monitorin

代理通信

如上图所示:

①:FDM代理程序

②:hostd 有两个功能一是可以用于主机间的通信(通过FDM但是最终还是需要通过hostd来实现主机间通信),二是用于第三方软件登陆主机(比如:vmwarevsphere客户端登录ESXI主机或者vcenter)

③:vcenter通过vpxd与vpxa来管理主机

④:vcenter只与master主机进行通信

⑤:master主机可以管理存储中的主机清虚拟机清单

五 vsphere HA的两种检测机制(管理网络、存储网络)

1 网络心跳信号

如上图所示:管理网络的vmkernel口有两个,并且处于不同的网络段

2 数据存储心跳信号

六 主机故障分类

1 vSphere HA 群集的首选主机负责检测从属主机的故障。根据检测到的故障类型,在主机上运行的虚拟机可能需要进行故障切换。首选主机通信通过每秒交换一次网络检测信号来完成群集中从属主机的活跃度监控。当首选主机停止从从属主机接收这些检测信号时,它会在声明该主机已出现故障之前检查主机活跃度。首选主机执行的活跃度检查是要确定从属主机是否在与数据存储心跳之一交换检测信号。而且,首选主机还检查主机是否对发送至其管理 IP 地址的 ICMP ping 进行响应

2 关于故障主机和故障切换主机:一般故障切换主机上是没有虚拟机的,当有主机出现故障时(称为故障主机),将故障主机上的所有虚拟机都迁移到故障切换主机上,不影响其他主机和虚拟机,故障切换主机也可以说是一个备用机。

3 在 vSphere HA 群集中,检测三种类型的主机故障:

  1. 主机故障 - 主机停止运行需要以下三个方面检测

①:master与slave上的FDM无法通信,则为管理网络断开连接

②:而且从属主机不会对 ICMP ping 进行响应(ping网关ping不同

③:收不到存储检测型信号

  1. 网络隔离 - 主机与网络隔离需要以下三个方面检测

①:master与slave上的FDM无法通信,则为管理网络断开连接

②:如果主机停止监视此流量,则它会尝试 ping 群集隔离地址如果不通说明隔离(ping网关ping不同

③:可以收到存储检测信号

3)网络分区 - 主机失去与首选主机的网络连接

集群中的部分主机可能无法通过管理网络与其他主机进行通信(只有网络管理中断)。一个群集中可能会出现多个分区。

已分区的群集会导致虚拟机的保护和群集管理功能降级(主机负载过多或占用率大)。请尽快更正已分区的群集。

七 Slave主机故障

如上图所示:slave主机出现故障,出现故障的主机上的虚拟机会被迁走

八 Master主机故障

如上图所示:当master主机出现故障时,先由其他slave主机进行选举,根据两点:一是查看主机连接的存储数,数多的当选新任master主机,二是当连接的存储数相同时,查看主机的MOID号,对所有主机的moid号从左到右的每位数字进行比较,每位数都大的moid号主机就可以当选新任master。(比如76 108 79==选出76 79 ==最终选出79),然后原来的出故障的master主机就变成slave主机,再对其上的虚拟机进行迁移。

九 网络隔离

当一个slave已经检测到自己是网络隔离状态,它会生成一个特殊二进制文件host-X-poweron文件在heartbeat datastores上.master看到这个标志,它就知道了slave已经是isolation隔离状态,然后master通过vSphere HA锁定其他文件(datastores上的其他文件).当slave主机看到这些文件已经被锁定并确认后.才可以执行配置过的隔离响应动作.(如关机或者关闭电源,或者保持电源打开不变)

 网络分区

集群中的部分主机可能无法通过管理网络与其他主机进行通信。一个群集中可能会出现多个分区。

已分区的群集会导致虚拟机的保护和群集管理功能降级(主机负载过高或者占用率高)。请尽快更正已分区的群集。

十一 配置HA

1 点击集群--右键编辑设置--勾选打开vsphereHA

2 启用主机监控

3 虚拟机优先级选项根据不同虚拟机的重要程度选择

4 虚拟机监控一般为禁用状态,如果开启一般开启虚拟机与应用程序监控

5 数据存储检测信号(因为没有共享存储所以这没有)

十二 vSphere高可用---Fault Tolerance 简介

在5.5版本之前,只能同步内存中数据

在6.0版本之后,既可以同步内存(内存:走两台不同主机的虚拟机之间的通信),又可以同步存储(存储走存储交换机)

1 FT:

1)容错系统的设计目标是:当出现计划外中断时,某个备份虚拟机 可以立即接管任务,确保不出现服务中断。(备份虚拟机也称为 辅助虚拟机。)

①提供比 vSphere HA 级别更高的业务连续性

②实现应用程序的零停机和零数据丢失 FT 可用于任何需要始终可用的应用程序。

2 FT 可与 DRS 结合使用:

§首次就将容错虚拟机放置在较好的位置可获得更好的容错效果, 并且它们包含在集群的负载平衡计算中。

3 Fault Tolerance的原理

1)为虚拟机启用FT时,该组件会为原始实例创建一个在另外一台物理主机上运行的实时影子实例

2)通过VMware vlookstep技术,两个虚拟机就会保持同步,在主虚拟机上操作会通过千兆以太网将其传输到辅虚拟机上,但是只有主虚拟机具有读和写的功能,辅虚拟机只有只读的功能。

3)两个虚拟机会播放相同的事件集,因为他们在任何给定时间的事件输入集都是相同的。

4)两个虚拟机会彼此检测心跳信号,如果有一个失去心跳信号(不管是主虚拟机还是辅虚拟机),则另一个将立即接管相应操作变成新主虚拟机,然后再找一台虚拟机成为新的辅助虚拟机,因为心跳频率高,所以不会出现数据丢失和中断。如下图所示

4 Fault Tolerance 要求、限制和许可

1)要求

①主机中用于容错虚拟机的 CPU 必须与 vSphere vMotion 兼容或使用增强型 vMotion 兼容性进行了改进。

②还需要 CPU 支持硬件 MMU 虚拟化(Intel EPT 或 AMD RVI)支持以下 CPU:

Intel Sandy Bridge 或更高版本,Avoton 不受支持。

AMD Bulldozer 或更高版本。

(MMU虚拟化 1)如果处理器没有MMU,CPU内部执行单元产生的内存地址信号将直接通过地址总线发送到芯片引脚,被内存芯片接收,这就是物理地址(physical address),简称PA。英文physical代表物理的接触,所以PA就是与内存芯片physically connected的总线上的信号。

2)如果MMU存在且启用,CPU执行单元产生的地址信号在发送到内存芯片之前将被MMU截获,这个地址信号称为虚拟地址(virtual address),简称VA,MMU会负责把VA翻译成另一个地址,然后发到内存芯片地址引脚上,即VA映射成PA,如下图:

③为 FT 使用专用的 10-Gbit 日志记录网络并确认该网络滞后时间短。

2)限制:在已配置为使用 Fault Tolerance 的群集中,分别强制执行两个限制:

①:das.maxftvmsperhost: 群集中的主机上允许的最大容错虚拟机数量。主虚拟机和辅助虚拟机计入此限制。默认值为 4。(一个主机上最多有4个FT虚拟机)

②:das.maxftvcpusperhost :跨主机上所有容错虚拟机聚合的最大 vCPU 数量。主虚拟机和辅助虚拟机中的vCPU 均计入此限制。默认值为 8。(一个主机上最多有4个FT虚拟机,两个主机就是最多有8个,如果一个虚拟机只有一个vcpu,最多有8个)

3)许可:单个容错虚拟机支持的 vCPU 数量受您针对 vSphere 购买的许可级别限制。Fault Tolerance 支持情况如下

①:vSphere Standard 和 Enterprise。最多可允许 2 个 vCPU

②:vSphere Enterprise Plus。最多可允许 4 个 vCPU(指一个主机上只有一个FT虚拟机时,这个FT虚拟机最多可以有4个vcpu)

5 Fault Tolerance 不支持的 vSphere 功能(前三个是重点)

1)快照:在虚拟机上启用 Fault Tolerance 前,必须移除或提交快照。此外,不可能对已启用 Fault Tolerance的虚拟机执行快照。

注意: Fault Tolerance 支持为 vStorage APIs - Data Protection (VADP) 备份而创建的仅磁盘快照。但是旧版 FT 不支持 VADP(VSDP存储之间开编程接口,直接进行备份)。

2)Storage vMotion。不能为已启用 Fault Tolerance 的虚拟机调用 Storage vMotion。要迁移存储器,应当先暂时关闭 Fault Tolerance,然后再执行 Storage vMotion 操作。在完成迁移之后,可以重新打开 FaultTolerance。

3)链接克隆:不能在为链接克隆的虚拟机上使用 Fault Tolerance,也不能从启用了 FT 的虚拟机创建链接克隆。

4)虚拟机组件保护 (VMCP)。如果您的群集已启用 VMCP,则会为关闭此功能的容错虚拟机创建替代项。

5)虚拟卷数据存储。

6)基于存储的策略管理。

7)I/O 筛选器。

6 不与 Fault Tolerance 兼容的功能和设备

7 启用FT的要求

1)Fault Tolerance 的群集要求

①配置了 Fault Tolerance 日志记录网络和 vMotion 网络。

vSphere HA 群集已创建并启用:打开容错虚拟机电源或者将主机添加到已支持②容错虚拟机的群集之前,必须启用 vSphere HA

2)Fault Tolerance 的主机要求

①主机必须使用受支持的处理器。

②主机必须获得 Fault Tolerance 的许可。

③在配置每台主机时,都必须在 BIOS 中启用硬件虚拟化 (HV)。

④VMware 建议将用于支持 FT 虚拟机的主机的 BIOS 电源管理设置设为“最高性能”或“受操作系统管理的性能”。

3)Fault Tolerance 的虚拟机要求

①没有不受支持的设备连接到虚拟机。

②不兼容的功能一定不能与容错虚拟机一起运行。

③虚拟机文件必须存储在共享存储器上。

  • 配置FT(前提一定要为集群开启HA)

点击主机右键--FT--打开FT

由于开启FT对服务器的要求高所以开启失败

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/408574.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用C++和SFML库创建2D游戏

FML(Simple and Fast Multimedia Library)是一个跨平台的C库,用于开发2D游戏和多媒体应用程序。它提供了许多功能,包括图形、声音、网络、窗口管理和事件处理等。 ———————————————不怎么完美的分割线——————…

Spring Boot 手写starter!!!

原因:为什么要手写starter??? 原因:简化功能。 实例:以分页为例:写一个starter。 1.首先定义一个PageX注解。 Target({ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented p…

利用Dynamo为家具族三维截图并导入到明细表

前几天我在朋友圈发了一个小视频,是利用Dynamo为家具族截图,并将截图添加到族参数,以便于在图纸中显示族的样子。效果如下: 此处为语雀视频卡片,点击链接查看: 利用Dynamo为家具族三维截图并导入到明细表 …

TF-IDF,textRank,LSI_LDA 关键词提取

目录 任务 代码 keywordExtract.py TF_IDF.py LSI_LDA.py 结果 任务 用这三种方法提取关键词,代码目录如下, keywordExtract.py 为运行主程序 corpus.txt 为现有数据文档 其他文件,停用词,方法文件 corpus.txt 可以自己…

【统计分析数学模型】聚类分析: 系统聚类法

【统计分析数学模型】聚类分析: 系统聚类法 一、聚类分析1. 基本原理2. 距离的度量(1)变量的测量尺度(2)距离(3)R语言计算距离 三、聚类方法1. 系统聚类法2. K均值法 三、示例1. Q型聚类&#x…

udp服务器【Linux网络编程】

目录 一、UDP服务器 1、创建套接字 2、绑定套接字 3、运行 1)读取数据 2)发送数据 二、UDP客户端 创建套接字: 客户端不用手动bind 收发数据 处理消息和网络通信解耦 三、应用场景 1、服务端执行命令 2、Windows上的客户端 3…

GEE必须会教程—曾“几何”时(Geometry类型)

几何图形组成了世界万物,在数学史具有重要地位,将几何图形迁移到地理空间信息的处理上,我们我们得到就是研究区域的边界范围,因此,在学习矢量数据和栅格数据之前,我们有必要了解几何图形在GEE上的编辑。 1…

git最全总结

文章目录 Git 分布式版本控制工具内容1. 前言1.1 什么是Git1.2 使用Git能做什么 2. Git概述2.1 Git简介2.2 Git下载与安装 3. Git代码托管服务3.1 常用的Git代码托管服务3.2 码云代码托管服务3.2.1 注册码云账号3.2.2 登录码云3.2.3 创建远程仓库3.2.4 邀请其他用户成为仓库成员…

pikachu靶场-RCE

介绍: RCE(remote command/code execute)概述 RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。 远程系统命令执行 一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命…

Spring篇----第六篇

系列文章目录 文章目录 系列文章目录前言一、spring 支持集中 bean scope?二、spring bean 容器的生命周期是什么样的?三、什么是 spring 的内部 bean?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男…

基于springboot+vue的服装生产管理系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

2024022502-数据库绪论

数据库绪论 数据管理的三个阶段 人工管理阶段 文件系统阶段 数据库系统阶段 基本术语 数据(Data) 计算机用来描述事物的记录(文字.图形.图像.声音)数据的形式本身并不能完全表达其内容&am…

新付费进群源码-带分销分站源码程序(附搭建源码+安装建设教程)

付费进群源码是由程序员创建的计算机程序的基本组成部分,通常以函数、描述、定义、调用、方法和其他操作语句的形式编写。它被设计为人类可读的,并以开发人员和其他用户可以理解的方式格式化。 付费进群源码系统要求 硬件要求: 需要一台运行稳…

CSRF靶场实战

DVWA靶场链接&#xff1a;https://pan.baidu.com/s/1eUlPyB-gjiZwI0wsNW_Vkw?pwd0b52 提取码&#xff1a;0b52 DVWA Low 级别打开靶场&#xff0c;修改密码 复制上面的 url&#xff0c;写个简单的 html 文件 <html <body> <a hrefhttp://127.0.0.1/DVWA/vulne…

OSCP靶场--Slort

OSCP靶场–Slort 考点(1.php 远程文件包含 2.定时任务提权) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap 192.168.178.53 -sV -sC -p- --min-rate 5000 Starting Nmap 7.92 ( https://nmap.org ) at 2024-02-24 04:37 EST Nmap scan report for 192.168.178.53 …

Open CASCADE学习|几何数据结构

在几何引擎内一般把数据分成两类&#xff1a;几何信息与拓扑信息。二者可以完整地表达出实体模型&#xff0c;彼此相互独立、又互相关联。几何信息是指构成几何实体的各几何元素在欧式空间中的位置、大小、尺寸和形状信息。例如一条空间的直线&#xff0c;可以用两端点的位置矢…

【Java程序设计】【C00262】基于Springboot的会员制医疗预约服务管理系统(有论文)

基于Springboot的会员制医疗预约服务管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的会员制医疗预约服务管理信息系统&#xff0c;本系统分为三种角色&#xff1a;管理员、医生和会员&#xff1b; 在系统…

在Linux操作系统的ECS实例上安装Hive

目录 1. 完成hadoop安装配置2. 安装配置MySql安装配置 3. 安装Hive4. 配置元数据到MySQL5. hiveserver2服务配置文件测试 1. 完成hadoop安装配置 在Linux操作系统的ECS实例上安装hadoop 以上已安装并配置完jdk、hadoop也搭建了伪分布集群 2. 安装配置MySql 安装 下下一步…

c++之ini配置文件的详细解析

文章目录 ini文件概要代码实例分析小结 ini文件概要 ini文件是一种系统配置文件&#xff0c;它有特定的格式组成。通常做法&#xff0c;我们读取ini文件并按照ini格式进行解析即可。在c语言中&#xff0c;提供了模板类的功能&#xff0c;所以我们可以提供一个更通用的模板类来解…

【机器学习基础】一元线性回归(适合初学者的保姆级文章)

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;后面的内容会越来越有意思~ &#x1f4a1;往期推荐&#xff1a; 【机器学习基础】机器学习入门&#xff08;1&#xff09; 【机器学习基…