故障转移功能介绍¶
当某个集群发生故障时,该集群内的 Pod 副本会被自动迁移到其他可用集群,以保证服务稳定性。
前提条件
多云工作负载的调度策略只能选择聚合模式或者动态权重模式,此时故障转移功能才能生效。
开启故障转移¶
-
进入多云编排模块,点击 系统设置 -> 高级配置 ,故障转移可实现多个集群之间的副本调度,默认关闭,如有需要请开启。
-
以下参数均针对集群,点击开启故障转移并保存。
参数 定义 描述 字段名 EN 字段名 ZH 默认值 ClusterMonitorPeriod 检查周期间隔 检查集群状态的时间间隔 Check Internal 检查时间间隔 60s ClusterMonitorGracePeriod 运行中标记集群不健康检查时长 集群运行中,超过此配置时间未获取集群健康状态信息,将集群标记为不健康 The runtime marks the duration of an unhealthy check 运行时标记不健康检查时长 40s ClusterStartupGracePeriod 启动时标记集群不健康的检查时长 集群启动时,超过此配置时间未获取集群健康状态信息,将集群标记为不健康 Mark health check duration at startup 启动时标记健康检查时长 600s FailoverEvictionTimeout 驱逐容忍时长 集群被标记为不健康后,超过此时长会给集群打上污点,并进入驱逐状态 (集群会增加驱逐污点) Eviction tolerance time 驱逐容忍时长 30s ClusterTaintEvictionRetryFrequency 优雅驱逐超时时长 进入优雅驱逐队列后,最长等待时长,超时后会立即删除 Graceful ejection timeout duration 优雅驱逐超时时长 5s
验证故障转移¶
-
创建一个多云无状态负载,选择部署在多个集群上,调度策略选择聚合/动态权重模式.
-
若此时一个集群不健康并且在指定的时间范围内并未恢复,则将会为此集群打上污点,进入驱逐状态(此文档将手动为某一集群打上污点)
-
此时无状态负载的 Pod 将会根据剩余集群的资源等情况进行迁移。最终不健康(被打上污点)的集群内将不存在任何 Pod。