Hadoop集群中多个JobTracker节点的含义?

我得到的印象是,可能会有多个JobTracker节点configuration为共享同一组MR(TaskTracker)节点。 我知道,通常情况下,Hadoop集群中的所有节点应该具有相同的configuration文件集(传统上在/etc/hadoop/conf/ —至less在Hadoop的Cloudera Distribution(CDH) mapred-site.xml工作追踪器?例如:

 <configuration> <property> <name>mapred.job.tracker</name> <value>jt01.mydomain.not:8021</value> </property> <property> <name>mapred.job.tracker</name> <value>jt02.mydomain.not:8021</value> </property> ... </configuration> 

还是有一些其他允许的语法呢?

这样做的含义是什么? 每个JobTracker是否获取有关每个TaskTracker节点上的负载的信息? 换句话说,两个JobTracker只能根据来自TTs的八卦信息来协调他们在TT节点上的调度,还是需要彼此交谈?

这是logging在任何地方?

多个JobTracker在多集群体系结构中可能很有用。 所以集群级别的负载可以分布在JobTracker之间。

在一个集群中,以下可能会成为问题。

(a)如果多个JobTracker服务器共享一个HDFS集群,则每个服务器都必须有不同的mapred.system.dir,否则JobTracker将删除彼此的作业文件。

(b)pipe理员脚本“开始全部或全部停止”将成为一个问题,除非每个端口都有不同的端口。