一个由Docker引发的问题

项目上Akamai的回归测试运行在数据中心一台用Puppet管理的固定的虚拟服务器上,这台服务器是Bamboo Agent,负责运行所有遗留系统的自动化部署任务。

前几天一个客户的Ops找我帮忙一起让这台服务器支持Docker,然后将测试放在docker中运行。我们修改puppet脚本,然后更新了Docker,结果发现2.6的内核最多运行docker 1.7,而运行测试的docker compose需要的docker客户端要高于1.7。 鉴于改动较大,于是我们换一种思路,用在AWS账户下已有的Bamboo docker agent去运行测试。所以revert了Puppet修改,并且在服务器上运行。

以为一切都结束了,没想到过了几天,另一个组的Ops来找我说staging的部署失败了,问我什么原因,提示大意是没有找到NetScaler服务器的路由。我觉得很奇怪,就看了眼服务器上的路由表。结果发现了下面的现象:


Destination    Gateway        Genmask        Flags Metric Ref    Use Iface

172.17.0.0      *              255.255.0.0    U    0      0        0 docker0

囧,staging的IP range也是172.17,原来是这个原因。

于是,先停止这个网络设备,然后删除,之后再重启网络服务解决问题。


ip link down docker0

ip link del docker0

service network restart

我觉得从这个错误中可以学到两个事情

  1. 配置管理工具的不可靠性,Puppet并没有完整的清理掉所有docker相关的东西

  2. 这种Pet服务器的不可靠性,如果服务器是每天都按照配置重新创建也不会出现这样的问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,700评论 15 147
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,464评论 19 139
  • 什么是基础设施 在IT领域,当我们谈论基础设施时,我们都在谈论什么呢?一般来讲,我们会直觉的认为服务器就是基础设施...
    iambowen阅读 13,943评论 2 38
  • 当我还在干保险的时候,我就接触了外卖小哥。市面上的外卖平台最牛的非美团莫属,其他的还有百度、饿了么,尚班族等。 还...
    村头愚农阅读 50,068评论 937 848
  • 心态改变一切…… 以前的我凡事斤斤计较⋯ 以前的我无理取闹⋯ 以前的我把每件事小事想得很复杂⋯ 以前的我很在乎他的...
    幸福算什么阅读 1,735评论 0 0