说明: hadoop 生产环境为 如下:
yum list installed | grep hadoop
hadoop.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-0.20-mapreduce.x86_64
hadoop-client.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-hdfs.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-hdfs-datanode.x86_64
hadoop-hdfs-journalnode.x86_64
hadoop-hdfs-namenode.x86_64
hadoop-hdfs-zkfc.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-lzo.x86_64 0.4.15+cdh5.1.3+0-1.cdh5.1.3.p0.11.el6
hadoop-mapreduce.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-yarn.x86_64 2.3.0+cdh5.1.3+824-1.cdh5.1.3.p0.13.el6
hadoop-yarn-nodemanager.x86_64
hadoop-yarn-resourcemanager.x86_64
至于Hadoop Yarn 我已经在博客的另有文章总结,再此不详细说明(是挺多不一样的~~)。
编译好的插件包,这里给大家分享一下
http://pan.baidu.com/s/1pJ2XVbd
把编译好的jar 放到eclipse\plugins文件夹下,然后
进入mapreduce配置环境。 其中,Location name可任意填写,Mapreduce Master中Host为resourcemanager机器ip,Port为 resourcemanager接受任务的端口号,即yarn-site.xml文件中 yarn.resourcemanager.scheduler.address配置项中端口号。DFS Master中的Host为namenode机 器ip,Port为core-site.xml文件中fs.defaultFS配置项中端口号。
Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问。而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如此,以便查询。
这里包含我们使用到的组件:HDFS, YARN, HBase, Hive, ZooKeeper:
件 节点 默认端口 配置 用途说明 HDFS DataNode 50010 dfs.datanode.address datanode服务端口,用于数据传输 HDFS DataNode 50075 dfs.datanode.http.address http服务的端口 HDFS DataNode 50475 dfs.datanode.https.address https服务的端口 HDFS DataNode 50020 dfs.datanode.ipc.address ipc服务的端口 HDFS NameNode 50070 dfs.namenode.http-address http服务的端口 HDFS NameNode 50470 dfs.namenode.https-address https服务的端口 HDFS NameNode 8020 fs.defaultFS 接收Client连接的RPC端口,用于获取文件系统metadata信息。 HDFS journalnode 8485 dfs.journalnode.rpc-address RPC服务 HDFS journalnode 8480 dfs.journalnode.http-address HTTP服务 HDFS ZKFC 8019 dfs.ha.zkfc.port ZooKeeper FailoverController,用于NN HA YARN ResourceManager 8032 yarn.resourcemanager.address RM的applications manager(ASM)端口 YARN ResourceManager 8030 yarn.resourcemanager.scheduler.address scheduler组件的IPC端口 YARN ResourceManager 8031 yarn.resourcemanager.resource-tracker.address IPC YARN ResourceManager 8033 yarn.resourcemanager.admin.address IPC YARN ResourceManager 8088 yarn.resourcemanager.webapp.address http服务端口 YARN NodeManager 8040 yarn.nodemanager.localizer.address localizer IPC YARN NodeManager 8042 yarn.nodemanager.webapp.address http服务端口 YARN NodeManager 8041 yarn.nodemanager.address NM中container manager的端口 YARN JobHistory Server 10020 mapreduce.jobhistory.address IPC YARN JobHistory Server 19888 mapreduce.jobhistory.webapp.address http服务端口 HBase Master 60000 hbase.master.port IPC HBase Master 60010 hbase.master.info.port http服务端口 HBase RegionServer 60020 hbase.regionserver.port IPC HBase RegionServer 60030 hbase.regionserver.info.port http服务端口 HBase HQuorumPeer 2181 hbase.zookeeper.property.clientPort HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 HBase HQuorumPeer 2888 hbase.zookeeper.peerport HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 HBase HQuorumPeer 3888 hbase.zookeeper.leaderport HBase-managed ZK mode,使用独立的ZooKeeper集群则不会启用该端口。 Hive Metastore 9083 /etc/default/hive-metastore中export PORT=<port>来更新默认端口 Hive HiveServer 10000 /etc/hive/conf/hive-env.sh中export HIVE_SERVER2_THRIFT_PORT=<port>来更新默认端口 ZooKeeper Server 2181 /etc/zookeeper/conf/zoo.cfg中clientPort=<port> 对客户端提供服务的端口 ZooKeeper Server 2888 /etc/zookeeper/conf/zoo.cfg中server.x=[hostname]:nnnnn[:nnnnn],标蓝部分 follower用来连接到leader,只在leader上监听该端口。 ZooKeeper Server 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都会指定间隔验证块信息