目录

  • 简介
  • 解决方法
  •         1.检查指定服务注册中心地址是否正确,是否使用的是默认端口:
  •         2.查看Maven上使用的zookeeper版本与实际运行的zookeeper版本不一致:
  •         3.CentOS的防火墙是否开启:
  •         4.阿里云服务没有开放2181端口:
  •         5.还有个解决方法,我还是不太清楚这个配置方法。主要是用在构建zookeeper集群的时候。
  •         6.进入阿里云的轻量应用服务器管理控制台,在防火墙项中添加规则,把2181端口加进去:


简介

        最近为了方便一些组件的使用,所以在阿里云买了云服务器。由于是新接触云服务器,所以在使用Zookeeper的时候遇到一些问题,由于我是将Zookeeper安装在阿里云服务器上,然后通过外网IP去获取Zookeeper的服务。
        但是在使用过程中,IDEA一直连不上Zookeeper服务,导致我的项目的Dubbo也使用不了。遇到问题当然是马上在网上寻找答案,所以花了好久才解决,网上的各种方法都试过,所以在这里总结一下:

解决方法

        首先就要排除是代码本身有错误,这个因人而异。

<dubbo:registry address="zookeeper://阿里云服务器IP:2181"/>

比如说Maven上使用的zookeeper版本是3.4.x,而服务器上运行的zookeeper版本是3.5.x

        查看防火墙状态

service iptables status

        关闭防火墙

service iptables stop

        操作后要重启防火墙

service iptables restart

        由于为了安全性,刚购买的服务器开放的端口是很少的。

具体操作如下:

        (1)进入云服务器管理控制台,并在点击 网络与安全 栏下的 安全组

连接云服务器不可以使用本地的环境吗 云服务器连不上_linux


        (2)若安全组下的配置空空如也,那就要进行创建安全组了。

连接云服务器不可以使用本地的环境吗 云服务器连不上_连接云服务器不可以使用本地的环境吗_02

连接云服务器不可以使用本地的环境吗 云服务器连不上_linux_03


连接云服务器不可以使用本地的环境吗 云服务器连不上_阿里云_04


连接云服务器不可以使用本地的环境吗 云服务器连不上_连接云服务器不可以使用本地的环境吗_05


        注:对于授权对象这一项,0.0.0.0/0或者掩码为0,代表允许或拒绝所有IP的访问。

        (3)添加安全组后重启服务器

        修改zookeeper配置参数

在每一个zookeeper节点下的zoo.cfg配置文件中加入参数quorumListenOnAllIPs=true
然后再重启zookeeper,就可以正常连接了

quorumListenOnAllIPs:默认为false,如果设为true,zk服务器会监听所有可达IP上的连接。

连接云服务器不可以使用本地的环境吗 云服务器连不上_dubbo_06

        记得添加后重启服务器

        最后,为了解决zookeeper服务的连接,几乎网上的方法都试过一遍,最后到第6种方法才适用,花了半天的时间才解决,所以将自己踩过的坑分享出来,供想使用阿里云服务器作为服务提供方的小伙伴参考。
        如果你觉得这篇文章对你有帮助,点亮下面的图标支持一下。。