我正在学习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
纱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 ports
5)我认为在纱线hadoop 2中没有jobtracker和tasktracker那么这些端口的目的是什么?
我正在做这些基本问题的噩梦......
谢谢, 阿米特
答案 0 :(得分:2)
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 ports
我实际上无法理解你的问题。如果您打算询问的是关于webui的,我们已经在问题1的答案中介绍了它。
5)我认为在纱线hadoop 2中没有jobtracker和tasktracker那么这些端口的目的是什么?
据我了解,YARN是mapreduce和hadoop之间的一个层,用于更好地管理资源和工作。因此,这意味着jobtracker和tasktracker进程仍然存在(在后台),并在需要时由资源管理器和nodemanager进程使用。
如果我在某处出错,有人可以纠正我。
谢谢和问候, Bibin
答案 1 :(得分:0)
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可以在同一个集群上运行。有些发行版都有。
答案 2 :(得分:0)
在使用Hadoop 2.6.5时,您正在寻找的三个主要端口是:
在您的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
以激活这些端口。
此外,您需要修改值&#34; localhost&#34;在hadoop-2.6.5/etc/hadoop/yarn-site.xml
中说0.0.0.0而不是localhost,以使portforwarding 8088工作。确保您的dfs,yarn和historyservices也已启动。
答案 3 :(得分:0)
对于Hadoop 3,它更改为:
HDFS /数据节点运行状况:http://localhost:9870/