排障方案
本页列出云原生社区的一些故障排查方案,供运维人员参考。
-
如何解决 Prometheus 的存储容量问题?
单机存储不好扩展是 Prometheus 一个广受诟病的问题。对此问题,文章给出了 3 种集群解决方案:Prometheus 联邦集群、远程存储方案、Prometheus 自身搭建集群,这这三种方案能够很好地解决 Prometheus 的存储问题。
-
云原生场景下,nettrace 怎么快速进行网络故障诊断?
nettrace
是一款基于 eBPF 的集网络报文跟踪(故障定位)、网络故障诊断、网络异常监控于一体的网络工具集, 提供一种更加高效、易用的方法来解决复杂场景下的网络问题。
-
Istio 运维实战:如何规避 503 UC 错误
503 UC 是在 Istio/Envoy 使用过程中经常遇到的一个问题。 文章分析了由于 TCP 服务器 keepalive Timeout 导致的 503 UC 的原理及规避方法。
-
K8s CNI Cilium 网络故障排查指南
文章介绍了作者从 kubenet 升级到 cilium 时遇到的一个问题及排障过程。 问题是,在 kubenet 网络的节点上的 pod 无法访问 cilium 网络的节点上的 pod。 通过抓包测试,以及分析 cilium 的相关信息, 发现问题所在:cilium 如果没有管理所有 k8s 节点,剩余的节点就按照外部服务器的方式来处理。
-
如何高效地对 Kubernetes Service 进行排障
文章简要介绍了 service 的工作方式,在运行 service 时可能出现的各种 bug 以及如何解决这些 bug。 最后,还介绍了一个高效排障工具
Telepresence
。 Telepresence 能够为 Kubernetes 建立一个远程开发环境,用户仍然可以使用自己的本地工具,如 IDE 和调试器, 并针对远程 K8 集群的微服务测试本地服务。
-
K8s:彻底解决节点本地存储被撑爆的问题
K8s 节点本地存储保存了镜像、可写层、日志、emptyDir 等内容。 除了容器镜像是系统机制控制的,其它都跟应用程序有关。 完全依赖开发者对应用使用的存储空间进行限制并不可靠,因此,K8s 提供了垃圾回收、日志总量限制、emptyDir 卷限制、临时数据总量限制来避免本地存储不够用的问题。
-
K8s 有损发布问题探究
应用发布过程其实是新 Pod 上线和旧 Pod 下线的过程,当流量路由规则的更新与应用 Pod 上下线配合出现问题时,就会出现流量损失。 总的来说,为了保证流量无损,需要从网关参数和 Pod 生命周期探针和钩子来保证流量路径和 Pod 上下线的默契配合。 文章从 K8s 的流量路径入手,分析有损发布产生的原因,并给出解决方案。
-
K8s:Pod 的 13 种异常
文章总结了 K8s Pod 的 13 种常见异常场景,给出各个场景的常见错误状态,分析其原因和排查思路。
-
K8s: 你需要知道的一切
电子书囊括了了解 Kubernetes 所需的所有定义,同时也包含了与 Kubernetes 相关的其他电子书、文章、教学视频等资源的介绍,以及 7 个最佳实践。
-
Docker Volume 引发 K8s Terminating Pod 的问题
Terminating Pod 是业务容器化后遇到的一个典型问题,诱因不一。 文章记录了网易数帆-轻舟 Kubernetes 增强技术团队如何一步步排查,发现 Docker Volume 目录过多导致 Terminating Pod 问题的经历,并给出了解决方案。
-
安装 Kubernetes 或升级主机操作系统后出现网络问题?这可能是你的 iptables 版本有问题
安装新版本的 Kubernetes 后,你的工作节点连接不上网络,突然间无法 ssh 访问甚至无法 ping 它们? 这可能是因为 kube-router 1.25 的 iptables 版本和你安装的版本之间出现冲突。 归根结底是因为 iptables 1.8.8 和旧版本的规则格式不兼容。 对此,有三个解决方案:将 iptables 版本降到 1.8.7、清理 IPTables 链所有权(alpha)或是借助轻量级的 Kubernetes 发行版
k0s
解决。
-
利用 eBPF 进行 Kubernetes 集群磁盘 I/O 性能问题排查
问题始于 eBay 工程师发现他们的 Kafka 服务在有些时候 follower 追不上 leader 的数据。 为解决问题,利用了一些 eBPF 工具,例如,
biopattern
用于展示 disk I/O pattern,
ebpf_exporter
用于数据收集和可视化。
-
Kubernetes 网络排错骨灰级指南
文章介绍 Kubernetes 集群中网络排查的思路,包括 Pod 常见网络异常分类、排查工具、排查思路及流程模型、CNI 网络异常排查步骤以及案例学习。
-
Redis 缓存异常及处理方案总结
Redis在实际应用过程中,会存在缓存雪崩、缓存击穿和缓存穿透等异常情况,如果忽视这些情况可能会带来灾难性的后果,文章对这些缓存异常问题和相应处理方案进行了分析和总结。
-
K8S Internals 系列:存储卷指标消失之谜
这篇文章的创作灵感因 Grafana 不展示使用存储驱动创建的存储卷的容量指标而起,展示了该问题的排查思路及手段,进而勾勒出 Kubelet 对于存储卷指标收集的实现流程。