Статьи

Настройка Hadoop на одном узле и нескольких узлах

Мы опишем настройку Hadoop на одном узле и нескольких узлах. Настройка и конфигурация среды Hadoop будут подробно описаны. Сначала вам нужно скачать следующее программное обеспечение (об / мин).

  • Java JDK RPM
  • Apache Hadoop 0.20.204.0 об / мин

A) Настройка системы Hadoop с одним узлом

1) Установите JDK в системе Red Hat или CentOS 5+.

1
$ ./jdk-6u26-linux-x64-rpm.bin.sh

Java установлена ​​и установите JAVA_HOME в / usr / java / default

2) Установите Apache Hadoop 0.20.204.

1
$ rpm -i hadoop-0.20.204.0-1.i386.rpm

3) Настройте конфигурацию Apache Hadoop и запустите процессы Hadoop.

1
$ /usr/sbin/hadoop-setup-single-node.sh

Мастер установки проведет вас через список вопросов по настройке Hadoop. Hadoop должен быть запущен после ответа «Y» на все вопросы.

Создайте учетную запись пользователя для HDFS для себя.

1
$ /usr/sbin/hadoop-create-user.sh -u $USER

B) Настройка Hadoop с несколькими узлами

1) Установите RPM-пакеты JDK и Hadoop 0.20.204.0 на все узлы

2) Создать конфигурацию Hadoop на всех узлах:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
$ /usr/sbin/hadoop-setup-conf.sh \
 
  --namenode-url=hdfs://${namenode}:9000/ \
 
  --jobtracker-url=${jobtracker}:9001 \
 
  --conf-dir=/etc/hadoop \
 
  --hdfs-dir=/var/lib/hadoop/hdfs \
 
  --namenode-dir=/var/lib/hadoop/hdfs/namenode \
 
  --mapred-dir=/var/lib/hadoop/mapred \
 
  --datanode-dir=/var/lib/hadoop/hdfs/data \
 
  --log-dir=/var/log/hadoop \
 
  --auto

Где $ {namenode} и $ {jobtracker} следует заменить на имя хоста namenode и jobtracker.

3) Отформатируйте наменоде и настройте макет HDFS по умолчанию.

1
$ /usr/sbin/hadoop-setup-hdfs.sh

4) Запустите все узлы данных.

1
$ /etc/init.d/hadoop-datanode start

5) Запустить узел отслеживания заданий.

1
$ /etc/init.d/hadoop-jobtracker start

6) Запустите узлы отслеживания задач.

1
$ /etc/init.d/hadoop-tasktracker start

7) Создайте учетную запись пользователя на HDFS для себя.

1
$ /usr/sbin/hadoop-create-user.sh -u $USER

C) Настройка среды для Hadoop

1
$ vi ~/.bash_profile

В режиме INSERT установите путь для JAVA_HOME

Экспорт JAVA_HOME

Сохраните файл, нажав esc: wq

Запустите .bash_profile

1
$ source ~/.bash_profile

Установить путь JAVA_HOME в файле среды Hadoop

1
$ /etc/hadoop/hadoop-env.sh

D) Конфигурация для Hadoop

Используйте следующее:

конф / ядро-site.xml:

1
2
3
4
5
6
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
</configuration>

конф / HDFS-site.xml:

1
2
3
4
5
6
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

конф / mapred-site.xml:

1
2
3
4
5
6
<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
</configuration>

E) Команды Hadoop

01
02
03
04
05
06
07
08
09
10
11
12
$ hadoop
$ hadoop namenode –format (Format the namenode, If ask to
answer press ‘Y’)
$ hadoop namenode (Start the namenode)
$ find / -name start-dfs.sh (find the file in directory)
$ cd usr/sbin (Go to respective directory directly)
$ start-dfs.sh
$ start-mapred.sh
 
$ hadoop fs –ls / (Shows the HDFS root folder)
$ hadooop fs –put input/file01 /input/file01 (Copy local input/file01 to
HDFS root /input/file01)