美文网首页
Dubbo服务注册到Zookeeper上的IP与本机IP不一致

Dubbo服务注册到Zookeeper上的IP与本机IP不一致

作者: 宁静的猫 | 来源:发表于2021-10-23 15:30 被阅读0次

    1、问题描述

    如图,本地在内网的ip为172.27.43.8,但是服务注册到了zk上后,ip变成了本地的ip:192.168.68.2


    1.jpg
    2.jpg

    2、原因解析
    发布服务到远程zk,dubbo是调用ServiceConfig.doExportUrlsFor1Protocol方法,
    在doExportUrlsFor1Protocol方法中,通过以下两步获取到host和port两个值。


    3.png

    服务注册到zk上所用的ip,正是这个host,这个findConfigedHosts方法,入参就包括protocolConfig。
    因此我们猜想,修改protocolConfig中的host配置,是不是就可以改变服务注册到zk上所显示的ip?

    3、解决方法
    在dubbo的xml配置文件中,配置protocol属性如下:
    <dubbo:protocol name="dubbo" id="dubbo" host="172.27.43.8"/>
    将host改为本地的ip后,重新尝试将服务注册到zk,发现zk上的ip已经变为我们所配置的host,问题解决~

    4.jpg

    相关文章

      网友评论

          本文标题:Dubbo服务注册到Zookeeper上的IP与本机IP不一致

          本文链接:https://www.haomeiwen.com/subject/qnntaltx.html