虚拟机高可用篇

ZStack ZSphere虚拟机高可用行为通过高可用策略进行全局控制。本节介绍高可用策略功能及其使用方法:

概述

高可用策略(HA Policy):虚拟化平台内计算、存储、网络资源发生故障或虚拟机计划性/异常停机时,确保相关业务持续稳定运行的机制。启用后,支持自定义虚拟机高可用策略,确保业务连续性。

高可用策略包括以下核心概念:
  • 虚拟机高可用:用于设置虚拟机计划性/异常关机时是否自动重启。平台高可用策略未启用时,打开开关,虚拟机高可用将在平台高可用策略启用后生效。
    • 若关闭高可用开关:虚拟机关机时均不会自动重启。
    • 若打开高可用开关:
      • 虚拟机计划性关机或由于自身异常关机时会自动重启。
      • 若由于相关计算、存储、网络等资源发生故障,虚拟机将根据自定义的故障迁移策略按需迁移至其他主机HA启动。
  • 虚拟机高可用故障迁移策略:用于设置虚拟机相关计算、存储、网络等资源发生故障时是否迁移虚拟机至其他主机启动。
    故障迁移策略支持检测以下资源状态:
    • 管理网络连接状态:
      • 检测虚拟机所在主机与管理节点之间的网络连接状态。
      • 若管理节点自身故障、或管理网络中断,均会导致管理网络连接状态故障。
    • 存储网络连接状态 :
      • 检测虚拟机访问其系统盘所在数据存储资源的网络连接状态。
      • 若虚拟机系统盘所在数据存储自身故障、或存储网络中断,均会导致虚拟机存储网络连接状态故障。
    • 业务网卡状态 :
      • 若业务虚拟机分布式交换机关联的主机业务网卡/业务网卡直连的交换机网口发生故障,均会导致虚拟机业务网卡故障。
    基于资源状态检测,ZStack ZSphere提供四种典型故障迁移场景,方便您进行配置:
    典型场景 管理网络连接状态 存储网络连接状态 业务网卡状态 故障时是否迁移
    场景一 正常 正常 故障 迁移/不迁移
    场景二 正常 故障 正常 迁移/不迁移
    场景三 正常 故障 故障 迁移/不迁移
    场景四 故障 正常 正常 不迁移

应用场景

以下列出高可用策略典型使用场景,若您存在类似业务场景,可考虑使用高可用策略功能:
  • 主机业务网卡故障场景:
    希望主机业务网卡故障时,所有关联的虚拟机迁移至其他主机,保障业务高可用。
    • 例如:用户部署业务虚拟机承载MySQL数据库服务,要求虚拟机不允许出现业务长时间宕机的情况。可将这台虚拟机高可用开关打开,且设置业务网卡状态故障时触发迁移。在确保平台内主机资源充足情况下,当业务虚拟机所在主机业务网卡故障时,虚拟机将迁至其他主机上启动运行,不影响业务运行。
  • 虚拟机异常停机场景:
    希望虚拟机异常停机时能自动HA启动。
    • 例如:用户部署业务虚拟机运行公司重要业务,为避免诸如主机掉电、虚拟机过载等各类因素导致虚拟机停机、业务无法自动恢复,可将这些虚拟机高可用开关打开。当虚拟机停机时触发高可用机制立刻重新启动,保障业务连续性。

功能原理

ZStack ZSphere高可用策略主要包括以下两种机制:
  • 轮询检测虚拟机运行状态,若虚拟机由于自身异常关机或计划性关机,将检测虚拟机的高可用开关是否打开。若开关打开,将在所在主机或其他主机上重启该虚拟机。
    图 1所示:
    图 1. 虚拟机自身异常关机后高可用启动


  • 轮询检测虚拟机所在主机状态,若主机管理网络连接状态、存储网络连接状态、业务网卡状态任一状态异常,将检测虚拟机故障迁移策略以及虚拟机高可用模式。若对应故障迁移开关已打开,且虚拟机高可用开关已打开,虚拟机将迁至其他主机上启动运行。
    图 2所示:
    图 2. 主机业务网卡故障后虚拟机高可用启动


功能优势

高可用策略具备以下优势:
  • 全面&强大:覆盖所有主流高可用场景,包括各类故障场景以及停机场景。通过高可用机制确保用户关键业务稳定性和连续性。
  • 灵活&可视化:提供直观简单的场景配置表,支持一键配置故障迁移策略,组合全局粒度和虚拟机粒度高可用配置,可极大提高业务高可用配置的灵活度。

高可用策略基础操作

若您希望完整了解ZStack ZSphere平台高可用策略基础功能,您可按照以下顺序进行操作:
  1. 启用高可用策略
  2. 设置故障迁移策略
  3. 设置主机故障判断策略
  4. 设置高可用策略高级设置
  5. 查看高可用日志
  6. 停用高可用策略

启用高可用策略

ZStack ZSphere高可用策略默认处于启用状态。若已被禁用,您可点击菜单 > 业务可靠 > 高可用策略,将高可用策略页面最上方开关打开,即可启用高可用策略。

设置故障迁移策略

启用高可用策略后,您可在迁移策略页面,设置四种典型故障场景下的高可用迁移策略:
典型场景 管理网络连接状态 存储网络连接状态 业务网卡状态 故障时是否迁移 迁移说明
场景一 正常 正常 故障 迁移|不迁移 支持设置为迁移或不迁移。
场景二 正常 故障 正常 迁移|不迁移 支持设置为迁移或不迁移。但在SAN存储环境下,若此处设置为不迁移,存储网络连接状态故障时仍会自动迁移。
场景三 正常 故障 故障 迁移|不迁移 存储连接状态与业务网卡状态同时故障的迁移策略跟随任一状态故障时的迁移策略开启或关闭:
  • 若存储连接状态或业务网卡状态故障场景的迁移策略均为不迁移,则此处为不迁移。
  • 若其中一个故障场景的迁移策略为迁移,则此处为迁移。
场景四 故障 正常 正常 不迁移 管理网络状态故障时,不支持设置故障迁移策略。
Note: 存储网络连接状态仅支持检测共享存储,暂不支持本地存储。

设置主机故障判断策略

启用高可用策略后,您可在迁移策略页面,设置主机故障判断策略:
主机故障检测条目 描述
主机自检间隔 默认为5,单位为秒,设置主机状态自检的间隔。
主机自检最大尝试次数 默认为6,单位为次,用于全局设置在指定的最大次数去自检主机,在最大的尝试测试次数均失败时,会判定主机网络异常。

设置高可用策略高级设置

启用高可用策略后,您可在高级设置页面,设置高可用策略的高级设置,包括虚拟机以及主机两大类高级设置。
类目 名称 描述
虚拟机 高可用尝试启动虚拟机最大时间间隔 默认为300,单位为秒,如果异常停止,用于执行 GC (垃圾回收)任务重试启动的最大时间间隔。
高可用尝试启动虚拟机延迟时间 默认为60,单位为秒,针对开启高可用的虚拟机,如果上一次尝试启动失败,到下一次尝试时中间的延迟时间。
高可用扫描虚拟机状态间隔时间 默认为60,单位为秒,针对开启高可用的虚拟机,如果启动失败,下次扫描的时间间隔。
高可用虚拟机启用状态刷新速度级别
  • 默认为1,用于全局设置HA虚拟机启用状态发生变化时,UI状态列表改变的响应速度,可选值[-1,5]。
  • 数值越小表示响应速度越快,数字越大表示响应速度越慢,但会忽略更多已过期的状态变化通知,降低系统负载。
  • -1表示UI状态列表不主动改变。
主机 主机连接数据存储超时时间 默认为5,单位为秒,用于全局设置在主机自检连接数据存储的超时时间。
异常主机状态刷新间隔 默认为5,单位为秒,用于全局设置在指定的时间间隔内检查一个异常主机状态并进行刷新。
判定主机失联尝试次数 默认为12,单位为次,用于全局设置在指定的最大次数去重连主机,如果在指定最大次数内连接此主机均失败,则判定主机失联。
判定主机连接成功Ping返回时间 默认为5,单位为秒,用于判定主机通过Ping成功连接管理节点的时间,如果主机在此时间内成功返回,则表示连接成功。
判定主机恢复连接的连接成功率 默认为50%,单位为百分比,用于全局设置在指定连接次数内既有成功又有失败的情况下,以多大几率来判定主机与管理节点连接成功。
判定主机恢复连接状态的最小连接成功次数 默认为5,单位为次,用于全局设置主机需至少与管理节点建立几次成功的连接,才可判断主机已恢复连接状态。

查看高可用日志

启用高可用策略后,若平台触发高可用机制,将生成高可用日志。您可前往运维管理 > 任务 > 高可用任务页面进行查看。支持查看任务结果、虚拟机名称、虚拟机所有者、先前主机、目标主机、开始时间和完成时间,进一步丰富运维场景,便于审计和追溯。
  • 支持选择时间段,查看所选时间段虚拟机高可用日志。可选的时间段包括:最近7天、最近1个月,默认展示最新7天的日志。
  • 支持自定义时间段,查看所设时间段虚拟机高可用日志。
  • 支持通过输入虚拟机名称/虚拟机所有者,搜索虚拟机高可用日志。
  • 支持通过任务结果对虚拟机高可用日志进行筛选。其中任务结果包括:成功、失败。
  • 支持按开始/完成时间对虚拟机高可用日志进行排序。
  • 支持CSV格式导出虚拟机高可用日志。
  • 支持调整每页显示的已完成虚拟机高可用日志数量,可选值为:10、20、50、100,且支持翻页操作。

停用高可用策略

若您希望全局关闭虚拟机高可用功能,可在高可用策略页面,点击停用操作即可。
Note: 停用高可用策略后,虚拟机停机后将不再触发自动重启,可能导致业务中断,请谨慎操作。

高可用策略业务实践

假定您在主机Host A上部署4台业务虚拟机承载MySQL数据库服务,要求主机Host A业务网卡故障时,所有4台虚拟机迁移至其他主机,以保障业务高可用。此场景下,可将这些虚拟机高可用模式均设置为NeverStop,且设置业务网卡状态故障时触发迁移,并确保平台内主机资源充足。

该场景下高可用策略的配置步骤如下:
  1. 启用高可用策略:在ZStack ZSphere平台上,点击菜单 > 业务可靠 > 高可用策略,将高可用策略页面最上方开关打开。
  2. 虚拟机打开高可用开关:
    您可通过以下两种方式进行设置,生效优先级为:虚拟机粒度>集群粒度。
    • 新建虚拟机时,将高可用开关打开,即可启用高可用。
    • 进入虚拟机所在集群页面,点击修改配置 > 高级设置 > 虚拟机设置,将虚拟机高可用开关打开。则在该集群中新建虚拟机时,所有虚拟机高可用开关默认打开。
  3. 配置虚拟机故障迁移策略:进入高可用策略 > 迁移策略页面,将场景一对应的故障时迁移虚拟机开关打开。该开关打开时,场景三对应的故障时迁移虚拟机开关将自动打开。

虚拟机高可用策略配置完成后,若主机Host A业务网卡发生故障,则该主机上的4台虚拟机将立刻自动迁移至主机Host B上启动。您可在运维管理 > 任务 > 高可用迁任务搜索相关迁移日志。