一、首先应该启用主机接入控制,否则后面的接入控制策略也没什么意义。
二、关于几种种接入控制策略:
1. 主机容忍的宿主机故障数目。假设数目设置为1,那么集群发生超过这个数目的主机故障,那么虚拟机就不会再发生HA切换。假设集群内所有宿主机的规格很标准,一种或者是两种,那么可以通过对所有虚拟机所需资源的总和以及现有宿主机资源的总和来算出究竟几个宿主机满负荷的时候可以支持这些虚拟机。剩下的宿主机数目就是我们可以容忍的故障。当然这个算法不是简单的加和,是需要在不同环节取整的。具体可以参照Vmware的插槽计算方法。
2. 预留资源百分比策略。这个策略是说集群会按照设定比率来预留一定的CPU和内存资源来满足HA。超过这个资源的故障也不会切换。当所有虚拟机启动所占资源已经超过(100-设置值),那么集群不允许再有虚拟机来启动占用资源。如果说集群内的宿主机规格五花八门,那就只有这么去估算预留资源比例的方法来执行HA了。
3. 指定主机故障切换。那就是按照指定策略来执行主机HA切换。
三、以上三种策略,严格来讲没有最优或者最好。完全需要按照自己的需求来设定。但是对于第一种策略来讲,设置的数目越多,那么意味着HA的活跃度越高。如果HA的活跃度超越集群的资源限制,那么这种HA会影响到其他正常运行的虚拟机,而且有可能触发故障的泛滥或者连锁影响。所以不建议设置太高。对于第二种策略来讲,如果设置的太高,那么会很影响集群的资源利用率。第三种策略除非是特殊场合使用。
四、光靠以上策略来完成集群的HA功能,想保障自己的业务系统连续性,我认为远远不够。应用系统毕竟有重要及非重要之分,有重量与非重量之分。有的可能已经具备了负载均衡架构,有的可能还是单节点运行。所以我们需要根据这些情况在接下来的“虚拟机选项”当中针对不同的虚拟机设置不同的HA优先级。根据负载均衡的位置,设置同样应用系统的不同应用节点的互斥HA规则等。
总之,这个策略不是单一某个策略就能最适合我们的应用环境。需要根据我们的环境特点以及每一项HA策略的功能去合理组合优化。希望对大家能有帮助。
收起