Kubernetes Pod 健康问题:CrashLoopBackoff

搭建 Prometheus 的过程中,alertmanager-main 的 Status状态为CrashLoopBackoff. 我的alertmanager-main svc下有三个alertmanager-main-0 alertmanager-main-1 alertmanager-main-2

1.检查状态

kubectl describe pod alertmanager-main-0 -n monitoring

输出的关键内容如下(Liveness probe failedReadiness probe failed):

Warning  Unhealthy  23m (x6 over 23m)      kubelet, 192.168.6.11  Liveness probe failed: Get http://172.17.25.5:9093/-/healthy: dial tcp 172.17.25.5:9093: connect: connection refused
Warning  Unhealthy  8m53s (x148 over 23m)  kubelet, 192.168.6.11  Readiness probe failed: Get http://172.17.25.5:9093/-/ready: dial tcp 172.17.25.5:9093: connect: connection refused
Warning  BackOff    3m51s (x34 over 12m)   kubelet, 192.168.6.11  Back-off restarting failed container

2. 检查日志

kubectl logs alertmanager-main-0 -n monitoring

输出的日志为info,没有错误信息

level=info ts=2019-06-06T17:11:30.007373879Z caller=main.go:177 msg="Starting Alertmanager" version="(version=0.16.1, branch=HEAD, revision=571caec278be1f0dbadfdf5effd0bbea16562cfc)"
level=info ts=2019-06-06T17:11:30.007550871Z caller=main.go:178 build_context="(go=go1.11.5, user=root@3000aa3a06c5, date=20190131-15:05:40)"

3. 解决尝试1

先删除monitoring下面的所有pod,别担心,删除了pod会自动再创建(前提是你的镜像没有问题), 注意自己挂载的文件

kubectl delete pod -all -n monitoring

再次get检查,如果还是没有成功

4. 检查自己的资源

我自己机器非常小,2核2G,因此我必须要更改副本数,原来的副本数为3,现在更改为1

kubectl edit alertmanager-main -n monitoring

在编辑器中,将副本数改为1,然后保存并退出。

spec:
  replicas: 1

确认 StatefulSet 更新状态

kubectl get statefulset alertmanager-main -n monitoring -o yaml | grep replicas

设置之后,我删除了alertmanager-main的pod。重新只启动了一个,但是没有再出现CrashLoopBackoff的错误。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值