智能一代云平台(四十一):在docker中部署项目Dubbo上识别为私有地址问题

【前言】

         最近项目在进行联调,在联调的时候遇到一个问题,我们的项目分为七个服务,服务之间有些是存在依赖关系的,比如大部分服务都依赖权限等等;在联调的时候遇到一个问题,在此记录一下。

【遇到问题】

         在服务治理这部分我们项目采用的是Dubbo+zk;另外在集成部署的时候我们也首次采用docker来进行部署;在联调的时候遇到一个问题——docker内部地址跨主机通讯问题;

         1.问题再现:

           (1)我们的Dubbo是装在205的机器上,213和250分别用Docker部署了我们相应的服务A和服务B,现在服务B调用服务A,出现如下情况:

                       智能一代云平台(四十一):在docker中部署项目Dubbo上识别为私有地址问题

         (2)在dubbo上注册的内容:

 智能一代云平台(四十一):在docker中部署项目Dubbo上识别为私有地址问题             

         2.临时解决方案:

         由于是影响联调的进行,我们不敢稍有懈怠查阅了相关资料紧急开了临时会议来商讨解决这个问题;经过探讨和评估我们最终采取临时解决办法如下:

           (1)由于服务处于联调阶段,各方都依赖,所以临时的解决办法是先直接部署在Linux上,让大家的联调不受影响;

           (2)Docker的研究小组继续研究Docker的管理软件类似Kubernetes让整个部署环境都处于同一网段内;

           (3)Dubbo的研究小组深入了解一下Dubbo的***制,可能会涉及到Dubbo的源码;

         3.在解决问题中查到的一些资料:

           (1)DUBBO 使用问题记录

           (2)Docker跨主机网络通信方案

           (3)基于Dubbo的跨主机容器通信遇到的问题

【总结】

       1.在做项目的时候要时刻考虑成本,比如时间成本,人力成本等等;

       2.遇到问题要积极去探索;

       3.要去不断的接触新事物,丰富自己的知识体系。