prometheus进入容器报错::rpc error: code = 2 desc = containerd: container not found

  1. prometheus采集数据以及相关proemtheus的前端页面无法访问,报错502
  2. 由于是使用容器启动的,执行docker exec命令进入容器时报错,报错信息为:
    rpc error: code = 2 desc = containerd: container not found
  3. 以上错误是因为系统内存不足,导致OOM Killer杀掉prometheus进程,该进程就是上一步中docker exec命令想作用到的容器;
  4. 日志中查找进程被kill情况,确认我们的猜测
    grep "killed process" -ri /var/log
    Killed process 2394 (prometheus) total-vm:136802772kB, anon-rss:12521944kB, file-rss:0kB, shmem-rss:0kB
    dmesg|grep memory 查看内存日志信息
    Out of memory: Kill process 2394 (prometheus) score 393 or sacrifice child
  5. docker ps 查看容器显示是正常的,容器并没有stop掉
  6. docker logs prometheus 显示已经很久没有输出日志
  7. docker exec -it prometheus /bin/bash
    报错: rpc error: code = 2 desc = containerd: container not found
  8. 这里给我们显示prometheus还在运行的假象是因为内存系统内存不足,导致OOM Killer将prometheus进程杀掉,但是docker服务没有同步到这个信息,因此尽管进程不在了,但是docker ps可以看到,不过docker exec不会起作用,因为进程已经没了;
  9. 这时候docker stop 或者 docker kill 都已经不行了,只能重启docker
    service docker restart
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值