Як встановити Apache Hadoop на Ubuntu

Apache Hadoop здійснив революцію в роботі з великими даними, запропонувавши надійну основу для розподіленого зберігання та обробки великих масивів даних. Незалежно від того, чи є ви фахівцем з вивчення даних, інженером-програмістом або ІТ-фахівцем, розуміння того, як встановити та налаштувати Hadoop, є необхідною навичкою в сучасному світі, що базується на даних. Цей посібник проведе вас через процес встановлення Apache Hadoop на Ubuntu 24.04, надавши докладні інструкції, поради щодо усунення неполадок і найкращі практики для забезпечення безпроблемного встановлення.

Попередні умови

Перш ніж ми приступимо до процесу встановлення, переконайтеся, що ваша система відповідає таким вимогам:

  • Встановлено та оновлено Ubuntu 24.04 LTS
  • Root або sudo доступ до системи
  • Мінімум 4 ГБ оперативної пам’яті (рекомендується 8 ГБ або більше)
  • Не менше 10 ГБ вільного дискового простору
  • Стабільне інтернет-з’єднання

Оновлення та модернізація системи Ubuntu

Почніть з оновлення системи Ubuntu, щоб переконатися, що у вас є найновіші пакети та оновлення безпеки. Відкрийте термінал і виконайте такі команди:

sudo apt update
sudo apt upgrade -y

Цей процес може зайняти кілька хвилин, залежно від швидкості вашого інтернету і кількості доступних оновлень.

Встановіть Java Development Kit (JDK)

Для роботи Hadoop потрібна Java, тому нам необхідно встановити Java Development Kit. Хоча Hadoop сумісний з різними версіями Java, ми будемо використовувати OpenJDK 11 для цього встановлення.

sudo apt install openjdk-11-jdk -y

Після завершення встановлення перевірте версію Java:

java -version

Ви маєте побачити висновок, схожий на цей:

openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.24.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.24.04, mixed mode, sharing)

Потім встановіть змінну оточення JAVA_HOME:

echo "export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile

Переконайтеся, що JAVA_HOME встановлено правильно:

echo $JAVA_HOME

Створення користувача Hadoop

Доброю практикою є створення спеціального користувача для операцій з Hadoop. Це підвищує безпеку та спрощує керування.

sudo adduser hadoop
sudo usermod -aG sudo hadoop

Перейдіть на нового користувача hadoop:

su - hadoop

Налаштування SSH

Для управління вузлами Hadoop потрібен доступ по SSH. Ми налаштуємо SSH без пароля для користувача hadoop:

ssh-keygen -t rsa -P ""
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

Протестуйте налаштування SSH:

ssh localhost

У разі успіху ви ввійдете в систему, не запитуючи пароль. Введіть ‘exit’, щоб повернутися у вихідну сесію.

Завантаження та встановлення Hadoop

Тепер давайте завантажимо та встановимо Hadoop:

wget https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.4.1/hadoop-3.4.1-src.tar.gz
tar -xzvf hadoop-3.4.1-src.tar.gz
sudo mv hadoop-3.4.1 /usr/local/hadoop
sudo chown -R hadoop:hadoop /usr/local/hadoop

Налаштування змінних оточення Hadoop

Додайте змінні оточення Hadoop у файл .bashrc:

echo "export HADOOP_HOME=/usr/local/hadoop" >> ~/.bashrc
echo "export PATH=\$PATH:\$HADOOP_HOME/bin:\$HADOOP_HOME/sbin" >> ~/.bashrc
echo "export HADOOP_MAPRED_HOME=\$HADOOP_HOME" >> ~/.bashrc
echo "export HADOOP_COMMON_HOME=\$HADOOP_HOME" >> ~/.bashrc
echo "export HADOOP_HDFS_HOME=\$HADOOP_HOME" >> ~/.bashrc
echo "export YARN_HOME=\$HADOOP_HOME" >> ~/.bashrc
source ~/.bashrc

Налаштування файлів Hadoop

Тепер ми налаштуємо основні файли Hadoop. Відкрийте кожен файл у текстовому редакторі та додайте вказаний вміст:

core-site.xml

sudo nano $HADOOP_HOME/etc/hadoop/core-site.xml

Додайте таку конфігурацію:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

hdfs-site.xml

sudo nano $HADOOP_HOME/etc/hadoop/hdfs-site.xml

Додайте таку конфігурацію:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/hdfs/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/hdfs/datanode</value>
    </property>
</configuration>

mapred-site.xml

sudo nano $HADOOP_HOME/etc/hadoop/mapred-site.xml

Додайте таку конфігурацію:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.application.classpath</name>
        <value>$HADOOP_HOME/share/hadoop/mapreduce/*:$HADOOP_HOME/share/hadoop/mapreduce/lib/*</value>
    </property>
</configuration>

yarn-site.xml

sudo nano $HADOOP_HOME/etc/hadoop/yarn-site.xml

Додайте таку конфігурацію:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

hadoop-env.sh

Оновіть шлях до JAVA_HOME у файлі hadoop-env.sh:

sudo nano $HADOOP_HOME/etc/hadoop/hadoop-env.sh

Додайте або змініть рядок JAVA_HOME:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

Форматування файлової системи Hadoop

Перед запуском сервісів Hadoop нам необхідно відформатувати файлову систему Hadoop:

hdfs namenode -format

Ви маєте побачити повідомлення про успішне форматування namenode.

Запуск служб Hadoop

Тепер давайте запустимо служби Hadoop:

start-dfs.sh
start-yarn.sh

Ці команди запустять служби NameNode, DataNode, ResourceManager і NodeManager.

Перевірка встановлення Hadoop

Щоб переконатися, що Hadoop працює правильно, виконайте таку команду:

jps

Ви маєте побачити висновок, схожий на цей:

12345 NameNode
23456 DataNode
34567 ResourceManager
45678 NodeManager
56789 SecondaryNameNode
67890 Jps

Крім того, ви можете отримати доступ до веб-інтерфейсів Hadoop:

  • NameNode: http://localhost:9870
  • ResourceManager: http://localhost:8088

Усунення загальних проблем

Під час встановлення Hadoop ви можете зіткнутися з деякими типовими проблемами. Ось кілька порад щодо усунення неполадок:

Конфлікти версій Java

Якщо ви бачите помилки, пов’язані з несумісністю версій Java, переконайтеся, що ви використовуєте сумісну версію Java, а також, що JAVA_HOME встановлено правильно.

Проблеми з конфігурацією SSH

Якщо служби Hadoop не запускаються через проблеми з SSH, перевірте конфігурацію SSH і переконайтеся, що SSH без пароля працює правильно.

Конфлікти портів

Якщо ви бачите помилки, пов’язані з використанням портів, переконайтеся, що жодні інші служби не використовують порти Hadoop за замовчуванням. Можливо, вам буде потрібно змінити налаштування портів у конфігураційних файлах.

Проблеми з правами доступу

Переконайтеся, що користувач hadoop має необхідні дозволи на доступ до всіх каталогів і файлів Hadoop.

Вітаємо! Ви успішно встановили Apache Hadoop. Для отримання додаткової допомоги або корисної інформації ми рекомендуємо вам відвідати офіційний  сайт Apache Hadoop.

Поділіться своєю любов'ю

Залишити відповідь

0 комментариев
Новіші
Старіші Найпопулярніші
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x