当您为了应对突发流量而进行业务的快速水平扩容,或者启动大量实例进行Job任务处理时,可能会遇到可用区对应规格实例库存不足或者指定的交换机IP耗尽等情况,从而导致ECI实例创建失败。使用ASK的多可用区特性可以提高ECI实例的创建成功率。
背景信息
- ECI会把创建Pod的请求分散到所有的vSwitch中,从而达到分散压力的效果。
- 如果创建Pod请求在某一个vSwitch中遇到没有库存的情况,会自动切换到下一个vSwitch继续尝试创建。
使用方式
常见问题
- 如何在ASK集群中加入其他Node?
ASK集群没有Node节点的概念。如果您需要让ECI可以部署到其他可用区,可以在kube-system下名为eci-profile的configmap中,追加一个不同可用区的VSW,逗号分隔即可。
- 如何指定Pod部署到不同的可用区?
部署Pod的时候默认是根据可用区下是否有足够的资源进行随机调度。
匹配VK,通过三个Annotation实现对多可用区和多规格支持:- k8s.aliyun.com/eci-schedule-strategy: " VSwitchOrdered"
- k8s.aliyun.com/eci-vswitch: "vsw-11111, vsw-22222"
- k8s.aliyun.com/eci-use-specs: "ecs.c5.4xlarge, ecs.c6.4xlarge,2-4Gi"
VSwitchOrdered
会根据指定的k8s.aliyun.com/eci-vswitch
列表顺序创建ECI。通过k8s.aliyun.com/eci-schedule-strategy
设置VSwitchRandom
或VSwitchOrdered
,在创建ECI时实现随机调度到可用区或者按照注解中的vsw顺序来调度。