配置调度与差异化
集群调度策略
当前界面支持集群权重和自动均衡两种策略。
通过控制台配置调度策略
- 登录UCS控制台。
- 在创建工作负载时,单击“下一步:调度与差异化”。
- 添加调度策略。
表1 调度策略 策略
描述
集群权重策略
需要您选择集群并配置分发权重,按照集群权重配比分发Pod。
自动均衡策略
按照剩余资源量自动选择集群分发Pod,不需要额外配置。
集群容忍策略
集群容忍策略允许调度器将Pod调度至带有对应污点的集群上,需要与集群污点配合使用。
默认的集群容忍策略
在创建工作负载时,UCS会为您的负载配置默认的容忍策略。默认的容忍策略会在某集群出现故障后为其添加表2所示的污点,待持续时长超出容忍时长后会自动驱逐该集群上所有Pod。
在驱逐所有故障集群上的Pod后,待该集群恢复正常,UCS不会按照原有调度策略将Pod迁回该集群。若您需要继续执行原调度策略配置,可以对工作负载进行重新调度。
污点键 |
容忍策略 |
---|---|
cluster.karmada.io/not-ready |
集群状态为not ready时自动添加该污点,持续时长超出容忍时长后会自动驱逐该集群上所有Pod。 |
cluster.karmada.io/unreachable |
集群状态为不可用时自动添加该污点,持续时长超出容忍时长后会自动驱逐该集群上所有Pod。 |
通过控制台配置集群容忍策略
- 登录UCS控制台。
- 在创建工作负载时,单击“下一步:调度与差异化”。
- 添加污点容忍策略。
参数名
参数描述
污点键
集群的污点键。
操作符
- Equal:设置此操作符表示准确匹配指定污点键(必填)和污点值的节点。如果不填写污点值,则表示可以与所有污点键相同的污点匹配。
- Exists:设置此操作符表示匹配存在指定污点键的节点,此时容忍度不能指定污点值。若不填写污点键则可以容忍全部污点。
污点值
- 如果操作符的值是 Exists,则value属性可省略。
- 如果操作符的值是 Equal,则表示其key与value之间的关系是Equal(等于)。
- 如果不指定操作符属性,则默认值为Equal。
污点策略
- 全部:表示匹配所有污点效果。
- NoSchedule:表示匹配污点效果为NoSchedule的污点。
- NoExecute:表示匹配污点效果为NoExecute的污点。
容忍时间窗
即tolerationSeconds参数,当污点策略为NoExecute时支持配置。
在容忍时间窗内,Pod还会在拥有污点的节点上运行,超出时间后会被驱逐。若不配置容忍时间窗,则Pod永远不会被驱逐。