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