Kako instalirati Hadoop klaster s jednim čvorom (Pseudonode) na CentOS 7


Hadoop je okvir otvorenog koda koji se široko koristi za rješavanje Bigdata. Većina projekata Bigdata/Data Analytics gradi se na vrhu Hadoop Eko-sustava. Sastoji se od dvoslojnog, jedan je za pohranu podataka, a drugi za obradu podataka.

Za pohranu će se brinuti vlastiti datotečni sustav nazvan HDFS (Hadoop Distributed Files System), a za obradu će se brinuti YARN (Yet Another Resource Negotiator). Mapreduce je zadani mehanizam obrade Hadoop Eko-sustava.

Ovaj članak opisuje postupak instaliranja Pseudonode instalacije Hadoop-a, gdje će svi demoni (JVM-ovi) raditi na klasteru s jednim čvorom na CentOS 7.

Ovo je uglavnom za početnike koji bi naučili Hadoop. U stvarnom vremenu, Hadoop će biti instaliran kao klaster s više čvorova gdje će se podaci distribuirati među poslužiteljima u obliku blokova, a posao će se izvršavati paralelno.

  • Minimalna instalacija poslužitelja CentOS 7.
  • Izdanje Java v1.8.
  • Hadoop 2.x stabilno izdanje.

Na ovoj stranici

  • Kako instalirati Javu na CentOS 7
  • Postavite prijavu bez lozinke na CentOS 7
  • Kako instalirati jedan čvor Hadoop u CentOS 7
  • Kako konfigurirati Hadoop u CentOS 7
  • Oblikovanje HDFS datotečnog sustava putem NameNode

1. Hadoop je eko-sustav koji se sastoji od Jave. Za instaliranje Hadoop-a potrebna nam je Java instalirana u našem sustavu.

# yum install java-1.8.0-openjdk

2. Zatim provjerite instaliranu verziju Jave u sustavu.

# java -version

Moramo imati ssh konfiguriran u našem stroju, Hadoop će upravljati čvorovima pomoću SSH-a. Glavni čvor koristi SSH vezu za povezivanje svojih podređenih čvorova i izvođenje operacija poput pokretanja i zaustavljanja.

Moramo postaviti ssh bez lozinke kako bi master mogao komunicirati sa robovima koristeći ssh bez lozinke. Inače za svaku uspostavu veze trebate unijeti lozinku.

U ovom pojedinačnom čvoru glavne usluge (Namenode, sekundarni Namenode i upravitelj resursa) i slave usluge (Datanode & Nodemanager) izvodit će se kao zasebni JVM-ovi. Iako je singe čvor, trebamo imati ssh bez lozinke da bi Master mogao komunicirati s Slaveom bez provjere autentičnosti.

3. Postavite SSH prijavu bez lozinke pomoću sljedećih naredbi na poslužitelju.

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

4. Nakon što ste konfigurirali SSH prijavu bez lozinke, pokušajte se ponovo prijaviti, bit ćete povezani bez lozinke.

# ssh localhost

5. Idite na web mjesto Apache Hadoop i preuzmite stabilno izdanje Hadoopa pomoću sljedeće naredbe wget.

# 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. Zatim dodajte varijable okruženja Hadoop u datoteku ~/.bashrc kao što je prikazano.

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

7. Nakon dodavanja varijabli okruženja u datoteku ~/.bashrc , izvorite datoteku i provjerite Hadoop pokretanjem sljedećih naredbi.

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

Moramo konfigurirati dolje Hadoop konfiguracijske datoteke kako bismo se uklopili u vaš stroj. U Hadoopu svaka usluga ima svoj broj porta i vlastiti direktorij za pohranu podataka.

  • Konfiguracijske datoteke Hadoop - core-site.xml, hdfs-site.xml, mapred-site.xml & yarn-site.xml

8. Prvo, moramo ažurirati JAVA_HOME i Hadoop putanju u datoteci hadoop-env.sh kako je prikazano.

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

Unesite sljedeći redak na početak datoteke.

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

9. Zatim izmijenite datoteku core-site.xml .

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

Zalijepite sljedeće između oznaka kao što je prikazano.

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

10. Stvorite donje direktorije u tecmint korisničkom kućnom direktoriju, koji će se koristiti za NN i DN pohranu.

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

10. Zatim izmijenite datoteku hdfs-site.xml .

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

Zalijepite sljedeće između oznaka kao što je prikazano.

<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. Opet, izmijenite datoteku mapred-site.xml .

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

Zalijepite sljedeće između oznaka kao što je prikazano.

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

12. Na kraju, izmijenite datoteku yarn-site.xml .

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

Zalijepite sljedeće između oznaka kao što je prikazano.

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

13. Prije pokretanja klastera, moramo formatirati Hadoop NN u našem lokalnom sustavu gdje je instaliran. Obično se to radi u početnoj fazi prije prvog pokretanja klastera.

Formatiranje NN-a uzrokovat će gubitak podataka u NN metastoreu, pa moramo biti oprezniji, ne bismo trebali formatirati NN dok klaster radi, osim ako je to namjerno potrebno.

# cd $HADOOP_PREFIX
# bin/hadoop namenode -format

14. Pokrenite demon NameNode i demonNode DataNode: (port 50070).

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

15. Pokrenite demon ResourceManager i NodeManager daemon: (port 8088).

# sbin/start-yarn.sh

16. Zaustaviti sve usluge.

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

Sažetak
U ovom smo članku prošli korak po korak postupak postavljanja klastera Hadoop Pseudonode (pojedinačni čvor). Ako imate osnovno znanje o Linuxu i slijedite ove korake, klaster će GORE za 40 minuta.

Ovo može biti vrlo korisno za početnike da započnu učiti i vježbati Hadoop ili se ova inačica Hadoopa u obliku vanilije može koristiti u razvojne svrhe. Ako želimo imati klaster u stvarnom vremenu, ili trebamo najmanje 3 fizička poslužitelja u ruci ili moramo osigurati Cloud za posjedovanje više poslužitelja.