我现在的部署架构如下:
目前我部署了1个 RKE2 server/master + 2个 RKE2 agent/worker 组成k8s集群,然后导入到了 Rancher UI v2.6.9 中进行管理。
现在我在尝试使用 cluster-autoscaler (autoscaler/cluster-autoscaler/cloudprovider/alicloud at master · kubernetes/autoscaler · GitHub ) 对worker节点在阿里云利用弹性伸缩服务进行节点扩容,目前遇到了有关 ProviderID 格式的问题。
ali autoscaler 要求ProviderID 格式为 REGION.INSTANCE_ID , 如: ap-south-1.i-a2dhi0m2kz7e4m4t1b68
但是 RKE2 的默认 ProviderID 格式为 rk2://hostname, 如: rke2://iza2d1xenen8urtosiovljz
通过autoscaler 源码可以看到,ali autoscaler会使用 点 对 获取到的 ProviderID 进行分割,然后用最后一个元素,也就是 实例ID和当前在伸缩组中的实例ID进行对比,能匹配就正常,不能匹配则为未注册的节点,就算节点加入集群了,过一会儿也会被自动的移除。
RKE2 的 ProviderID 格式不符合autoscaler要求,所以会被自动移除。
请问该如何修改或指定RKE2的默认ProviderID ,并且在自动扩展出来的节点上也能够自动配置?