参考网址:
1. 阿里云ECS安装zookeeper
环境:我安装的是zookeeper3.4.11,使用的是伪分布式安装
方法:将云服务器的/etc/hosts
文件外网IP地址修改为内网IP地址,或者ZooKeeper配置文件的地址修改为localhost,重新启动ZooKeeper,这样ZooKeeper能正常启动。
eg:
cd /etc
vim hosts
问题现状:外部机器使用ECS外网IP就不能连接操作ZooKeeper了
在本地环境可以正常访问:./zkServer.sh -server ning:2184,
但是我使用myeclise的Apache cutator去访问的时候就无法访问了,并且我通过win10的cmd命令去连接:telnet 外网ip 2184
注:我在zookeeper配置的客户访问端口是2184
解决办法:
1. 进入阿里云ECS实例控制台,之后进入安全组开放对外访问的端口
由于阿里云Ecs设有ip端口的限制,所以需要进行开发;同时服务器上的防火墙也要进行相应的设置,这里可以直接关闭防火墙;
如下是具体步骤:
说明:这里添加安全组规则可以直接选择克隆复制一份,具体参数的设置可根据需要选择协议类型及设置对应端口范围,为了省事,我选择协议类型为全部。
点击确定
,安全组规则设置完成。
最后测试:
win10的cmd终端输入:
telnet 外网ip 端口
之后除了一个空白的页面,这样Windows或MAC机器就能使用ECS提供的外网IP访问到ZooKeeper了,如果还是不可以访问,则会提示连接错误等的错误信息。