ZooKeeper 占用8080端口

项目场景

利用ZooKeeper,搭建Spark Standalone-HA集群。

问题描述

在启动好zk和spark后去web-ui查看时出现错误

image-20210515111435821

image-20210515111614111

查看日志后发现8080端口被占用(因为我的spark配置文件中指定的wei-ui端口为8080),于是写换到了8081

image-20210515111930196

image-20210515123830333

原因分析

如果只是启动ZK,会发现8080端口被使用,说明是ZK占用了8080端口

image-20210515124322279

查看ZK的日志发现是一个叫AdminServer的东西在使用8080端口,并且路由地址为/commands

image-20210515124508425

这个AdminServer是什么,为什么之前没见过,我在官网找到了一些说明可以进行解释

解决方案

修改端口

按照官网的配置,我们可以修改端口

conf/zoo.cfg

admin.serverPort=8060

查看web-ui,服务正常开启

image-20210516095134116

注意:有一些端口是受限制的,因为它们已经绑定了一些特殊服务,例如22端口是ssh服务,即使设置了端口也不能在浏览器打开web界面

具体的受限制的端口列表在这里查看:https://neo4j.com/developer/kb/list-of-restricted-ports-in-browsers/

但也可以通过修改浏览器设置的方式,允许web使用这些端口

关闭服务

如果觉得这个服务没用的话,也可以在配置文件中关闭

admin.enableServer=false

spark的web正常打开

image-20210516100103141

image-20210516100117569

修改spark端口

conf/spark-env.sh

SPARK_MASTER_WEBUI_PORT=8888
原文地址:https://www.cnblogs.com/pineapple-py/p/14773284.html