Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问。而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如此,以便查询。
这里包含我们使用到的组件:HDFS, YARN, HBase, Hive, ZooKeeper。
组件 Daemon
端口 配置 说明
HDFS DataNode
50010 dfs.datanode.address
datanode服务端口,用于数据传输
50075
dfs.datanode.http.address http服务的端口
50475
dfs.datanode.https.address https服务的端口
50020
dfs.datanode.ipc.address ipc服务的端口
NameNode
50070 dfs.namenode.http-address
http服务的端口
50470
dfs.namenode.https-address https服务的端口
8020
fs.defaultFS 接收Client连接的RPC端口,用于获取文件系统metadata信息。
journalnode
8485 dfs.journalnode.rpc-address
RPC服务
8480
dfs.journalnode.http-address HTTP服务
ZKFC
8019 dfs.ha.zkfc.port
ZooKeeper FailoverController,用于NN HA
YARN ResourceManager
8032 yarn.resourcemanager.address
RM的applications manager(ASM)端口
8030
yarn.resourcemanager.scheduler.address
scheduler组件的IPC端口
8031
yarn.resourcemanager.resource-tracker.address
IPC
8033
yarn.resourcemanager.admin.address IPC
8088
yarn.resourcemanager.webapp.address http服务端口
NodeManager
8040 yarn.nodemanager.localizer.address
localizer IPC
8042
yarn.nodemanager.webapp.address http服务端口
8041
yarn.nodemanager.address NM中container manager的端口
JobHistory Server
10020 mapreduce.jobhistory.address
IPC
19888
mapreduce.jobhistory.webapp.address http服务端口
HBase Master
60000 hbase.master.port
IPC
60010
hbase.master.info.port http服务端口
RegionServer
60020 hbase.regionserver.port
IPC
60030
hbase.regionserver.info.port http服务端口
HQuorumPeer
2181 hbase.zookeeper.property.clientPort
HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。
2888
hbase.zookeeper.peerport HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。
3888
hbase.zookeeper.leaderport HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。
Hive Metastore
9083 /etc/default/hive-metastore中export PORT=<port>来更新默认端口
HiveServer
10000 /etc/hive/conf/hive-env.sh中export HIVE_SERVER2_THRIFT_PORT=<port>来更新默认端口
2888 /etc/zookeeper/conf/zoo.cfg中server.x=[hostname]:nnnnn[:nnnnn],标蓝部分 follower用来连接到leader,只在leader上监听该端口。
3888 /etc/zookeeper/conf/zoo.cfg中server.x=[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。
这个请求的处理类:org.apache.hadoop.jmx.JMXJsonServlet
而特定的Daemon又有特定的URL路径特定相应信息。
NameNode:http://:50070/
/dfshealth.jsp
HDFS信息页面,其中有链接可以查看文件系统
/dfsnodelist.jsp?whatNodes=(DEAD|LIVE)
显示DEAD或LIVE状态的datanode
/fsck
运行fsck命令,不推荐在集群繁忙时使用!
DataNode:http://:50075/
/blockScannerReport
每个datanode都会指定间隔验证块信息
///
端口 | 用途 |
9000 | fs.defaultFS,如:hdfs://172.25.40.171:9000 |
9001 | dfs.namenode.rpc-address,DataNode会连接这个端口 |
50070 | dfs.namenode.http-address |
50470 | dfs.namenode.https-address |
50100 | dfs.namenode.backup.address |
50105 | dfs.namenode.backup.http-address |
50090 | dfs.namenode.secondary.http-address,如:172.25.39.166:50090 |
50091 | dfs.namenode.secondary.https-address,如:172.25.39.166:50091 |
50020 | dfs.datanode.ipc.address |
50075 | dfs.datanode.http.address |
50475 | dfs.datanode.https.address |
50010 | dfs.datanode.address,DataNode的数据传输端口 |
8480 | dfs.journalnode.rpc-address |
8481 | dfs.journalnode.https-address |
8032 | yarn.resourcemanager.address |
8088 | yarn.resourcemanager.webapp.address,YARN的http端口 |
8090 | yarn.resourcemanager.webapp.https.address |
8030 | yarn.resourcemanager.scheduler.address |
8031 | yarn.resourcemanager.resource-tracker.address |
8033 | yarn.resourcemanager.admin.address |
8042 | yarn.nodemanager.webapp.address |
8040 | yarn.nodemanager.localizer.address |
8188 | yarn.timeline-service.webapp.address |
10020 | mapreduce.jobhistory.address |
19888 | mapreduce.jobhistory.webapp.address |
2888 | ZooKeeper,如果是Leader,用来监听Follower的连接 |
3888 | ZooKeeper,用于Leader选举 |
2181 | ZooKeeper,用来监听客户端的连接 |
60010 | hbase.master.info.port,HMaster的http端口 |
60000 | hbase.master.port,HMaster的RPC端口 |
60030 | hbase.regionserver.info.port,HRegionServer的http端口 |
60020 | hbase.regionserver.port,HRegionServer的RPC端口 |
8080 | hbase.rest.port,HBase REST server的端口 |
10000 | hive.server2.thrift.port |
9083 | hive.metastore.uris |
其中最常用的应该是50070和8088了,WEB界面中监控hdfs:
http://ip:50070/
WEB界面中监控任务执行状况:
http://ip:8088/