首页/云/云与容器速查/kubectl events 与事件排查
Kubernetes68 条

kubectl events 与事件排查

事件是集群的『事故简报』:调度失败、镜像拉取、探针、OOM 都会写事件。默认保留时间有限,排障时要第一时间抓取并按时间排序。

云与容器速查云更新于 2026-10-13

kubectl events 是什么

事件是集群的自动记录:调度失败、镜像拉取、探针失败、资源压力、容器被杀,几乎每一个异常都会写成一条事件。它是排障时最先该看的东西——往往事件里的 Message 已经直接给出了方向。最大的限制是保留时间有限,控制器事件通常只保留约一小时,排障慢一步线索就消失了。

基本信息

查看方式kubectl get events 加排序参数,或使用新版 kubectl events 命令
范围控制-A 表示全集群,--field-selector 可聚焦单个对象
类型分组分为 Normal 与 Warning,先看 Warning
跟随模式新版命令支持 --for 持续观察某个对象的事件
保留期控制器事件默认保留时间很短,过期即无法再查

典型使用场景

  • Pod 起不来:看是调度失败、拉取失败还是探针失败
  • 发布异常:观察滚动过程中是否有实例被反复重建
  • 节点问题:查看节点资源压力与驱逐相关事件
  • 排查时快照:把当前事件导出留档,供事后复盘分析
  • 日常巡检:按时间排序看最近的告警类事件,发现潜在问题

使用示例

使用示例
kubectl get events -A --sort-by=.lastTimestamp | tail -30
# 先看最近发生的事件,Warning 类型优先关注
kubectl get events --field-selector involvedObject.name=web-1 -n dev
kubectl events --for pod/web-1 -n dev        # 持续观察某个对象的事件
kubectl get events -n dev -o yaml > events.yaml   # 导出留档,防止过期丢失

常见事件与含义

事件原因含义常见处置
FailedScheduling调度失败,节点资源不足或约束不满足看具体约束信息并调整资源
FailedMount卷挂载失败检查存储类与卷声明状态
BackOff 拉取失败镜像拉取重试中核对镜像地址与仓库凭证
Unhealthy探针判定失败复现探测命令并核对探针配置
OOMKilling容器内存超限被杀死确认限制值与实际峰值用量
事件相当于应急快照:重要故障发生时先把事件导出留档,事后复盘时就不必靠回忆或复现来还原现场。
事件默认只保留很短时间,排障拖得太久关键线索就会消失。遇到异常第一时间执行一次事件导出,成本极低收益很高。

易错点

  • 排障动作太慢,事件已过期,关键线索消失只能靠复现
  • 只看事件不看日志:事件给方向,根因往往在应用日志里
  • 不看 Warning 类型直接翻页,被大量常规事件淹没重点
  • 不聚焦对象而全量翻看,几十条事件里找不到与故障相关的那条

数据来源与参考

  • Kubernetes Docs:kubectl events
  • Kubernetes Docs:Events

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌