dubbo注册时出现主机上没有的IP的解决方案
来源:互联网 发布:js特效比较好的网站 编辑:程序博客网 时间:2024/05/29 03:38
转载至:http://blog.csdn.net/mzpmzk/article/details/51488494
Dubbo服务主机IP没有绑定的坑(dubbo注册时出现主机上没有的IP的解决方案)
初次使用dubbo,在研发环境和测试环境测试没有问题,然后将服务上线,上线后,Dubbo服务端启动正常,客户端启动失败,并提示
- Caused by: java.lang.IllegalStateException: Failed to check the status of the service com.xxx.xxx.service.LoginService. No provider available for the service com.xxxx.xxxx.service.LoginService:3.0 from the url zookeeper://202.106.199.37:2181/com.alibaba.dubbo.registry.RegistryService?anyhost=true&application=xxx&application.version=3.0&check=false&default.timeout=5000&dubbo=2.5.3&interface=com.xxx.xxx.service.LoginService&methods=aLogin,bPassword,userLogin,modifyPasswordLogin,validate,fVersion,xLogout,userLogout,getTest,getCode,aLogin,aToken,aUser&pid=2200&revision=1.0&side=consumer×tamp=1462534379328&version=3.0 to the consumer 202.106.199.37 use dubbo version 2.5.3
意思是启动消费者服务的时候,检查Dubbo提供的服务接口时异常,在消费者服务器上,访问不了zookeeper://202.106.199.37:2181/com.alibaba.dubbo.registr这个地址提供的服务。
排查这个问题时,发现:
1. 202.106.199.37并不是生产者,消费者服务器上设置的IP地址,一个莫名跑出来的IP地址
2. zookeeper的配置是<dubbo:registry protocol="zookeeper" address="192.168.0.123:2181" /> ,怎么会变成zookeeper://202.106.199.37:2181/了
3. 在DubboAdmin管理控制台,发现生产者,消费者都有,就是生产者端提示没有消费者。
4. 生产环境有VPN,测试环境也有VPN,测试环境没有事,在生产环境却出问题,所以排除VPN的问题。
通过搜索问题,发现很多人出现类似问题,就是Dubbo在有VPN的机器上需要绑定主机公网IP,但是公网IP是映射过来的,所以解决路径走不通。
另外一个是说Dubbo使用了一个DNS的地址,通过修改Dubbo服务器上的DNS配置【vim /etc/resolv.conf 】把服务名称改到DNS上去就可以了。这个我没有做。觉得太麻烦。
最后还是觉得应该是IP绑定的事。把管理控制台中【dubbo/webapps/ROOT/WEB-INF/dubbo.properties】文件中加入【dubbo.protocol.host=192.168.0.123】,然后在Dubbo服务端spring的dubbo配置文件【<dubbo:protocol name="dubbo" port="20885" />】中加入【 host="192.168.0.123"】,在Dubbo消费者端加入【<dubbo:protocol host="192.168.0.123" />】的配置。然后重启Dubbo管理员控制台、停止消费者端,停止服务提供端,启动服务提供端,再启动消费者端。去管理控制台刷新看看,是不是一切都正常了!
说明:我们线上目前就一台机器,所以服务端和消费者端都是同一个IP地址,如果你是服务器集群,这个仅供参考。
192.168.0.123这个IP地址是VPN给内网映射的IP地址,其他IP地址和本机的IP地址没有试过行不行,所以需要自行测试。
- Dubbo服务主机IP没有绑定的坑(dubbo注册时出现主机上没有的IP的解决方案)
- Dubbo服务主机IP没有绑定的坑(dubbo注册时出现主机上没有的IP的解决方案)
- dubbo注册时出现主机上没有的IP的解决方案
- Python在windows主机上的注册
- dubbo注册zookeeper时出现未知ip地址url:dubbo://202.106.199.38:20880
- 没有IP地址的主机如何保持IP层联通
- 将Oracle数据库安装在Windows动态IP主机上的解决方案
- Dubbo的注册中心
- ens33网卡没有IP地址的解决方案
- 主机上无法访问虚拟机上的网页——解决方案
- 改主机IP后 OracleDBConsole不能启动的解决方案
- 到主机的TCP/IP连接失败 解决方案
- 到主机的TCP/IP 连接失败解决方案
- 到主机的TCP/IP 连接失败解决方案
- Dubbo注册dubbo服务的源码分析
- hadoop搭建,上传文件时出现错误,没有到主机的路由
- 服务器 没有在限定的时间内用 DCOM 注册 解决方案
- 主机的IP配置
- b2b b2c o2o javaweb 电子商务微服务云平台
- Hive 批量数据迁移
- 很多人眼中的SEO?仅仅是推广?发文章?
- 基于LBSN数据的推荐系统研究与实现
- leetcode 552. Student Attendance Record II 学生出勤记录 + 动态规划DP
- dubbo注册时出现主机上没有的IP的解决方案
- Python学习第一课
- 由一个单例所想到的
- C++中的Lambda表达式详解
- Umeng友盟的小问题 Unable to get provider com.umeng.message.provider.MessageProvider
- python Windows环境下文件路径问题
- 【自用】HTML CSS相关学习小结 171218
- OpenCV_估算图像之间的投影关系
- 为什么选择桌面云?