docker build run 卡住_容器云实践:记一次艰难的docker故障排查之旅

前言

容器云在拍拍贷实践已经有半年多时间了,已经有超过100多个应用部署在容器云上面。拍拍贷的容器技术采用的是docker-1.13,容器编排使用kubernetes-1.11。

虽说它们都是业内著名的开源系统,但是要应用到具体的公司,具体的场景难免还是会采坑。即使大多数的坑前人都已经踩过,也难免会遇到翻遍搜索引擎都找不到答案的问题。

拍拍贷容器云实践过程中就踩了一个深坑。由于此问题会影响容器正常的创建和删除,当时就影响了应用的发布。当时无法找到问题的原因,无奈只能重启docker解决。可是后面这个问题频发,严重影响了容器云的使用体验,为此我们开始了一次艰难的docker故障排查之旅

在正文开始之前我们总结了排查问题的心得感悟,就是一定要用好日志、dump和源码三大利器。

6381756757547fa5d826d621544592a2.png

日志

通过日志排查问题是最有效也是最直接的方式。通过提取日志中的关键词,在搜索引擎里面进行查找,可以找到大部分问题的解决方法。

dump

        通过日志和搜索引擎无法解决的问题,此类问题一般属于新问题或者疑难杂症。需要进一步分析系统内部状态进行定位。

dump就是输出堆栈或线程信息,可以查看系统内部的数据以及线程的运行状态。例如JAVA开发者就会经常dump堆栈内容排查内存资源的泄漏问题。

code

通过日志发现的错误关键词和dump出来的数据最终都需要结合源码做进一步的分析。源码是解释系统运行行为最好的方式,在源码里你可以发现系统出问题的根本原因

排查之旅开始

1、基于日志信息的问题排查

此次故障发生在4月16日的测试环境,问题的表现是容器无法删除和创建。查看日志(kubelet和dockerdaemon的日志写在/var/log/messages)发现频繁的报这个错误:

E0416 18:37:57.549265 31182 kubelet.go:1512] error k
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值