我正在学习hadoop并且对默认端口和位置感到困惑 .
当我点击URL:localhost:50070给出了hdfs信息的结果 . 在hadoop文档中,以下是一些提到的端口 .
hdfs-default.xml
dfs.datanode.http.address 0.0.0.0:50075
dfs.datanode.address 0.0.0.0:50010
dfs.namenode.http-address 0.0.0.0:50070
dfs.namenode.backup.http-address 0.0.0.0:50105
mapred-default.xml
mapreduce.jobtracker.http.address 0.0.0.0:50030
mapreduce.tasktracker.http.address 0.0.0.0:50060
yarn-default.xml
yarn.resourcemanager.address ${yarn.resourcemanager.hostname}:8032
yarn.resourcemanager.webapp.address ${yarn.resourcemanager.hostname}:8088
现在,在我的机器中配置Hadoop 2时,我做了:$ cd / usr / local / hadoop / etc / hadoop $ vi core-site.xml
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
问题:默认情况下提到了很多端口,文档中有其他xml ....
1)localhost:50070只返回一些含义完整数据(hdfs health)的其他端口怎么样 . 其他人只是不回信息?
2)在yarn-default.xml中都是资源管理器端口,区别在于一个是webapp端口 . 只有当我点击localhost:8088时,它才会给出集群(本例中是单节点)信息 . 那么端口8083是什么?在示例代码中,我看到8083是RM端口 . 我不清楚 . 有人可以解释一下
3)我将hdfs端口更改为9000是那个标准吗?
4)如何查看appmaster,jobtracker,tasktracker端口
5)我认为在纱线hadoop 2中没有jobtracker和tasktracker那么这些端口的目的是什么?
我正在做这些基本问题的噩梦......
谢谢,阿米特
3 回答
Hadoop提供Web UI以查看hadoop集群 . 它们有助于通过浏览器了解群集状态,作业详细信息(运行,失败)等 . 这是一个很大的缓解,因为我们不想记住这些命令的所有命令,并尝试从终端 . 您已经指出了这些所需的一些重要端口(这些是默认端口,您可以通过在配置文件中播放来更改这些端口) .
现在我将逐一回答你的问题 . 我假设hadoop在core-site.xml处于伪模式查看 .
我会用你提供的细节来解释它,以避免混淆 .
其余的端口也用于从浏览器连接,如localhost:50075用于查看datanode详细信息,localhost:8088用于查看当前正在运行的作业,已完成的作业等等 . 没有像http-address,webapp.address这样的细节的属性用于进程间通信(IPC) . 这些端口的示例是8032,50010等 .
我希望我已经在上面的答案中清除了这个疑问 .
默认端口号为8020.您可以保留任何端口号 . 但我不知道将它设置为9000是一个标准 . 我在一些供应商提供的除了apache以外的hadoop中看到过它 .
我实际上无法理解你的问题 . 如果您打算询问的是关于webui的,我们已经在问题1的答案中介绍了它 .
据我所知,YARN是mapreduce和hadoop之间的一个层,用于更好地管理资源和工作 . 因此,这意味着jobtracker和tasktracker进程仍然存在(在后台),并在需要时由资源管理器和nodemanager进程使用 .
如果我在某个地方出错,有人可以纠正我 .
谢谢和问候,比宾
Amit,有很多端口被hadoop监控,还有很多hadoop守护进程 . 每个监视特定端口(您可以覆盖)由于特定原因 . 文档列出了端口及其用途 . 例如,Hadoop 2中的资源管理器YARN有一个监视作业提交的端口,yarn.resourcemanager.address . 您可以在conf / yarn-site.xml中覆盖该端口(不要) . 它还使用一个端口yarn.resourcemanager.webapp.address作为其用户界面,另一个使用yarn.resourcemanager.admin.address作为管理命令 . 同样,HDFS监视50070作为其Web地址,并返回有关文件系统的信息 . 一般来说,离开端口是一个好主意,因为人们会学习众所周知的端口号并期望它们(你不会期望默认端口telnet或要移动的ftp) . 请记住,纱线和MR可以在同一个集群上运行 . 一些发行版都有 .
在使用Hadoop 2.6.5时,您正在寻找的三个主要端口是:
8088群集指标
50070 HDFS / datanode运行状况
19888历史服务器
在您的Vagrantfile中,打开这三个端口以进行端口转发:
其他端口是服务端口的内部服务,不需要任何修改 . 您需要发出命令:
vagrant reload --provision
以激活这些端口 .此外,您需要将
hadoop-2.6.5/etc/hadoop/yarn-site.xml
中的值"localhost"修改为0.0.0.0而不是localhost,以使端口转发8088正常工作 . 确保您的dfs,yarn和historyservices也已启动 .