VMware vSphere 高可用性详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VMware vSphere 高可用性详解相关的知识,希望对你有一定的参考价值。
今天主要跟大家介绍的是集群的一些功能和配置,相比5.0的设置,没有太大的变化。VMware vSphere为虚拟机提供虚拟化的基础架构,将现有的物理资源转化成虚拟资源,将物理资源分成若干资源,为每个虚拟机提供包括CPU、内存等虚拟资源。要想很好地分配这些资源,就必须要使用资源池。资源池是灵活管理资源的逻辑抽象。资源池可以分组为层次结构,用于对可用的 CPU 和内存资源按层次结构进行分区。群集中的资源池比单个ESXi主机上的还要重要,因为在群集中创建资源之后,整个资源池管理的就是所有的ESXi主机资源了。所管理的资源是所有ESXi主机上的CPU和内存的资源总和。高可用性和双机热备是VMware vSphere 5.5最重要的一部分,高可用并不是vSphere独有的,企业使用高可用就是为了服务的连续性和数据的安全性,HA是以一群ESXi服务器为主的群集功能,主要是目的是当虚拟机运行的主机发生故障时能及时转移主机,避免长时间的停机。而FT双机热备则是保证虚拟机最长时间不停机,将虚拟机以双机热备的方式同时在两台主机运行,大大增强了业务的可连续性。
实验步骤大致分为:
一、 建立群集
二、 设置HA高可用性
三、 测试HA高可用性
四、 设置DRS
五、 建立FT双机热备
无论是计划停机时间还是非计划停机时间,都会带来相当大的成本。但是,用于确保更高级别可用性的传统解决方案都需要较大开销,并且难以实施和管理。VMware 软件可为重要应用程序提供更高级别的可用性,并且操作更简单,成本更低。使用 vSphere,组织可以轻松提高为所有应用程序提供的基准级别,并且以更低成本和更简单的操作来实现更高级别的可用性。使用vSphere,可以独立于硬件、操作系统和应用程序提供更高可用性,减少常见维护操作的计划停机时间,在出现故障时提供自动恢复。vSphere 可以减少计划的停机时间,防止出现非计划停机,并迅速从断电中恢复。
一、 建立群集
多台电脑组成的集合就称为集群,集群的目的就是将计算机的负担分配到多台主机上,或是当运行某一个服务的物理服务器弹出问题时,让另一台服务器接手这些服务。在VMware vSphere中,将多台ESX物理服务器组成一个集群,在这个集群中某台服务器出现故障时,这台服务器上运行的虚拟机可用自动迁移到其他可用的ESX服务器上,从而保障业务的不间断运行。
集群就是把所有的ESX/ESXi组织起来,形成一个大的资源池,所有的虚拟机可在池中的任意主机上自由移动,并且Cluster可做到快速扩容和HA故障冗余;所以Cluster是服务器虚拟化通往数据中心的必备功能。
vSphere集群包括DRS集群、HA集群和DPM集群。
DRS:分布式资源调度,用于动态调整Cluster中ESX主机负载,自动把负载较重的主机上的虚拟机通过VMotion迁移到负载较轻的主机上,最终达到整个Cluster中的主机资源消耗平衡。
HA:高可用性,用于意外故障切换,当监控到Cluster中有主机意外故障时,会自动在其他主机上启动故障主机上之前承载的虚拟机。
DPM:分布式电源管理,用于在负载较轻时,把虚拟机动态“集中”到Cluster中的少部分主机上,然后把其他ESX/ESXi主机待机,以节省电力消耗,等负载较大时,再重新唤醒之前待机的主机。
下面就来建立群集
1、在vSphere Client 中,右击数据中心或文件夹,然后在弹出的快捷菜单中选择“新建群集”
2、在名称文本框中为群集命名。该名称显示在vSphere Client 清单面板中。
3、如果适用,启用增强型vMotion兼容性 (EVC),并选择它应以何种模式运行。在这里可以看到EVC所支持的AMD和Inter的CPU类型。不过要注意的是,即便使用EVC,也不能将Intel服务器上的虚机迁移到AMD主机上。所以EVC只有三个选项:禁用、Intel或者AMD
4、选择虚拟机的交换文件位置。可以将交换文件与虚拟机本身存储在同一目录中,或者将交换文件存储在主机指定的数据存储中(主机-本地交换)。单击“下一步”
5、单击“完成”按钮以完成群集的创建,新群集不包括任何主机或虚拟机。
6、完成建立群集后,该名称显示在vSphere Client 清单面板中。
7、添加ESXi主机,可以从清单或列表视图中选择主机或者将主机拖至目标群集对象。
8、将所有的主机都拖至目标群集对象。
二、 设置HA高可用性
vSphere HA 利用配置为群集的多台 ESXi 主机,为虚拟机中运行的应用程序提供快速中断恢复和具有成本效益的高可用性。vSphere HA通过在群集内的其他主机上重新启动虚拟机,防止服务器故障。持续监控虚拟机并在检测到故障时对其进行重新设置,防止应用程序故障。与其他群集解决方案不同,vSphere HA 提供基础架构并使用该基础架构保护所有工作负载。无需在应用程序或虚拟机内安装特殊软件。所有工作负载均受 vSphere HA 保护。配置 vSphere HA 之后,不需要执行操作即可保护新虚拟机。它们会自动受到保护。
vSphere HA 可以将虚拟机及其所驻留的主机集中在群集内,从而为虚拟机提供高可用性。群集中的主机均会受到监控,如果发生故障,故障主机上的虚拟机将在备用主机上重新启动。创建 vSphere HA 群集时,会自动选择一台主机作为首选主机。首选主机可与 vCenter Server 进行通信,并监控所有受保护的虚拟机以及从属主机的状态。可能会发生不同类型的主机故障,首选主机必须检测并相应地处理故障。首选主机必须可以区分故障主机与处于网络分区中或已与网络隔离的主机。首选主机使用网络和数据存储检测信号来确定故障的类型。
在设置HA之前,要确保每台ESXi主机都有管理网络冗余,并且vSphere HA检测信号数据存储数目为1,少数要求数目为2。如果不满足其要求,则会在配置HA的过程中提示配置问题,如图:
要确保管理网络冗余,也可以使用多个管理网络,管理网络冗余如图:
确认所有虚拟机及其配置文件都驻留在共享存储器上。确认主机配置为具有该共享存储器的访问权限,以便可以使用群集中的不同主机打开虚拟机电源。当设置好管理网络和存储后。
下面我们就开建立HA群集配置
1、右键单击群集,然后单击编辑设置。
2、在群集的“设置”对话框中,您可以修改群集的 vSphere HA(和其他)设置。在“群集功能”页上,选择打开 vSphere HA。
3、根据需要为群集配置 vSphere HA 设置主机监控状态、接入控制、虚拟机选项、虚拟机监控和数据存储检测信号等功能。
4、默认虚拟机设置控制虚拟机的重新启动顺序(虚拟机重新启动优先级)以及在主机之间失去网络连接时 vSphere HA 的响应方式(主机隔离响应)。这些设置适用于主机发生故障或主机隔离时群集内的所有虚拟机。此外,也可以为特定虚拟机配置异常。
5、如果在设置的时间内没有收到单个虚拟机的 VMware Tools 检测信号,虚拟机监控将重新启动该虚拟机。同样,如果没有收到虚拟机正在运行的应用程序的检测信号,应用程序监控也可以重新启动该虚拟机。可以启用虚拟机监控功能,并配置 vSphere HA 监控无响应时的敏感度。
在默认群集设置里可以配置监控敏感度的级别。高敏感度监控可以更快得出已发生故障的结论。然而,如果受监控的虚拟机或应用程序实际上仍在运行,但由于资源限制等因素导致未收到检测信号,高敏感度监控可能会错误地认为此虚拟机发生了故障。低敏感度监控会延长实际故障和虚拟机重置之间服务中断的时间。检测到故障后,vSphere HA 会重置虚拟机。重置可确保这些服务仍然可用。为了避免因非瞬态错误而反复重置虚拟机,默认情况下,在某个可配置的时间间隔内将对虚拟机仅重置三次。在对虚拟机执行过三次重置后,指定的时间结束之前,vSphere HA 不会在后续故障出现后进一步尝试重置虚拟机。可以使用每个虚拟机的最大重置次数自定义设置来配置重置次数。
监控灵敏度高时,故障时间间隔30(秒),重置期为1 小时。监控灵敏度中时,故障时间间隔60(秒),重置期为24小时。监控灵敏度低时,故障时间间隔120(秒),重置期为7天,在默认群集设置中,左右调整按钮来控制监控灵敏度
6、当 vSphere HA 群集中的首选主机无法通过管理网络与从属主机通信时,首选主机将使用数据存储检测信号来确定从属主机是否出现故障,是否位于网络分区中,或者是否与网络隔离。vCenter Server 为每个主机选择的检测信号数据存储的数量。
7、正在配置每台ESXi的HA功能。
8、 配置完成后,ESXi主机会在群集中。
三、测试HA高可用性
当设置 vSphere HA 群集之后,群集内的所有虚拟机无需额外配置即可获得故障切换支持。减少了硬件成本和设置虚拟机可充当应用程序的移动容器,可在主机之间移动。管理员会避免在多台计算机上进行重复配置。使用 vSphere HA 时,必须拥有足够的资源来对要通过 vSphere HA 保护的主机数进行故障切换。但是,vCenter Server 系统会自动管理资源并配置群集。提高了应用程序的可用性虚拟机内运行的任何应用程序的可用性变得更高。虚拟机可以从硬件故障中恢复,提高了在引导周期内启动的所有应用程序的可用性,而且没有额外的计算需求,即使该应用程序本身不是群集应用程序也一样。通过监控和响应 VMware Tools 检测信号并重新启动未响应的虚拟机,可防止客户机操作系统崩溃。
1、首先我们看到,新建虚拟机1和新建虚拟机2都运行在ESXi02上,现在我们就模仿事故的发生,将ESXI02进行强行关闭。
2、当我们的vSphere HA 检测到esxi02出现故障时候,HA功能自动激活,所有在esxi02上的虚拟机会在esxi01上启动。
3、当虚拟机成功切换到esxi上时,此时候,HA失效,因为群集中只有1台ESXi主机是正常运行的,所以在今后的正式环境中,要配置HA功能,群集中的主机不得少于3台。这样能确保虚拟机的安全运行。
四、 设置DRS
DRS 群集是一组具有共享资源和共享管理接口的ESXi主机及关联虚拟机。必须创建 DRS 群集,才能从群集级别资源管理中获益。DRS是跨聚合到逻辑资源池中的硬件资源集合来动态地分配和平衡计算容量的。VMware DRS 是跨资源池不间断地监控利用率,并根据反映业务需要和不断变化的优先级的预定义规则,在多台虚拟机之间智能地分配可用资源的。当虚拟机负载增大时,VMWare DRS 会通过在资源池中的物理服务器之间重新分发虚拟机来自动分配额外的资源。
DRS可以使资源优先用于最重要的应用程序,以便让资源与业务目标协调,自动、不间断地优化硬件利用率,以响应不断变化的情况,并且为业务部门提供专用的(虚拟)基础结构,同时让IT 部门能够集中。全面地控制硬件,能执行零停机服务器维护等。在自动模式下,DRS 将确定在不同的物理服务器之间分发虚拟机的最佳方式,并自动将虚拟机迁移到最合适的物理服务器上。在手动模式下,Vmware DRS 将提供一个把虚拟机放到最佳位置的建议,并将该建议提供给系统管理员,由其决定是否进行更改。
VMware DRS允许用户自已定义规则和方案来决定虚拟机共享资源的方式以及它们之间优先权的判断根据。当一台虚拟机的工作负载增加时,VMware DRS会根据先前定义好的分配规则对虚拟机的优先权进行评估。如果该虚拟机通过了评估,那么DRS就为它分配额外的资源,当主机资源不足的时候,DRS就会寻找集群中有多余可用资源的主机,并将这个虚机vMotion到上面,以调用更多的资源进行其重负载业务。
DRS分配资源的方式有两种:将虚拟机迁移到另外一台具有更多合适资源的服务器上,或者将该服务器上其他的虚拟机迁移出去,从而为该虚拟机腾出更多的“空间”。
其实VMware DRS主要是负载平衡群集中的ESXi服务器。VMware DRS将持续监控群集内所有主机,监控虚拟机的 CPU、内存资源的分布情况和使用情况。在给出群集内资源池和虚拟机的属性、当前需求以及不平衡目标的情况下,DRS 会将这些衡量指标与理想状态下的资源利用率进行比较。然后,它会相应地执行虚拟机迁移。
其次是电源管理vSphere Distributed Power Management (DPM) 功能启用后,DRS 会将群集级别和主机级别容量与群集的虚拟机需求(包括近期历史需求)进行比较。如果找到足够的额外容量,DPM会将主机置于(或建议置于)待机电源模式;或者如果需要容量,则建议打开主机电源,根据提出的主机电源状况建议,可能需要将虚拟机迁移到另外一台具有更多合适资源的服务器上,或者将该服务器上其他的虚拟机迁移出去。
1、在VMware Client中选择群集,右键选择编辑设置,打开cluster设置窗口,单击打开vSphere DRS 框来启用 DRS 功能。这样,DRS就打开了,之后我们要使用DRS来管理群集资源。
2、择 DRS 的默认的自动化级别,当这个群集的DRS自动化参数配置成手动,且每一次群集中的ESXi主机上的虚拟机激活时,系统就会提示你要在哪一台可用的ESXi上激活这台虚拟机,在激活时,系统会给出可用的主机,并且以优先顺序推荐的等级来排序。最适合的ESXi主机会在最前面。选择半自动DRS时,系统会自动选择虚拟机最佳时机,不会让用户来选择主机,但是在真正进行转移动作之前,还是会要求用户键入回车。选择全自动的DRS时,会在虚拟机激活时自身找到最佳的ESXi主机并且根据配置值激活vMotion来转移主机。全自动的DRS配置有5个:保守、相对保守、中等、相对激进、激进。
3、通过使用此主机 DRS 组,可以创建虚拟机与主机间的关联性规则,从而与适当的虚拟机 DRS 组建立关联性(或反关联性)关系。在“主机 DRS 组”部分中,单击添加。
4、以使用规则。控制群集内主机上的虚拟机的放置位置。可以创建两种类型的规则。一种是用于指定虚拟机组和主机组之间的关联性或反关联性。关联性规则规定,所选虚拟机 DRS 组的成员可以或必须在特定的主机 DRS 组成员上运行。反关联性规则规定,所选虚拟机 DRS 组的成员不能在特定的主机DRS 组成员上运行。另一种是用于指定各个虚拟机之间的关联性或反关联性。指定关联性的规则会使 DRS 尝试将指定的虚拟机一起保留在同一台主机上(例如,出于性能考虑)。
5、在虚拟机选项里,可以正对某些虚拟机做自动化级别的个性设置。
6、通过vSphere Distributed Power Management (DPM) 功能,DRS 群集可以根据群集资源利用率来打开和关闭主机电源,从而减少其功耗。vSphere DPM 监控内存和 CPU 资源的群集中所有虚拟机的累积需求,并将其与群集中所有主机的总可用资源量进行比较。如果找到足够的额外容量,则vSphere DPM 会将一台或多台主机置于待机模式,并将其虚拟机迁移到其他主机,然后关闭其电源。相反,当认为容量不够时,DRS 会使这些主机退出待机模式(将它们打开电源),并使用vMotion将虚拟机迁移到这些主机上。当进行这些计算时,vSphere DPM 不仅考虑当前需求,而且还会考虑用户指定的所有虚拟机资源预留。
7、也可以单独为群集中的单个主机设置电源管理选项
8、此时可以再群集的摘要中可以看到vSphere DRS的详细情况。
五、 建立FT双机热备
vSphere HA 通过在主机出现故障时重新启动虚拟机来为虚拟机提供基本级别的保护。vSphere Fault Tolerance可提供更高级别的可用性,允许用户对任何虚拟机进行保护以防止主机发生故障时丢失数据、事务或连接。Fault Tolerance 通过确保主虚拟机和辅助虚拟机的状态在虚拟机的指令执行的任何时间点均相同来提供连续可用性。使用 ESXi 主机平台上的 VMware vLockstep 技术来完成此过程。vLockstep 通过使主虚拟机和辅助虚拟机执行相同顺序的 x86 指令来完成此过程。主虚拟机捕获所有输入和事件(从处理器到虚拟 I/O 设备),并在辅助虚拟机上进行重放。辅助虚拟机执行与主虚拟机相同的指令序列,而仅单个虚拟机映像(主虚拟机)执行工作负载。如果运行主虚拟机的主机或运行辅助虚拟机的主机发生故障,则会发生即时且透明的故障切换。正常运行的ESXi 主机将无缝变成主虚拟机的主机,而不会断开网络连接或中断正在处理的事务。使用透明故障切换,不会有数据损失,并且可以维护网络连接。 在进行透明故障切换之后,将重新生成新的辅助虚拟机,并将重新建立冗余。整个过程是透明且全自动的,并且即使 vCenter Server 不可用,也会发生。
其实在日常的虚拟化使用中,很少用到FT功能,一是对资源浪费比较严重,二是单个虚拟CPU无法满足业务的需求,三是只有很少有一些应用要求低配置,却要求高可用的要求。
1、在建立FT双机热备之前,要确保虚拟机的虚拟CPU是1颗1核心。
2、其次是要建立FT功能的主机必须有VMlernel网络用于FT。
3、在群集设置中,满足FT的群集要求,创建并启用vSphere HA 群集,在群集设置中勾选“打开vSphere HA”
4、检查ESXi主机的CPU是否支持FT指令,如果不支持,会在打开FT时报错,如图所示。
5、右击一个虚拟机并在弹出的快捷菜单中选择 Fault Tolerance > 打开 Fault Tolerance。
6、开启FT需要使用精简置备的磁盘,所以在开启FT前,vCenter会自动转换虚拟机磁盘。
7、转换之后,特定的虚拟机将指定为主虚拟机,并在另一台主机上次要辅助虚拟机。现在,主虚拟机已启用了容错功能。虚拟机运行在esxi01上,FT保护副本运行在esxi02上
以上是关于VMware vSphere 高可用性详解的主要内容,如果未能解决你的问题,请参考以下文章
vmware vcenter server heartbeat终止更新 管理员怎么破