最近碰到个别用户在ARM环境国产化操作系统中使用SuperMap iManager for K8S的时候出现服务节点伸缩不生效的问题。今天咱们就以此例来给大家讲解下如何解决该问题。
问题现象:在云套件服务节点管理中,设置伸缩为动态伸缩,设置阈值条件后,当服务节点的负载超过(低于)阈值后没有按照预期的结果那样增加节点或者减少节点
步骤一,查看hpa状态
执行以下命令,可以查看到hpa的状态
kubectl get hpa -n icloud-native-* //*为云套件的id,可以在GIS站点中查看到
正常情况为:
targets应该是有两个参数显示
非正常情况为:
可以看出非常情况targets是没有获取到服务节点的实际负载参数显示的是unknown
步骤二
查看kube-system命名空间下的metrics-server是否正常,并查看日志
可以看到有个明显报错,没有追踪到指定容器的资源负载
步骤三
修改metrics-server的deployment的编排,增加以下参数
args:
- '--kubelet-preferred-address-types=InternalIP'
- '--kubelet-insecure-tls'
修改后,点击更新,待容器启动后,查看hpa状态
可看到targets参数都获取到了。再次使用服务节点的动态伸缩,也能正常进行副本数量的伸缩了。
以上就是云套件中服务节点无法正常伸缩的解决方法,如果您按照文档操作还是没有解决问题,可以在文章下方给我们留言或者是通过4008900866联系我们的iManager产品支持工程协助您解决。