Kubernetes ImagePullBackOff 镜像拉取失败的排查与修复实践
适用场景 这篇文章适用于 Pod 一直停留在 Pending、ErrImagePull 或 ImagePullBackOff,业务发布后没有新实例可用的场景。常见环境包括自建 Kubernetes、云厂商托管集群、私有镜像仓库 Harbor、阿里云/腾讯云镜像仓库,以及通过 CI/CD 自动更新镜像 tag 的发布链路
Tag
包含这个标签的文章。
适用场景 这篇文章适用于 Pod 一直停留在 Pending、ErrImagePull 或 ImagePullBackOff,业务发布后没有新实例可用的场景。常见环境包括自建 Kubernetes、云厂商托管集群、私有镜像仓库 Harbor、阿里云/腾讯云镜像仓库,以及通过 CI/CD 自动更新镜像 tag 的发布链路
适用场景 本文适用于线上 Redis 开启 AOF 持久化后,业务在某些时间段出现接口变慢、写入超时、Redis used_cpu_sys 升高、磁盘 await 或 util 接近打满的场景。常见部署形态包括单机 Redis、主从 Redis、哨兵架构,以及运行在云主机本地盘或云盘上的 Redis 实例。 重点关注下
适用场景 本文适用于 Linux 主机、NAT 网关、Docker 宿主机、Kubernetes Node 或开启防火墙规则的服务器。当业务出现偶发连接超时、DNS 查询失败、服务间调用间歇性失败,而 CPU、内存、磁盘都看起来正常时,可以把 conntrack 连接跟踪表作为重点排查对象。 典型环境包括: 单机部署了
适用场景 这类问题常见于 Ubuntu、Debian 或启用了 systemd-resolved 的 Linux 主机:宿主机可以正常解析域名,但 Docker 容器内访问外部域名失败,表现为应用请求超时、包管理器无法安装依赖、容器启动后健康检查一直失败。 典型环境包括: 宿主机使用 Docker Engine 运行业
适用场景 这篇文章适用于 Nginx 接入 Filebeat、Logstash、Elasticsearch 或其他日志平台后,出现下面几类问题的场景: Nginx 访问日志本地已经写入,但日志平台几分钟后才看到。 部分时间段日志缺失,业务同学按 trace id 或客户端 IP 查不到请求。 日志轮转后采集停止,重启
适用场景 本文适用于 Kubernetes 中业务 Pod 间歇性进入 CrashLoopBackOff、RestartCount 持续增长、服务短时间不可用,但应用日志里又看不到明确业务异常的场景。常见于 Spring Boot、Django、Go HTTP 服务、Node.js 服务等 Web 应用,尤其是刚接入健
适用场景 本文适用于 Prometheus 已经配置了 scrape_configs,但在 Targets 页面看到目标实例显示 DOWN,或者 PromQL 查询 up{job="xxx"} == 0 的场景。常见对象包括 node_exporter、应用自暴露的 /metrics、Kubernetes Servic
适用场景 这篇文章适用于使用 Python httpx 调用内部 HTTP 接口、第三方 API、网关或微服务时,线上偶发出现请求超时、任务堆积、接口吞吐下降的问题。常见场景包括: 定时任务批量调用接口; FastAPI、Django、Celery worker 中复用 httpx.Client 或 httpx.Asy
适用场景 这篇文章适用于线上服务突然退出、容器被重启、systemd 日志里只有 Killed、监控显示内存瞬时打满,但应用日志没有明确异常栈的场景。常见环境包括物理机、云主机、Docker 容器和 Kubernetes 节点。 OOM Killer 的本质是内核在内存不可回收时主动选择进程终止,以保证系统还能继续运行
适用场景 这篇文章适用于 MySQL 5.7、MySQL 8.0 或兼容 MySQL 协议的数据库中,执行 ALTER TABLE、CREATE INDEX、DROP INDEX、TRUNCATE TABLE 等 DDL 时长时间不返回,同时业务侧出现接口变慢、连接数升高、写入卡住等问题的场景。 元数据锁的英文是 Me