Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问。而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如此,以便查询。
这里包含我们使用到的组件:HDFS, YARN, HBase, Hive, ZooKeeper。
组件 | Daemon | 端口 | 配置 | 说明 |
HDFS | DataNode | 50010 | datanode服务端口,用于数据传输 | |
50075 | http服务的端口 | |||
50475 | https服务的端口 | |||
50020 | ipc服务的端口 | |||
NameNode | 50070 | -address | http服务的端口 | |
50470 | -address | https服务的端口 | ||
8020 | 接收Client连接的RPC端口,用于获取文件系统metadata信息。 | |||
journalnode | 8485 | -address | RPC服务 | |
8480 | -address | HTTP服务 | ||
ZKFC | 8019 | ZooKeeper FailoverController,用于NN HA | ||
YARN | ResourceManager | 8032 | RM的applications manager(ASM)端口 | |
8030 | scheduler组件的IPC端口 | |||
8031 | IPC | |||
8033 | IPC | |||
8088 | http服务端口 | |||
NodeManager | 8040 | localizer IPC | ||
8042 | http服务端口 | |||
8041 | NM中container manager的端口 | |||
JobHistory Server | 10020 | IPC | ||
19888 | http服务端口 | |||
HBase | Master | 60000 | IPC | |
60010 | http服务端口 | |||
RegionServer | 60020 | IPC | ||
60030 | http服务端口 | |||
HQuorumPeer | 2181 | HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 | ||
2888 | HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 | |||
3888 | HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 | |||
Hive | Metastore | 9083 | /etc/default/hive-metastore中export PORT=<port>来更新默认端口 | |
HiveServer | 10000 | /etc/hive/conf/中export HIVE_SERVER2_THRIFT_PORT=<port>来更新默认端口 | ||
ZooKeeper | Server | 2181 | /etc/zookeeper/conf/中clientPort=<port> | 对客户端提供服务的端口 |
2888 | /etc/zookeeper/conf/中=[hostname]:nnnnn[:nnnnn],标蓝部分 | follower用来连接到leader,只在leader上监听该端口。 | ||
3888 | /etc/zookeeper/conf/中=[hostname]:nnnnn[:nnnnn],标蓝部分 | 用于leader选举的。只在electionAlg是1,2或3(默认)时需要。 |
所有端口协议均基于TCP。
对于存在Web UI(HTTP服务)的所有hadoop daemon,有如下url:
/logs
日志文件列表,用于下载和查看
/logLevel
允许你设定log4j的日志记录级别,类似于hadoop daemonlog
/stacks
所有线程的stack trace,对于debug很有帮助
/jmx
服务端的Metrics,以JSON格式输出。
/jmx?qry=Hadoop:*会返回所有hadoop相关指标。
/jmx?get=MXBeanName::AttributeName 查询指定bean指定属性的值,例如/jmx?get=Hadoop:service=NameNode,name=NameNodeInfo::ClusterId会返回ClusterId。
这个请求的处理类:
而特定的Daemon又有特定的URL路径特定相应信息。
NameNode:http://:50070/
/
HDFS信息页面,其中有链接可以查看文件系统
/?whatNodes=(DEAD|LIVE)
显示DEAD或LIVE状态的datanode
/fsck
运行fsck命令,不推荐在集群繁忙时使用!
DataNode:http://:50075/
/blockScannerReport
每个datanode都会指定间隔验证块信息