作业帮公开K8s集群内节点故障检测及处理相关专利
随着云开发的重点转移到容器,以Kubernetes为代表的容器相关技术大受欢迎。Kubernetes,简称K8S,是一个用于管理云平台中多个主机上的容器化的应用,目标是让部署容器化的应用简单并且高效(powerful),提供用部署、规划、更新、维护的一种机制。
现有的K8s是通过节点上kubelet进行节点健康检测,它依靠租约定时续租的机制,默认可以检测以下四种问题:网络不可用、内存空间不足、磁盘空间不足和可用进程数量不足。相比于复杂的现实场景,K8s默认的检测能力较弱,检测不了除以上四种问题以外的其他系统运行依赖的软件或硬件故障,比如:ntp服务异常(会导致服务器时钟不同步)、 显卡故障(会导致依赖GPU的程序无法运行)等。另外,发现故障后,需要人工介入处理,将节点移出集群,然后购买新的节点加入集群,人力成本较高且效率低下。
日前,一种可以根据自定义的条件来判定节点是否异常,并进行自动处理的技术方案面世,该方案的出现或许可以极大程度提升K8s的健康检测能力。该方案是作业帮教育科技(北京)有限公司公布的一项专利,专利号CN113422692A。该方案通过自定义的节点故障检测程序对K8s集群的每个工作节点Worker进行故障检测,将检测结果上报给K8s集群的API Server,并进行保存,然后根据检测结果监听工作节点Worker的状态,当状态发生变化时,按照预先配置的规则执行相应的恢复动作,进行故障处理。

据了解,K8s集群内节点故障检测及处理方法形成了一整套闭环的自动化系统,不仅加强了K8s的节点故障检测和处理的能力,系统完全以云原生的方式运行,还不依赖其他第三方组件,具备高可用性,大大提升了节点故障处理的效率,同时无需人工介入,具有较高的实用价值。
公开资料显示,作业帮教育科技(北京)有限公司成立于2015年,一直致力于用科技手段助力教育普惠,运用人工智能、大数据等前沿技术,为学生、老师、家长提供更高效的学习、教育解决方案,智能硬件产品等。