Tag与功能

max_group功能依赖于识别Autoscaling(AWS)或者伸缩组(阿里云)所配置的tag来实现不同的功能,以下为tag key-value及功能解释

tag-key

默认值

功能

版本支持

spotmax:persistence_dev

null

添加此tag可以进行ebs的漂移,无默认值,tag-value为非root盘在instance上的映射路径,暂时仅aws平台支持,例如:/dev/sdf

AWS/ALI

spotmax:detaching_delay_seconds

30

旧实例被替换时,从asg中detach延迟(s)

AWS/ALI

spotmax:consul_port

null

配置此参数为consul支持,无默认值,tag-value为consul agent本地端口号 在实例中断并经过detaching_delay_seconds时间后,该实例将会从consul的服务发现列表中移除,例如:8500

AWS/ALI

spotmax:max_num_of_terminated_one_time

1

集群防退化功能一次关闭的最大机器数,替换机器执行分批替换,每次替换的最大数量。OD实例按ASG总实例1%替换,Spot按1台替换

AWS/ALI

spotmax:preaction_termination_delay_seconds

300

集群防退化功能执行terminate间隔时间

AWS/ALI

spotmax:preaction_detach_delay_seconds

30

集群防退化功能中,将被替换机器间隔多少秒后,会被detach出asg

AWS/ALI

spotmax:is_enable_preaction

true

增加此tag为开启集群防退化功能,此功能为预测即将被回收的机器,并提前进行更替机型操作,tag-value为true表示为开启此功能

AWS/ALI

spotmax:k8s_node_drain_grace_second

300

node下的pod移出延迟时间,例如:600

AWS/ALI

spotmax:k8s_config_file_path

null

kubernetes 配置文件,用于把权限赋给max group,例如:xxx/config

AWS/ALI

spotmax:is_enable_od_fallback

true

此tag-value为true表示,在前述中断预补偿机制中,当竞价实例无法获取时,会用按需实例补充

AWS/ALI

spotmax:spot_price_limit

0

spot价格限制,例如 0.9, 当spot机型价格超过按需机型价格的90%,从替换机型列表中移出这个机型,例如:0.75

ALI

spotmax:alt(num)

null

用于当伸缩组内的机器没有时,用额外的机器来替换,例子:

(key:spotmax:alt1

value:ecs.mn4.large)

(key:spotmax:alt2

value:ecs.n2.medium)

AWS/ALI

spotmax:is_to_handle_rebalance_event

false

是否开启AWS容量再平衡

AWS

spotmax:is_to_handle_scaling_failure

true

是否开启接收伸缩失败信息处理

AWS/ALI

spotmax:gurantee_living_mins

0

实例开启后不中断时长,最长设置60分钟,单位为分钟

AWS/ALI

spotmax:buffer_mins

1

当设置不中断时间,误差值,建议1分钟,单位为分钟

AWS/ALI

spotmax:ignore_tag

false

当tag-value为true时,maxGroup不管理此伸缩组

AWS/ALI

spotmax:is_only_od_rep

false

只开od进行替换

AWS/ALI

spotmax:od_least_live_mins

15

OD至少运行多长时间(Min)

AWS/ALI

spotmax:alt_least_live_mins

15

额外机型至少运行多长时间(Min)

AWS/ALI

spotmax:sd_delay_detach_secs

30

consul移除时间

AWS/ALI

spotmax:k8s_delay_draining_secs

90

k8s移除时间

AWS/ALI

spotmax:preaction_k8s_delay_draining_secs

240

主动优化时,被替换实例从k8s中drain的延迟时间(s)

AWS/ALI

spotmax:pod_delay_detaching_secs

18

被替换Nodeshashan个运行的Pod移除AppLabel的延迟时间(s)

AWS/ALI

spotmax:warm_pool_start_up_duration_min

1

热池功能:实例开机多长时间后转换停止状态,单位为分钟

AWS

spotmax:warm_pool_update_frequency_min

60

热池功能:实例更新频率,单位为分钟

AWS

spotmax:warm_pool_min_size

0

热池功能:开启多少个OD实例,当设置为-1时,为伸缩组的最大值与期望值之差

AWS

spotmax:is_warm_pool_first

false

热池功能:是否优先从热池补偿实例

AWS

spotmax:az_rebalance

null

自动控制AzRebalance。调整目标为各zone的总InService实例数均衡,不区分spot还是od(删除此Tag后需要人工设置Asg的AzRebalance状态); 取值"optimize" - 功能:在持续优化时,把新实例补充到实例数最少的AZ

AWS

spotmax:is_prefer_multiple_types

true

spot不足时,优先使用额外机型spot补偿,其次使用od

AWS/ALI

注:当启用 spotmax:k8s_node_drain_option 时,建议将spotmax:detaching_delay_seconds 的tag-value设置为80-90之间,这样可以在保证新node ready情况下,将pod转移过去。

Last updated