第二部分 vSphere DRS(分布式资源调度)
第八章 DPM计算推荐
DPM尝试在一个指定的目标资源利用范围内,保持群集中每一台ESXi主机的利用率,以提供资源可用和电力节省的最佳组合。如果群集内ESXi主机的利用率低于指定的目标资源利用范围,如果认为有必要,DPM将评估并提供关闭主机电源建议;如果DPM资源利用率高于目标资源利用范围,DPM将评估后提供加电建议。
计算资源利用率
DPM评估每个ESXi主机,并计算ESXi主机上CPU和内存的资源利用率是否在指定的目标利用范围内。DPM计算目标利用率范围如下:
目标资源利用范围=需求容量–目标比例±需求容量主机容忍度
资源利用率:DPM基于虚拟机的需求和ESXi主机可用容量计算资源利用率,主机的可用容量减去虚拟化层运行所需的资源后剩余的资源。DPM计算资源需求依照历史时期每个虚拟机的活动加上两个标准差之和,DPM使用不同历史时期的加电建议和断电建议比例,我们将在后面的章节扩展历史时期。
类似DRS,计算需求是在资源争用期间结合的主动使用加上未满足需求,通过在一段较长的时间内使用的历史数据,而不是使用简单的当前活动虚拟机的需求,DPM确保评估虚拟机的需求是代表虚拟机的正常作业行为。使用时间较短可能导致不必要的电源状态改变建议,这不仅影响节电效率,还影响DRS,因为它需要不断改变虚拟机所在的主机环境来平衡资源。
DemandCapacityRatioTarget是ESXI主机目标利用率,默认设置为63%。
主机容忍需求容量比指定了每个主机的目标利用率容忍值,默认是18%
这意味着DPM尝试保持ESXi主机资源利用率在63%最佳,再加上或者减去18%,这样结果在45%和81%之间的范围,63%是基于内部测试和客户反馈的最佳点。如果ESXi主机的每个资源的资源利用率在45%以下,DPM评估断电操作。如果CPU或内存资源利用率超过81%,DPM评估待机状态的ESXi主机加电。
高级选项
在DRS的高级选项中,用户可以指定不同的DemandCapacityRatioTarget 和DemandCapacityRatioToleranceHost的值
DemandCapacityRatioTarget设置在40%到90%之间,DemandCapacityRatioToleranceHost设置在10%和40%。
提示
推荐使用默认的值,除非你深入理解了其影响,才建议去修改该值
高级选项界面,可以发现DRS群集设置,右键单击群集并选择编辑设置。选择DRS和点击右下角的高级选项。
图90:电源操作与主机利用率级别
在供给和需求之间找到一个恰到的平衡是相当困难的,如低估了资源需求可能会导致性能较低,而高估资源的需求可能会导致达不到最佳的功率节省。
历史时期的权益
正如之前所提到的,DPM确定虚拟机在一个历史时期的平均需求来计算需求,DPM使用两个时期的权益来计算平均需求。
DPM使用较短的时间来评估上电建议,允许自己响应快速增加的需求。
上电建议:评估虚拟机的加电操作需要300秒(5分钟)
用于评估和关闭电源的操作,需要较长的时期来确定DPM对于一个减少工作负载的需求响应越来越慢。
关闭电源建议:DPM将使用一个较长的时期来评估关闭电源操作的资源需求,DPM评估过去2400秒(40分钟)内虚拟机工作负载。
DPM必须绝对确保它不会负面的影响虚拟机的性能。为工作负载提供足够的资源,认为通过DPM比快速减少工作量更重要,所以通过DPM性能的优先级高于关闭电源,当审查电源规则和电源操作建议,这将变得可见,电源关闭建议仅适用于以下指定的目标使用范围和没有加电的活动建议。
评估上电和断电建议
如果资源利用率评价表示高或低的资源利用率,DPM产生电源状态建议,以减少目前的资源利用率和目标资源利用率范围之间的距离,换句话说,优化和整理工作负载需求和电力需求。
DRS和DPM评估每个ESXi主机的电源状态建议。为了优化评估和选择过程,主机放置一个特定的顺序进行评估。如果他们可以违反任何的DRS约束,如关联规则或者任何资源预留。
断电建议
在选择ESXi主机断电操作之前,主机选择断电建议,DPM检验群集内活动的主机,评估断电的过程中把它们按照特定的顺序进行分类,如果群集内主机既有DPM自动模式也有DPM手动模式,它们将被分开放到不同的组,在主机的手动模式组被考虑之前,先考虑主机的自动模式组。
如果群集包含均匀大小的主机,DPM考虑主机按照低虚拟机撤离成本;主机内自动模式的少量的小的虚拟机,同组的高负载主机上有较小的虚拟机。
如果群集包含异构大小的主机,DPM考虑为了关键资源的主机,当产生断电建议时,容量较小的主机被垂青的机会大于容量大的主机
主机断电建议
DPM将评估的候选主机和群集内模式使用DRS的候选主机将被断电
DPM使用这些模式,以确定断电操作的影响,DPM检查轻负载的主机的减少的积极收益,
和减少当前利用率和目标资源利用率之间的差距,同时在剩余主机上增加使用率最小化。
为了在目标资源利用范围内来衡量总资源利用率,DPM为CPU和内存资源计算一个值,称之为cpuLowScore和memLowScore值。为了在目标资源利用范围外衡量总资源利用率,DPM通过计算资源的HighScores值,称之为cpuHighScore和memHighScore值。
每个资源所使用的公式是类似的,计算高于或低于目标利用率的加权距离,例如,memLowScore的计算如下:
memlowScore = 所有低于目标利用率主机的总数(目标利用率–主机利用率)
DPM比较群集内所有候选主机的活动负载LowScore值和模式的LowScore值,如果主机内存过量使用时,DPM确定内存是关键资源,将生成内存的建议的优先级超过CPU,如果模式提供改善LowScore,并HighScore值不增加,DPM生成断电建议,这断电建议也包含在这台主机上运行的虚拟机的迁移建议。
拒绝主机断电建议
如果主机违反了最小的供电能力,通过设置MinPoweredOnCpuCapacity 和MinPoweredOnMemCapacity值,DPM不会将主机断电。
表23:高级选项
缺省情况下,设置一个值分别为1MHz和1MB,确保至少一台主机开启电源,如果这些设置被改变,它可能发生DPM和DRS不请求所有的加电的物理资源,来保证虚拟机运行在一个适当的水平。ESXi主机可能会被闲置,导致电源利用率较低。
保持CPU的供电容量可能与CPU特性需求不匹配,如果异构CPU的群集中使用此设置,启用EVC来保证可用的CPU资源兼容所有的虚拟机。
基本设计原则
当群集内调整MinPoweredOnCapacity设置异构CPU和内存设置的时候,请启用EVC。
DPM能基于DRS约束和目标,而不选择特定的候选主机是另外一个原因,例如:如果虚拟机需要迁移并只能移动到主机,主机就有大量的利用,那么主机可以拒绝关闭电源,当群集内多个DRS关联(非关联)规则处于活动状态,这种情况就可能发生。
第三个因素是,DPM能基于负面或者不存在效益,通过运行断电成本/效益分析,不选择候选主机断电,DPM会继续运行模拟,只要群集包含的ESXi主机在目标利用率范围之内。
DPM断电成本/效益分析
在DPM产生断电建议之前,它计算断电主机的成本,考虑的成本如下:
迁移虚拟机时候选主机关闭
电源关闭期间的电力消耗
电源关闭期间的候选主机的不可用资源
如果候选主机资源需要满足工作负载需求,而候选主机被电源关闭的性能损失
上电期间的候选主机的不可用资源
上电期间的电力消耗
迁移虚拟机到候选主机的成本
DPM运行断电的成本/效益分析,比较主机断电操作的成本和风险,如果效益达到或超过对性能的影响,通过设置PowerPerformanceRaito 值,DPM将只接收主机的电源管理建议,
默认的PowerPerformanceRatio的值使40,但是可以在0和500之间修改,用户指定在DRS的高级选项界面设置PowerPerformanceRatio。
和往常一样,除非你了解修改他们的真实影响,通常不建议改变这些设置。成本和收益的计算,包括CPU和内存资源。
关闭电源的成本效益分析计算
断电效益分析计算StableOffTime的值,这表明候选主机预计的关闭电源的时间总量,直到群集需要资源,因为预计会增加虚拟机的工作量。
固定的断电时间 = 群集固定的时间 - (主机评估时间+主机断电时间)
虚拟机工作负载很固定,没有上电操作的需求的时间称之为群集固定时间(ClusterStableTime),DPM将使用虚拟机固定时间,通过DRS成本收益风险分析计算,如输入群集固定时间计算。
从应用断电建议到断电状态所花费的时间,分析把这段时间分成两个部分,计算主机关闭其上虚拟机迁移时间(HostEvacuationTime)和主机断电的时间(HostPowerOffTime)的总和。
断电的成本计算以下预估资源成本总和
从候选主机迁移活动虚拟机到其它主机上
在群集固定时间结束,候选主机上电期间不满足虚拟机的资源需求
迁移虚拟机返回候选主机
最后两个要点只能通过DPM估计,在群集固定时间结束后DPM计算所需主机的数量。这种计算,在一定的程度上,最坏的情况下,DPM预计所有的虚拟机在群集固定时间结算后产生沉重的负载,从而生成一个保守值。
正如前面所提到的,DPM只会推荐一个断电操作,如果在资源利用效率上有一个显著的增益,可能是由于群集固定时间太低,这可能会导致一个固定断电时间等于或者小于零,在这种情况下,DPM将停止评估候选主机的断电操作建议,因为它不会提供任何好处。
上电建议
主机选择上电建议
类似于断电建议,在ESXi主机在手动模式或者上电建议之前,ESXi主机在自动模式下先被评估,群集包含异构主机,有较大容量ESXi主机在关键资源上会被使用
如果排序过程中发现主机遵从容量或者评估成本,DPM将使顺序主机随机化,做一个穿透效果,请注意,排序的主机上电和断电的建议,并不确定实际的上电或者断电主机选择顺序。
主机上电建议
如果资源利用率评估表面主机在群集中利用率很高,DPM考虑生成主机上电建议。
在选择ESXi主机上电之前,DPM检查群集内的待机模式主机,为DPM电源评估过程进行特定的排序。
DPM继续评估每一个维护模式主机,调用DRS来运行模拟,模拟分配当前虚拟机穿过所有的主机,无论他们是活动还是待机,通过使用HighScore计算,DPM决定当前使用率下上电操作的影响,如果必要决定,对比目标利用率和资源利用率的距离,或者从高利用率主机上有多少可以降低,需要它决定每次上电操作有多少才能改善。DPM对比群集当前状态(待机仍然关闭)HighScore值和模拟的HighScore值,当待机主机上电,如果模拟提供的值高于HighScore值,DPM将为特定的主机生成上电建议。
另外,如果一些操作将导致选择主机容量离需要的容量较远,DPM不会严格坚持的主机的顺序,如果小容量的主机能充分满足需求,一些时候主机将不会被选择,如果DPM预计候选不能模拟还原。
例如,如果因为兼容性不可能迁移特定的虚拟机去候选主机,模拟还原就不能达到。
DPM继续运行模拟只要群集内的主机超过目标利用率的范围,DPM在同构的群集中非常有效,DPM将跳过相同资源的主机或者兼容性的迁移那些在模拟期间已经拒绝上电操作的主机。
基本设计原则
使用同构群集,DPM会运作非常有效率。
高级设置对主机加电建议的影响
高级选项能设置指定最小数量的CPU和内存的容量的主机仍被保持上电,而不管DPM建议。
如果用户设置在高级选项中设置客户值,MinPoweredOnCpuCapacity 和MinPoweredOnMemCapacity,DPM必须调整上电操作建议来实现需求定义这些设置。
与断电建议相反,在不包括上电建议的上电主机上重新分配虚拟机,为了满足需求,DPM依靠DRS调用。
建议类别
DPM门槛
DPM门槛浮动工资类似于DRS浮动。像DRS,门槛选项范围从保守到激进,DPM建议优先级别能被对比DRS优先级别。
DPM激进级别同激进级别DRS进行通信,产生的DPM建议提高到5,类似的,DPM保守级别同激进级别的DRS通信,选择保守级别门槛引起DPM去产生优先级1建议。接下来警告会被显示在浮动门槛下,当保守的DPM级别被选择。
警告
“应用优先级1的建议.vCenter将应用上电建议产生与HA的需求或者指定用户的容量需求,DPM将只自动接收上电建议。
在这个场景中,DPM将不会生成断电建议,这样做的意思是自动DPM电源节省模式禁用,用户可能手工将服务器置于待机模式,但是当群集满足HA或者客户容量需求或者约束失败DPM不会上电ESXi主机。
主级别
断电和上电建议从优先级1到优先级5范围内都被标记了优先级
优先级等级是基于群集的资源利用率和从建议改善主机电源状态,它可能有提示不同的范围被接受上电建议比断电建议:断电建议从优先级2到优先级5,同时上电建议从优先级到优先级3.
表24:电源状态推荐优先级别范围
断电建议
高级别的优先级建议会导致更多的电源节省,如果建议被接受。高优先级2的断电会导致最大的减少余量,当应用级别5的断电建议将导致适度减少余量,优先级1建议不生成断电建议,同时为工作负载需求提供足够的资源被DPM认为比快速响应较少工作量重要。
上电建议
当确认VMware高可用需求或者用户设置上电资源,优先级1被生成,上电优先级2比级别3表现得更迫切的建议解决高主机利用率饱和级别。
请注意,生成的迁移建议不是强制性的,如果DRS设置了保守的迁移门槛,忽略这些迁移建议,将有效的禁用DPM。
基本设计原则
如果DPM请求,否则不要设置DRS为保守的迁移门槛