gpt4 book ai didi

amazon-web-services - Zookeeper 无法监听 3888 端口

转载 作者:行者123 更新时间:2023-12-03 15:47:21 31 4
gpt4 key购买 nike

我在 aws 上有 3 台服务器。每个开放 jdk 7 和 zookeeper 3.4.6 都有唯一的弹性 ip。
每个 conf/zoo.cfg 都有

  • 客户端端口=2181
  • server.1=server1:2888:3888
  • server.2=server2:2888:3888
  • server.3=server3:2888:3888

  • 然后我用 ./zkServer.sh start 启动它(说 STARTED)
    和 zookeeper.out 说
    2015-01-14 09:27:55,919 [myid:1] - INFO  [Thread-1:QuorumCnxManager$Listener@504] - My election bind port: /server1ipaddress:3888
    2015-01-14 09:27:55,920 [myid:1] - ERROR [/server1ipaddress:3888:QuorumCnxManager$Listener@517] - Exception while listening
    java.net.BindException: Cannot assign requested address
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
    at java.net.ServerSocket.bind(ServerSocket.java:376)
    at java.net.ServerSocket.bind(ServerSocket.java:330)
    at org.apache.zookeeper.server.quorum.QuorumCnxManager$Listener.run(QuorumCnxManager.java:507)

    所以它无法打开端口。
    我最终在 aws security 上打开了所有端口以排除这种情况。
  • 用 ruok telnet 进入 2181 得到 imok。
  • telnet 到 2888 无法连接。拒绝连接。
  • telnet 进入 3888 无法连接。拒绝连接。

  • netstat 显示没有任何东西阻塞 2888 和 3888

    我什至在所有 3 个启动了 Zookeeper 的服务器上都尝试过这个。
    这是怎么回事?我如何打开这些端口以供使用。

    最佳答案

    您的问题得到解答 here .
    简而言之:在每台 ZooKeeper 机器上,在您的 conf/zoo.cfg , 你必须设置当前服务器的IP为0.0.0.0 .
    例如:如果您当前在 server1 上,则配置应包含以下几行:

    server.1=0.0.0.0:2888:3888
    server.2=server2:2888:3888
    server.3=server3:2888:3888
    这一步解决了我的问题。

    关于amazon-web-services - Zookeeper 无法监听 3888 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27940140/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com