Hadoop на OSX "Невозможно загрузить информацию о области из SCDynamicStore" - PullRequest
57 голосов
/ 21 августа 2011

Я получаю эту ошибку при запуске Hadoop в OSX 10.7:

Невозможно загрузить информацию о области из SCDynamicStore, положить: org.apache.hadoop.hdfs.server.namenode.SafeModeException: не удается создатькаталог / пользователь / travis / input / conf.Имя узла находится в безопасном режиме.

Похоже, что оно не вызывает каких-либо проблем с функциональностью Hadoop.

Ответы [ 7 ]

76 голосов
/ 21 октября 2011

Предложение Мэтью Бакетта в HADOOP-7489 сработало для меня. Добавьте следующее в ваш файл hadoop-env.sh:

export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"
39 голосов
/ 12 ноября 2013

В качестве обновления к этому (и к адресу Дэвида Уильямса 'о Java 1.7) я обнаружил, что только установка свойств .realm и .kdc была недостаточной для остановки оскорбительного сообщения.

Однако, изучив исходный файл , в котором пропущено сообщение, я смог определить, что для свойства .krb5.conf, равного /dev/null, достаточно было подавить сообщение. Очевидно, что если у вас действительно есть конфигурация krb5, лучше указать фактический путь к ней.

В целом мой hadoop-env.sh фрагмент выглядит следующим образом:

HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.conf=/dev/null"
16 голосов
/ 25 июня 2013

У меня такая же проблема на OS X 10.8.2, Java версии 1.7.0_21. К сожалению, вышеуказанное решение не решает проблему с этой версией: (* ​​1001 *

Редактировать: Я нашел решение для этого, основываясь на подсказке, которую видел здесь . В файле hadoop-env.sh измените настройку JAVA_HOME на:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6`

(Обратите внимание на серьезные цитаты здесь.)

13 голосов
/ 05 января 2013

К вашему сведению, вы можете еще больше упростить это, указав только следующее:

export HADOOP_OPTS="-Djava.security.krb5.realm= -Djava.security.krb5.kdc="

Это также упоминается в HADOOP-7489.

5 голосов
/ 20 ноября 2013

У меня была похожая проблема на MacOS, и после попытки разных комбинаций это то, что работало для меня универсально (как Hadoop 1.2, так и 2.2):

в $HADOOP_HOME/conf/hadoop-env.sh установить следующие строки:

# Set Hadoop-specific environment variables here.
export HADOOP_OPTS="-Djava.security.krb5.realm= -Djava.security.krb5.kdc="

# The java implementation to use.
export JAVA_HOME=`/usr/libexec/java_home -v 1.6`

Надеюсь, это поможет

4 голосов
/ 27 февраля 2013

, а также добавить

YARN_OPTS="$YARN_OPTS -Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"

перед выполнением start-yarn.sh (или start-all.sh) на cdh4.1.3

2 голосов
/ 14 апреля 2013

У меня была эта ошибка при отладке MapReduce из Eclipse, но это была красная сельдь. Реальная проблема заключалась в том, что я должен был выполнять удаленную отладку, добавив параметры отладки в JAVA_OPTS

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=1044

И затем создание нового профиля «Удаленное приложение Java» в конфигурации отладки, которая указала на порт 1044.

Эта статья содержит более подробную информацию об аспектах отладки. Это говорит о Solr, но работает примерно так же с Hadoop. Если у вас возникли проблемы, напишите сообщение ниже, и я постараюсь помочь.

...