一例容器服务kubernetes集群节点异常问题的解决

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介:

结论

上来先发结论,方面出现同样问题的同学解决问题:

问题表现:

新创建的ACK托管版集群节点上被加了污点( node.kubernetes.io/network-unavailable: Effect: NoSchedule )

问题原因:

VPC中每个路由表中可保有的自定义路由条目数量(vpc_quota_route_entrys_num)超过配额限制,被ACK监测到从而给部分集群节点添加了污点标记

解决方法:

1.申请增加vpc_quota_route_entrys_num

  1. 2.手动删除对应节点的路由让ccm自动更新(推荐)或移除节点重新加入

问题解决感受:

1.阿里云容器服务kubernetes版本一直在不断地迭代,发展的越来越好,尤其是托管版,对于没有kubernetes专业人才甚至连专业运维人员都确认的企业非常方便适用;当然,阿里云容器服务kubernetes并不完美,还是有一些小问题的。
2.阿里云的支持人员非常敬业,晚上快11点了,还在帮忙排查和解决问题。点个赞。

问题发现和处理过程

下面是问题发现和处理过程,有兴趣或者需要了解详情的同学可以参考下:

近期,因业务需要,在测试环境新搭建了几个阿里云容器服务kubernetes托管版。
原本的#搭建过程非常顺利。在原有VPC网络中新建交换机、配置SNAT路由、创建新集群、指定了Pod网络CIDR和Service CIDR、指定使用新的ECS、配置日志服务等,点击创建集群,过个10来分钟,集群就创建好了。
然后取KubeConfig配置在发布系统中开始发布业务应用。
发布了几个应用之后,问题开始显露出来了。这个测试集群虽然只有几个节点,但也没道理应用一直都只往一个节点上部署啊。
image
仔细一检查,发现其他几个节点上都有污点。
再仔细一看,发现是创建集群时添加路由失败了。
image
然后去VPC控制台下检查路由,发现路由是存在的。
跟ACK支持同学确认,怀疑是创建时路由配额满了,导致ACK给节点标记了污点。
至于为啥路由是存在的,我怀疑是ACK有特殊权限,虽然路由满了,但是依然可以成功添加路由;同时,ACK仍然记录了此处路由数的限制问题,而在节点上标记了污点(纯粹合理猜想,因为复现成本较高,所以没有继续排查这方面的原因了)。
找到原因,就可以开始解决了。
首先,在配额管理中申请增加配额。
配额增加后,再查看路由表,没发现变化;查看节点详情,也没有变化,污点依然在,依然没有应用可以调度过去。
那么,试试手动去掉污点应该可以吧。
image
命令是执行成功了,但不管是describe node还是阿里云控制台上,污点依然在。
试了试调度,这时候有应用可以调度上去了。
好吧,看来是有些地方不太一致啊!
这时候,ACK支持的同学说,可以后台重启下ccm(cloud-controller-manager),ccm会自动检查路由表并更新状态。
那么,我们就重启下吧。
重启之后,发现节点上的污点标记依然在。
这时候,我试了试把节点从集群中移除然后重新加入,发现污点没有了,节点状态完全正常了。
不过,移除节点再加入的方式比较重,集群处理起来也很慢。
这时候,ACK支持的同学建议把路由手动删除来触发CCM自动更新。
我们手动删除了路由,然后刷新路由表,发现路由很快被加回来了。
然后去查看节点详情,发现节点上的污点已经去掉了;
再调度下业务应用,发现业务应用可以正常调度上去了。
到此,问题解决。

相关实践学习
巧用云服务器ECS制作节日贺卡
本场景带您体验如何在一台CentOS 7操作系统的ECS实例上,通过搭建web服务器,上传源码到web容器,制作节日贺卡网页。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
11天前
|
人工智能 弹性计算 运维
ACK Edge与IDC:高效容器网络通信新突破
本文介绍如何基于ACK Edge以及高效的容器网络插件管理IDC进行容器化。
|
14天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
147 77
|
12天前
|
人工智能 运维 监控
阿里云ACK容器服务生产级可观测体系建设实践
本文整理自2024云栖大会冯诗淳(花名:行疾)的演讲,介绍了阿里云容器服务团队在生产级可观测体系建设方面的实践。冯诗淳详细阐述了容器化架构带来的挑战及解决方案,强调了可观测性对于构建稳健运维体系的重要性。文中提到,阿里云作为亚洲唯一蝉联全球领导者的容器管理平台,其可观测能力在多项关键评测中表现优异,支持AI、容器网络、存储等多个场景的高级容器可观测能力。此外,还介绍了阿里云容器服务在多云管理、成本优化等方面的最新进展,以及即将推出的ACK AI助手2.0,旨在通过智能引擎和专家诊断经验,简化异常数据查找,缩短故障响应时间。
阿里云ACK容器服务生产级可观测体系建设实践
|
12天前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
阿里云容器服务ACK提供强大的产品能力,支持弹性、调度、可观测、成本治理和安全合规。针对拥有IDC或三方资源的企业,ACK One分布式云容器平台能够有效解决资源管理、多云多集群管理及边缘计算等挑战,实现云上云下统一管理,提升业务效率与稳定性。
|
24天前
|
运维 Kubernetes Docker
深入理解容器化技术:Docker与Kubernetes的协同工作
深入理解容器化技术:Docker与Kubernetes的协同工作
43 1
|
24天前
|
Kubernetes Cloud Native 持续交付
容器化、Kubernetes与微服务架构的融合
容器化、Kubernetes与微服务架构的融合
41 1
|
26天前
|
Kubernetes Cloud Native API
深入理解Kubernetes——容器编排的王者之道
深入理解Kubernetes——容器编排的王者之道
41 1
|
12天前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
12天前
|
人工智能 Kubernetes Cloud Native
阿里云容器服务,智算时代云原生操作系统
2024云栖大会,阿里巴巴研究员易立分享了阿里云容器服务的最新进展。容器技术已成为云原生操作系统的基石,支持多样化的应用场景,如自动驾驶、AI训练等。阿里云容器服务覆盖公共云、边缘云、IDC,提供统一的基础设施,助力客户实现数字化转型和技术创新。今年,阿里云在弹性计算、网络优化、存储解决方案等方面进行了多项重要升级,进一步提升了性能和可靠性。
|
12天前
|
人工智能 Cloud Native 调度
阿里云容器服务在AI智算场景的创新与实践
本文源自张凯在2024云栖大会的演讲,介绍了阿里云容器服务在AI智算领域的创新与实践。从2018年推出首个开源GPU容器共享调度方案至今,阿里云容器服务不断推进云原生AI的发展,包括增强GPU可观测性、实现多集群跨地域统一调度、优化大模型推理引擎部署、提供灵活的弹性伸缩策略等,旨在为客户提供高效、低成本的云原生AI解决方案。

相关产品

  • 容器计算服务
  • 容器服务Kubernetes版