Мы опишем настройку 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 ) |