
Tenho a impressão de que é possível, potencialmente, ter vários nós JobTracker configurados para compartilhar o mesmo conjunto de nós MR (TaskTracker). Eu sei que, convencionalmente, todos os nós em um cluster Hadoop devem ter o mesmo conjunto de arquivos de configuração (convencionalmente em /etc/hadoop/conf/
--- pelo menos para a Cloudera Distribution of Hadoop (CDH). Podemos definir vários Job Trackers em mapred-site.xml
? Algo como:
<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>
Ou existe alguma outra sintaxe permitida para isso?
Quais são as implicações de fazer isso. Cada JobTracker obtém informações sobre a carga em cada nó do TaskTracker. Em outras palavras, os dois JobTrackers podem coordenar seu agendamento nos nós TT apenas com base nas informações de fofoca dos TTs ou eles precisariam conversar um com o outro?
Isso está documentado em algum lugar?
Responder1
Vários JobTracker podem ser úteis na arquitetura Multi-Cluster. Assim, a carga no nível do cluster pode ser distribuída entre os JobTrackers.
Em um único cluster, seguir pode se tornar um problema.
(a) Se vários servidores JobTracker compartilharem um cluster HDFS, cada um deverá ter um mapred.system.dir diferente, ou os JobTrackers excluirão os arquivos de trabalho uns dos outros.
(b) O script administrativo "Iniciar tudo ou parar tudo" se tornará um problema, a menos que cada um obtenha uma porta diferente.