Значение fs.свойство defaultFS в core-site.xml в hadoop

Я пытаюсь настроить hadoop в полностью распределенном режиме, и в какой-то степени мне это удается.

однако у меня есть некоторые сомнения в одном из параметров настройки в core-site.xml --> fs.defaultFS

в моей настройке у меня есть три узла, как описано ниже:

Node1 -- 192.168.1.2 -- > настроено на Master (запуск демонов ResourceManager и NameNode)

Узел2 -- 192.168.1.3 --> настроен, чтобы быть рабом (бег NodeManager и демоны Datanode)

Node3 -- 192.168.1.4 -- > настроено как подчиненное (работает с демонами NodeManager и Datanode)

Теперь что делает свойство fs.defaultFS в смысле? Например, если я установлю его так:

<property>
   <name>fs.default.name</name>
   <value>hdfs://192.168.1.2:9000/</value>
</property>

Я не могу понять значение hdfs: / / 192.168.1.2: 9000. Я могу понять, что hdfs будет означать, что мы используем hdfs файловая система, но что означает другие части?

означает ли это, что хост с IP адрес 192.168.1.2 использует Namenode в порту 9000?

может ли кто-нибудь помочь мне понять это?

2 ответов


в этом коде :

<property>
   <name>fs.default.name</name>
   <value>hdfs://192.168.1.2:9000/</value>
</property>

включить fs.defaultFS / fs.по умолчанию.имя в core-сайте.xml для разрешения команд dfs без указания полного имени сайта в команде. Бег!--4-->hdfs dfs-ls/ вместо hdfs dfs-ls hdfs:/ / hdfs/

Это используется для указания файловой системы по умолчанию и по умолчанию для вашей локальной файловой системы, поэтому она должна быть установлена на адрес HDFS. Это важно также для конфигурации клиента, поэтому ваша локальная конфигурация файл должен включать этот элемент.

выше @Shashank объяснил очень уместно, что:

hdfs: / / 192.168.1.2: 9000/. Здесь 9000 обозначает порт, по которому datanode отправит heartbeat в namenode. И полный адрес-это имя машины, которое преобразуется в имя хоста.

спасибо,

Анкур Сингх


<name>fs.default.name</name>.

здесь fs обозначает файловую систему и значение по умолчанию.имя обозначает namenode

<value>hdfs://192.168.1.2:9000/</value>.

здесь 9000 обозначает порт, на котором datanode отправит heartbeat в namenode. И полный адрес-это имя машины, которое преобразуется в имя хоста.

что-то важное отметить о port является то, что вы можете дать любой порт больше, чем 1024 как меньше, чем это должны дать привилегии root.