k8s集群5个故障案例分析

本文详细讲述了Kubernetes中常见的故障案例,如CPU限制导致的高延迟、应用程序日志丢失、IP上限阻碍自动扩展和负载均衡配置错误。还讨论了加密货币挖矿对K8s环境的影响以及如何通过改进监控和安全措施来提升集群稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 简介

最近看到了一份收集Kubernetes故障案例的资料,资料由ZalandoTech的高级首席工程师Henning Jacobs加以维护。这个由社区驱动的项目全面介绍了Kubernetes反模式以及为何导致Kubernetes运行错误的原因。

k8s.af上的案例由工程师和实施者编写,描述了许多糟糕的经历:比如导致高延迟的CPU限制、阻止自动扩展的IP上限、应用程序日志丢失、pod被终止、502 错误、部署缓慢和生产环境故障等。

愿通过分析这些失败案例,大家可以学会如何更好地配置和改进K8s环境。

2 CPU限制导致高延迟

设定CPU限制是把双刃剑。您不想浪费计算资源,然而设定人为限制又可能导致容器耗尽所有可用的CPU。这可能会导致一连串连锁反应事件,从而导致性能停滞、其他组件停运。

为了遏制容器,Kubernetes使用完全公平的调度程序配额(CFS Quota),以防止超出CPU限制。遗憾的是,Kubernetes中过于严格的遏制会导致性能问题。

Buffer的故事就是一个例子。在人为遏制导致性能不佳后,基础架构团队最终决定为面向用户的实例取消CPU限制和遏制针对每个节点分配合适的CPU,留出>20%的余量。这么一来,该团队将所有容器的容器延迟至少缩短了一半。至于主登录页面,最终结果是快了22倍。

Buffer基础架构工程师Eric Khun写道:“我们在改用微服务架构的过程中不断反复试验。即使在运行k8s几年后,我们仍在学习其奥秘。”

应谨慎对待取消CPU限制。相反,Khun建议“升级内核版本,而不是消

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值