GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat a nakonfigurovat Hadoop na Ubuntu 20.04

Hadoop je bezplatný softwarový framework s otevřeným zdrojovým kódem a založený na Javě, který se používá pro ukládání a zpracování velkých datových sad na klastrech strojů. Používá HDFS k ukládání svých dat a zpracování těchto dat pomocí MapReduce. Jedná se o ekosystém nástrojů Big Data, které se primárně používají pro dolování dat a strojové učení.

Apache Hadoop 3.3 přichází se znatelnými vylepšeními a mnoha opravami chyb oproti předchozím verzím. Má čtyři hlavní komponenty, jako jsou Hadoop Common, HDFS, YARN a MapReduce.

Tento tutoriál vám vysvětlí, jak nainstalovat a nakonfigurovat Apache Hadoop na systému Ubuntu 20.04 LTS Linux.

Krok 1 – Instalace Java

Hadoop je napsán v Javě a podporuje pouze Javu verze 8. Hadoop verze 3.3 a nejnovější také podporují běhové prostředí Java 11 a také Javu 8.

OpenJDK 11 můžete nainstalovat z výchozích repozitářů apt:

sudo apt update 
sudo apt install openjdk-11-jdk

Po instalaci ověřte nainstalovanou verzi Java pomocí následujícího příkazu:

java -version 

Měli byste získat následující výstup:

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

Krok 2 – Vytvoření uživatele Hadoop

Z bezpečnostních důvodů je dobré vytvořit samostatného uživatele pro spuštění Hadoopu.

Spusťte následující příkaz k vytvoření nového uživatele s názvem hadoop:

sudo adduser hadoop 

Zadejte a potvrďte nové heslo, jak je uvedeno níže:

Adding user `hadoop' ...
Adding new group `hadoop' (1002) ...
Adding new user `hadoop' (1002) with group `hadoop' ...
Creating home directory `/home/hadoop' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for hadoop
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

Krok 3 – Konfigurace ověřování pomocí klíče SSH

Dále budete muset nakonfigurovat ověřování SSH bez hesla pro místní systém.

Nejprve změňte uživatele na hadoop pomocí následujícího příkazu:

su - hadoop 

Dále spusťte následující příkaz pro vygenerování párů veřejného a soukromého klíče:

ssh-keygen -t rsa 

Budete požádáni o zadání názvu souboru. Pro dokončení procesu stačí stisknout Enter:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Created directory '/home/hadoop/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/hadoop/.ssh/id_rsa
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:QSa2syeISwP0hD+UXxxi0j9MSOrjKDGIbkfbM3ejyIk [email protected]
The key's randomart image is:
+---[RSA 3072]----+
| ..o++=.+        |
|..oo++.O         |
|. oo. B .        |
|o..+ o * .       |
|= ++o o S        |
|.++o+  o         |
|.+.+ + . o       |
|o . o * o .      |
|   E + .         |
+----[SHA256]-----+

Dále připojte vygenerované veřejné klíče z id_rsa.pub k author_keys a nastavte správná oprávnění:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 
chmod 640 ~/.ssh/authorized_keys 

Dále ověřte ověření SSH bez hesla pomocí následujícího příkazu:

ssh localhost 

Budete požádáni o ověření hostitelů přidáním klíčů RSA ke známým hostitelům. Napište yes a stiskněte Enter pro ověření localhost:

The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:JFqDVbM3zTPhUPgD5oMJ4ClviH6tzIRZ2GD3BdNqGMQ.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

Krok 4 – Instalace Hadoop

Nejprve změňte uživatele na hadoop pomocí následujícího příkazu:

su - hadoop 

Dále si stáhněte nejnovější verzi Hadoop pomocí příkazu wget:

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz 

Po stažení stažený soubor rozbalte:

tar -xvzf hadoop-3.3.0.tar.gz 

Dále přejmenujte extrahovaný adresář na hadoop:

mv hadoop-3.3.0 hadoop 

Dále budete muset ve vašem systému nakonfigurovat proměnné prostředí Hadoop a Java.

Otevřete soubor ~/.bashrc soubor ve vašem oblíbeném textovém editoru:

nano ~/.bashrc 

Připojte níže uvedené řádky k souboru. Umístění JAVA_HOME můžete najít spuštěním dirname $(dirname $(readlink -f $(which java))) command on terminal.

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

Save and close the file. Then, activate the environment variables with the following command:

source ~/.bashrc 

Dále otevřete soubor proměnných prostředí Hadoop:

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

Znovu nastavte JAVA_HOME v hadoop prostředí.

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

Po dokončení uložte a zavřete soubor.

Krok 5 – Konfigurace Hadoop

Nejprve budete muset vytvořit adresáře namenode a datanode v domovském adresáři Hadoop:

Spuštěním následujícího příkazu vytvořte oba adresáře:

mkdir -p ~/hadoopdata/hdfs/namenode 
mkdir -p ~/hadoopdata/hdfs/datanode 

Dále upravte core-site.xml soubor a aktualizujte pomocí názvu hostitele vašeho systému:

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

Změňte následující název podle názvu hostitele vašeho systému:

XHTML
123456 fs.defaultFS hdfs://hadoop.tecadmin.com:9000

Uložte a zavřete soubor. Poté upravte hdfs-site.xml soubor:

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

Změňte cestu k adresáři NameNode a DataNode, jak je znázorněno níže:

XHTML
1234567891011121314151617 dfs.replication 1 dfs.name.dir file:///home/hadoop/hadoopdata/hdfs/namenode dfs.data.dir file:///home /hadoop/hadoopdata/hdfs/datanode

Uložte a zavřete soubor. Poté upravte mapred-site.xml soubor:

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

Proveďte následující změny:

XHTML
123456 mapreduce.framework.name příze

Uložte a zavřete soubor. Poté upravte yarn-site.xml soubor:

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

Proveďte následující změny:

XHTML
123456 yarn.nodemanager.aux-services mapreduce_shuffle

Po dokončení uložte a zavřete soubor.

Krok 6 – Spusťte Hadoop Cluster

Před spuštěním clusteru Hadoop. Budete muset naformátovat Namenode jako uživatel hadoop.

Spusťte následující příkaz pro formátování hadoop Namenode:

hdfs namenode -format 

Měli byste získat následující výstup:

2020-11-23 10:31:51,318 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
2020-11-23 10:31:51,323 INFO namenode.FSImage: FSImageSaver clean checkpoint: txid=0 when meet shutdown.
2020-11-23 10:31:51,323 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at hadoop.tecadmin.net/127.0.1.1
************************************************************/

Po naformátování Namenode spusťte následující příkaz pro spuštění clusteru hadoop:

start-dfs.sh 

Po úspěšném spuštění HDFS byste měli získat následující výstup:

Starting namenodes on [hadoop.tecadmin.com]
hadoop.tecadmin.com: Warning: Permanently added 'hadoop.tecadmin.com,fe80::200:2dff:fe3a:26ca%eth0' (ECDSA) to the list of known hosts.
Starting datanodes
Starting secondary namenodes [hadoop.tecadmin.com]

Dále spusťte službu YARN, jak je znázorněno níže:

start-yarn.sh 

Měli byste získat následující výstup:

Starting resourcemanager
Starting nodemanagers

Nyní můžete zkontrolovat stav všech služeb Hadoop pomocí příkazu jps:

jps 

V následujícím výstupu byste měli vidět všechny běžící služby:

18194 NameNode
18822 NodeManager
17911 SecondaryNameNode
17720 DataNode
18669 ResourceManager
19151 Jps

Krok 7 – Úprava brány firewall

Hadoop je nyní spuštěn a naslouchá na portech 9870 a 8088. Dále budete muset povolit tyto porty přes firewall.

Spusťte následující příkaz a povolte připojení Hadoop přes bránu firewall:

firewall-cmd --permanent --add-port=9870/tcp 
firewall-cmd --permanent --add-port=8088/tcp 

Poté znovu načtěte službu firewall, aby se změny projevily:

firewall-cmd --reload 

Krok 8 – Přístup k Hadoop Namenode a Resource Manager

Chcete-li získat přístup k Namenode, otevřete webový prohlížeč a navštivte adresu URL http://ip-ip:9870. Měli byste vidět následující obrazovku:

http://hadoop.tecadmin.net:9870

Chcete-li získat přístup ke správě zdrojů, otevřete webový prohlížeč a navštivte adresu URL http://ip-ip-vašeho-serveru:8088. Měli byste vidět následující obrazovku:

http://hadoop.tecadmin.net:8088

Krok 9 – Ověřte klastr Hadoop

V tomto okamžiku je cluster Hadoop nainstalován a nakonfigurován. Dále vytvoříme některé adresáře v souborovém systému HDFS, abychom otestovali Hadoop.

Vytvořme nějaký adresář v systému souborů HDFS pomocí následujícího příkazu:

hdfs dfs -mkdir /test1
hdfs dfs -mkdir /logs 

Dále spusťte následující příkaz pro zobrazení výše uvedeného adresáře:

hdfs dfs -ls / 

Měli byste získat následující výstup:

Found 3 items
drwxr-xr-x   - hadoop supergroup          0 2020-11-23 10:56 /logs
drwxr-xr-x   - hadoop supergroup          0 2020-11-23 10:51 /test1

Také vložte některé soubory do systému souborů hadoop. Například umístění souborů protokolu z hostitelského počítače do systému souborů hadoop.

hdfs dfs -put /var/log/* /logs/  

Výše uvedené soubory a adresář můžete také ověřit ve webovém rozhraní Hadoop Namenode.

Přejděte do webového rozhraní Namenode, klikněte na Utilities => Browse the file system. Na následující obrazovce byste měli vidět své adresáře, které jste vytvořili dříve:

http://hadoop.tecadmin.net:9870/explorer.html

Krok 10 – Zastavení clusteru Hadoop

Službu Hadoop Namenode and Yarn můžete také kdykoli zastavit spuštěním stop-dfs.sh a stop-yarn.sh skript jako uživatel Hadoop.

Chcete-li zastavit službu Hadoop Namenode, spusťte následující příkaz jako uživatel hadoop:

stop-dfs.sh  

Chcete-li zastavit službu Hadoop Resource Manager, spusťte následující příkaz:

stop-yarn.sh 

Závěr

Tento tutoriál vám vysvětlil krok za krokem tutoriál pro instalaci a konfiguraci Hadoop na systému Ubuntu 20.04 Linux.


Ubuntu
  1. Jak nainstalovat a nakonfigurovat Redis na Ubuntu 18.04

  2. Jak nainstalovat a nakonfigurovat Redmine na Ubuntu 18.04

  3. Jak nainstalovat a nakonfigurovat Sambu na Ubuntu 18.04

  1. Jak nainstalovat a nakonfigurovat Redis na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat Jenkins na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat Askbot na Ubuntu 16.04

  1. Jak nainstalovat a nakonfigurovat MongoDB na Ubuntu 14.04

  2. Jak nainstalovat a nakonfigurovat Solr 6 na Ubuntu 16.04

  3. Jak nainstalovat a nakonfigurovat GitLab na Ubuntu 16.04