Mesos& zookeeper使用随机端口与同行进行通信

时间:2016-05-17 09:10:04

标签: apache-zookeeper mesos mesosphere rhel6

  • 我是mesos的新手,我已经配置了3个主人的mesos群集设置 和rhel6.7机器中的2个奴隶
  • 我使用了可用的rpm包来安装mesos。我已经下载了zookeeper.tar.gz并使用了zookeeper的二进制文件,其配置是 enter image description here

  • 使用以下参数启动mesos-master enter image description here

  • 添加了一些接受端口传入和传出的规则(5050,8080,2181,2888,3888)。我已使用以下步骤添加规则。 enter image description here
  • 启动了三个主人并且我已经看到了日志,无法与其他人进行通信,三个主服务器正在崩溃,然后我刷新了(iptales -F)所有规则并启动了三个服务器并且能够进行通信并且正常工作,我在领先的mesos master上做了netstat,知道用于通信的端口。我认为使用除2181,5050,2888,3888和8080之外的更多端口我看到有更多端口用于通信。我已经附上了屏幕截图。
  • 我们在生产环境中有防火墙,它不可能允许所有端口处于自豪的环境中 enter image description here enter image description here enter image description here
  • mesos和zookeepr会使用随机端口进行通信吗(在 屏幕截图使用39958,38574,40097等。)?
  • 如果使用随机端口,我们可以使用forceport选项来避免 使用zookeeper或mesos中的随机端口? - 是否有解决此类问题的方法? - 有人可以提出解决此问题的建议吗?

1 个答案:

答案 0 :(得分:1)

由于Zookeeper服务器既充当客户端(尝试连接到其他服务器)又充当服务器(侦听来自其他ZK服务器的连接),因此在尝试连接到另一台服务器(作为客户端)时,必须选择一个临时端口。

此临时端口取自以下命令输出定义的范围。

  

sysctl net.ipv4.ip_local_port_range

即:对于我的机器,端口范围是

  

net.ipv4.ip_local_port_range = 32768 60999

我们可以通过使用以下命令更改端口范围来减少短暂端口。

  

sudo sysctl -w net.ipv4.ip_local_port_range =“1024 1050”