Sådan installeres Hadoop Single Node Cluster (Pseudonode) på CentOS 7


Hadoop er en open source-ramme, der er meget brugt til at håndtere Bigdata. De fleste af Bigdata/Data Analytics-projekterne bygges oven på Hadoop Eco-System. Den består af to-lags, den ene er til lagring af data og en anden er til behandling af data.

Opbevaring vil blive taget hånd om af dets eget filsystem kaldet HDFS (Hadoop Distribueret filsystem), og behandling vil blive taget hånd om af YARN (Yet Another Resource Negotiator). Mapreduce er standardbehandlingsmotoren til Hadoop Eco-System.

Denne artikel beskriver processen til installation af Pseudonode-installationen af Hadoop, hvor alle dæmoner (JVM'er) kører Single Node Cluster på CentOS 7.

Dette er primært for begyndere at lære Hadoop. I realtid vil Hadoop blive installeret som en multinode-klynge, hvor dataene distribueres mellem serverne som blokke, og jobbet udføres parallelt.

  • A minimal installation of CentOS 7 server.
  • Java v1.8 release.
  • Hadoop 2.x stable release.

På denne side

  • How to Install Java on CentOS 7
  • Set Up Passwordless Login on CentOS 7
  • How to Install Hadoop Single Node in CentOS 7
  • How to Configuring Hadoop in CentOS 7
  • Formatting the HDFS File System via the NameNode

1. Hadoop er et økosystem, der består af Java. Vi har brug for Java installeret i vores system obligatorisk for at installere Hadoop.

# yum install java-1.8.0-openjdk

2. Kontroller derefter den installerede version af Java på systemet.

# java -version

Vi skal have konfigureret ssh i vores maskine, Hadoop administrerer noder ved brug af SSH. Hovedknude bruger SSH-forbindelse til at forbinde sine slaveknudepunkter og udføre operation som start og stop.

Vi er nødt til at indstille adgangskodeløs ssh, så mesteren kan kommunikere med slaver ved hjælp af ssh uden adgangskode. Ellers skal hver indtastning af forbindelsen indtaste adgangskoden.

I denne enkelt node kører mastertjenester (Namenode, Secondary Namenode & Resource Manager) og Slave-tjenester (Datanode & Nodemanager) som separate JVM'er. Selvom det er singe node, skal vi have adgangskodeløs ssh for at få Master til at kommunikere Slave uden godkendelse.

3. Opret et adgangskodeløst SSH-login ved hjælp af følgende kommandoer på serveren.

# ssh-keygen
# ssh-copy-id -i localhost

4. Når du har konfigureret adgangskodeløst SSH-login, skal du prøve at logge ind igen, du bliver forbundet uden adgangskode.

# ssh localhost

5. Gå til Apache Hadoop-webstedet, og download den stabile frigivelse af Hadoop ved hjælp af følgende wget-kommando.

# wget https://archive.apache.org/dist/hadoop/core/hadoop-2.10.1/hadoop-2.10.1.tar.gz
# tar xvpzf hadoop-2.10.1.tar.gz

6. Tilføj derefter Hadoop-miljøvariablerne i filen ~/.bashrc som vist.

HADOOP_PREFIX=/root/hadoop-2.10.1
PATH=$PATH:$HADOOP_PREFIX/bin
export PATH JAVA_HOME HADOOP_PREFIX

7. Efter at have tilføjet miljøvariabler til ~/.bashrc filen, kilde filen og kontrollere Hadoop ved at køre følgende kommandoer.

# source ~/.bashrc
# cd $HADOOP_PREFIX
# bin/hadoop version

Vi skal konfigurere nedenstående Hadoop-konfigurationsfiler for at kunne passe ind i din maskine. I Hadoop har hver tjeneste sit eget portnummer og sin egen mappe til lagring af dataene.

  • Hadoop Configuration Files – core-site.xml, hdfs-site.xml, mapred-site.xml & yarn-site.xml

8. Først skal vi opdatere JAVA_HOME og Hadoop-stien i hadoop-env.sh-filen som vist.

# cd $HADOOP_PREFIX/etc/hadoop
# vi hadoop-env.sh

Indtast følgende linje i starten af filen.

export JAVA_HOME=/usr/lib/jvm/java-1.8.0/jre
export HADOOP_PREFIX=/root/hadoop-2.10.1

9. Rediger derefter core-site.xml -filen.

# cd $HADOOP_PREFIX/etc/hadoop
# vi core-site.xml

Indsæt følgende mellem <configuration> tags som vist.

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

10. Opret nedenstående mapper under tecmint brugerens hjemmekatalog, som vil blive brugt til NN- og DN-lagring.

# mkdir -p /home/tecmint/hdata/
# mkdir -p /home/tecmint/hdata/data
# mkdir -p /home/tecmint/hdata/name

10. Dernæst skal du ændre filen hdfs-site.xml .

# cd $HADOOP_PREFIX/etc/hadoop
# vi hdfs-site.xml

Indsæt følgende mellem <configuration> tags som vist.

<configuration>
<property>
        <name>dfs.replication</name>
        <value>1</value>
 </property>
  <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/tecmint/hdata/name</value>
  </property>
  <property>
          <name>dfs .datanode.data.dir</name>
          <value>home/tecmint/hdata/data</value>
  </property>
</configuration>

11. Igen skal du ændre filen mapred-site.xml .

# cd $HADOOP_PREFIX/etc/hadoop
# cp mapred-site.xml.template mapred-site.xml
# vi mapred-site.xml

Indsæt følgende mellem <configuration> tags som vist.

<configuration>
                <property>
                        <name>mapreduce.framework.name</name>
                        <value>yarn</value>
                </property>
</configuration>

12. Til sidst skal du ændre filen yarn-site.xml .

# cd $HADOOP_PREFIX/etc/hadoop
# vi yarn-site.xml

Indsæt følgende mellem <configuration> tags som vist.

<configuration>
                <property>
                       <name>yarn.nodemanager.aux-services</name>
                       <value>mapreduce_shuffle</value>
                </property>
</configuration>

13. Før vi starter klyngen, skal vi formatere Hadoop NN i vores lokale system, hvor det er installeret. Normalt gøres det i den indledende fase, før klyngen startes første gang.

Formatering af NN vil medføre tab af data i NN-metastore, så vi skal være mere forsigtige, vi skal ikke formatere NN, mens klyngen kører, medmindre det kræves med vilje.

# cd $HADOOP_PREFIX
# bin/hadoop namenode -format

14. Start NameNode-dæmon og DataNode-dæmon: (port 50070).

# cd $HADOOP_PREFIX
# sbin/start-dfs.sh

15. Start ResourceManager-dæmon og NodeManager-dæmon: (port 8088).

# sbin/start-yarn.sh

16. For at stoppe alle tjenester.

# sbin/stop-dfs.sh
# sbin/stop-dfs.sh

I denne artikel har vi gennemgået trin for trin proces for at opsætte Hadoop Pseudonode (Single Node) Cluster. Hvis du har grundlæggende viden om Linux og følger disse trin, vil klyngen være OP om 40 minutter.

Dette kan være meget nyttigt for begyndere at begynde at lære og øve Hadoop, eller denne vaniljeversion af Hadoop kan bruges til udviklingsformål. Hvis vi vil have en realtidsklynge, skal vi enten have mindst 3 fysiske servere i hånden eller være nødt til at levere Cloud til at have flere servere.