目前的架构是这样组织的:
每台机器有以下configuration:
我目前遇到的问题是,当我启动docker容器与桥接模式的服务,该地址是由DNS解决,因为它应该是(如果你有luigi.service.consul它将完成没有问题) ,但是当我尝试CURL -L http://luigi.service.consul/ ,我有随机503 error codes ,有时地址parsing,有时不是。
任何想法如何调查?
我检查了/etc/resolv.conf并且/etc/resolv.conf地,我可以看到DNS地址更改为旧的DNS IP地址(8.8.8.8),我应该使用主机IP地址作为DNS IP,还是我需要使用领事领导地址?
我已经尝试debuggingtcpflow,当响应是503,就像等待一段时间,就像它是无法解决的服务。
需要一些时间来获取Docker镜像,启动容器,并最终开始提供服务请求。 理想情况下,您应该在新实例准备好的时候重新加载HAProxy。 但是,您的旧实例可能仍有活动连接。 当你开始调查这个问题的时候,事实certificate,一个解决scheme已经存在了,这就是所谓的蓝绿configuration ,如M. Fowler所描述的那样。
如果您的目标是零停机时间,那么不会有一个小问题。 Yelp工程师通过向iptables添加额外的规则来描述如何以真正的零停机时间重新加载HAProxy。
最近, 蓝绿色的部署scheme被合并为马拉松 – 磅 (包括来自Yelp的iptables技巧)。 我认为现在的consul-mesos不支持这个。