Hadoop 2.x-как настроить дополнительный namenode?

У меня есть старая установка Hadoop, которую я хочу обновить до Hadoop 2. В старая настройка, у меня есть файл $HADOOP_HOME/conf/masters, который указывает вторичный узел типа NameNode.

просматривая документацию Hadoop 2, я не могу найти упоминания о файл "masters" или как настроить дополнительный namenode.

любая помощь в правильном направлении будет оценен.

4 ответов


файлы slaves и Master в папке conf используются только некоторыми сценариями в папке bin, такими как start-mapred.sh, start-dfs.sh и start-all.sh сценарии.

эти скрипты являются простым удобством, так что вы можете запускать их с одного узла на ssh в каждый ведущий / ведомый узел и запускать нужные демоны службы hadoop.

эти файлы нужны только на компьютере с узлом name, если вы собираетесь запустить кластер с этого одного узла (без пароля ssh).

кроме того, вы также можете запустить демон Hadoop вручную на машине через

bin/hadoop-daemon.sh start [namenode | secondarynamenode | datanode | jobtracker | tasktracker]

для запуска узла вторичного имени используйте приведенный выше сценарий на назначенных машинах, предоставляющих значение "secondarynamenode" сценарию


см. 2-й комментарий @pwnz0r к ответу на Как отделить вторичный namenode hadoop от первичного namenode?

повторить здесь:

In hdfs-site.xml:
<property> 
   <name>dfs.secondary.http.address</name>
   <value>$secondarynamenode.full.hostname:50090</value>
   <description>SecondaryNameNodeHostname</description>
</property>

Я использую Hadoop 2.6 и должен был использовать

<property> 
    <name>dfs.secondary.http.address</name>
    <value>secondarynamenode.hostname:50090</value>
</property>

для получения дополнительной информации см. https://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml


обновить hdfs-сайт.xml-файл путем обновления и добавления следующего свойства

cd  $HADOOP_HOME/etc/hadoop
sudo vi hdfs-site.xml

затем вставьте эти строки в тег конфигурации

<property> 
    <name>dfs.secondary.http.address</name>
    <value>hostname:50090</value>
</property>