首页 文章

Hadoop端口澄清

提问于
浏览
7

我正在学习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 回答

  • 0

    Hadoop提供Web UI以查看hadoop集群 . 它们有助于通过浏览器了解群集状态,作业详细信息(运行,失败)等 . 这是一个很大的缓解,因为我们不想记住这些命令的所有命令,并尝试从终端 . 您已经指出了这些所需的一些重要端口(这些是默认端口,您可以通过在配置文件中播放来更改这些端口) .

    现在我将逐一回答你的问题 . 我假设hadoop在core-site.xml处于伪模式查看 .

    1)localhost:50070只返回一些含义完整数据(hdfs health)的其他端口 . 其他人只是不回复任何信息?

    我会用你提供的细节来解释它,以避免混淆 .

    其余的端口也用于从浏览器连接,如localhost:50075用于查看datanode详细信息,localhost:8088用于查看当前正在运行的作业,已完成的作业等等 . 没有像http-address,webapp.address这样的细节的属性用于进程间通信(IPC) . 这些端口的示例是8032,50010等 .

    2)在yarn-default.xml中都是资源管理器端口,区别在于一个是webapp端口 . 只有当我点击localhost:8088时,它才会给出集群(本例中是单节点)信息 . 那么端口8083是什么?在示例代码中,我看到8083是RM端口 . 我不清楚 . 有人可以解释一下

    我希望我已经在上面的答案中清除了这个疑问 .

    3)我将hdfs端口更改为9000是那个标准吗?

    默认端口号为8020.您可以保留任何端口号 . 但我不知道将它设置为9000是一个标准 . 我在一些供应商提供的除了apache以外的hadoop中看到过它 .

    4)如何查看appmaster,jobtracker,tasktracker端口

    我实际上无法理解你的问题 . 如果您打算询问的是关于webui的,我们已经在问题1的答案中介绍了它 .

    5)我认为在纱线hadoop 2中没有jobtracker和tasktracker那么这些端口的目的是什么?

    据我所知,YARN是mapreduce和hadoop之间的一个层,用于更好地管理资源和工作 . 因此,这意味着jobtracker和tasktracker进程仍然存在(在后台),并在需要时由资源管理器和nodemanager进程使用 .

    如果我在某个地方出错,有人可以纠正我 .

    谢谢和问候,比宾

  • 2

    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可以在同一个集群上运行 . 一些发行版都有 .

  • 0

    在使用Hadoop 2.6.5时,您正在寻找的三个主要端口是:

    • 8088群集指标

    • 50070 HDFS / datanode运行状况

    • 19888历史服务器

    在您的Vagrantfile中,打开这三个端口以进行端口转发:

    config.vm.network "forwarded_port", guest: 8088, host: 8088
    config.vm.network "forwarded_port", guest: 19888, host: 19888
    config.vm.network "forwarded_port", guest: 50070, host: 50070
    

    其他端口是服务端口的内部服务,不需要任何修改 . 您需要发出命令: vagrant reload --provision 以激活这些端口 .

    此外,您需要将 hadoop-2.6.5/etc/hadoop/yarn-site.xml 中的值"localhost"修改为0.0.0.0而不是localhost,以使端口转发8088正常工作 . 确保您的dfs,yarn和historyservices也已启动 .

相关问题