操作场景
边缘集群中节点和控制端一般在不同机房,网络连接不如常规的 K8S 集群稳定,可能会产生边缘部分节点与 apiserver 断联的情况,此时云端将无法准确获取节点和节点上 pod 的运行状况。
原生 K8S 默认长时间的断联后,节点状态会变为 Unknown,且节点会被打上 NoSchedule 和 NoExecute 的 Taints,继而造成节点上的 pod 被驱逐和重建,同时 pod 会从 service 的 endpoint 中被删除。但实际上节点可能是正常运行状态,此时 pod 的驱逐和重建是完全不必要的。
在断联造成的节点 pod 大规模重建过程中,服务的访问会产生波动甚至不可用,会对服务质量造成严重影响。重建时,节点的网络和 IO 带宽过高,可能造成节点短时间内的负载过高,也可能会增加用户的网络费用。除此之外,重建会造成应用强依赖 pod 的 IP 变动,使服务需要重新部署。您可参考本文,了解并开始使用边缘健康检查功能及多地域检查功能,避免此类问题发生。
功能介绍
边缘健康检查功能
边缘计算场景不能依赖边缘端和 apiserver 的连接来判断节点是否异常,可能会因为网络连接问题造成误判。边缘端节点之间的连接比云端和边缘端的连接更稳定,具有一定的参考价值。因此边缘健康检查功能除了 apiserver 外,还引入了节点的评估因素,进而对节点进行更为全面的状态判断。
多地域检查功能
为了保证服务的稳定,可通过边缘健康检查功能,有效避免云边网络不稳定造成大量 pod 迁移和重建。边缘健康检查多地域功能还支持多地域内的节点健康检查,依据地域或者其他方式对节点进行分组,实现组内检查。在边缘计算场景下,同一个集群内的节点很可能分布在不同地域,不同地域之间的节点通常不可互通,不同地域的节点之间相互探测会影响健康探测机制效果。
前提条件
该功能需要打开节点的51005端口,以便节点之间进行分布式智能健康探测。
操作步骤
开启或关闭边缘检查功能
边缘健康检查功能默认开启,请参考以下步骤手动控制开关:
1. 登录 物联网边缘计算平台,单击左侧导航栏中边缘单元,进入“边缘单元”页面。
2. 单击目标单元操作栏下的管理,进入该单元详情页。
3. 如下图所示,可以按需开启/关闭健康检查功能。