Jak nainstalovat HBase Ubuntu (Instalace HBase)

Reลพimy instalace Apache HBase

Apache HBase lze nainstalovat ve tล™ech reลพimech. Vlastnosti tฤ›chto reลพimลฏ jsou uvedeny nรญลพe.

1) Instalace v samostatnรฉm reลพimu (ลพรกdnรก zรกvislost na systรฉmu Hadoop)

  • Toto je vรฝchozรญ reลพim HBase
  • Bฤ›ลพรญ proti mรญstnรญmu souborovรฉmu systรฉmu
  • Nepouลพรญvรก se Hadoop HDFS
  • Spustit mลฏลพe pouze dรฉmon HMaster
  • Nedoporuฤuje se pro produkฤnรญ prostล™edรญ
  • Bฤ›ลพรญ v jedinรฉm JVM

2) Instalace v pseudo-distribuovanรฉm reลพimu (jednouzlovรฝ systรฉm Hadoop + instalace HBase)

  • Bฤ›ลพรญ dรกl Hadoop HDFS
  • Vลกichni dรฉmoni bฤ›ลพรญ v jednom uzlu
  • Doporuฤeno pro produkฤnรญ prostล™edรญ

3) Instalace v plnฤ› distribuovanรฉm reลพimu (prostล™edรญ MultinodeHadoop + instalace HBase)

  • Bฤ›ลพรญ dรกl Hadoop HDFS
  • Vลกichni dรฉmoni budou bฤ›ลพet napล™รญฤ vลกemi uzly pล™รญtomnรฝmi v clusteru
  • Vysoce doporuฤeno pro produkฤnรญ prostล™edรญ

Pro instalaci Hadoopu se podรญvejte na toto URL Zde

Jak stรกhnout stabilnรญ verzi souboru HBase tar

Krok 1) Pล™ejรญt na odkaz zde ke staลพenรญ HBase. Otevล™e se webovรก strรกnka, jak je uvedeno nรญลพe.

 Stรกhnฤ›te si stabilnรญ verzi HBase Tar File

Krok 2) Vyberte stabilnรญ verzi, jak je uvedeno nรญลพe Verze 1.1.2

Stรกhnฤ›te si stabilnรญ verzi HBase Tar File

Krok 3) Kliknฤ›te na hbase-1.1.2-bin.tar.gz. Stรกhne se soubor tar. Zkopรญrujte soubor tar do umรญstฤ›nรญ instalace.

Stรกhnฤ›te si stabilnรญ verzi HBase Tar File

Jak nainstalovat HBase do Ubuntu se samostatnรฝm reลพimem

Zde je krok za krokem postup instalace samostatnรฉho reลพimu HBase Ubuntu:

Krok 1) Zadejte nรญลพe uvedenรฝ pล™รญkaz
Umรญstฤ›te hbase-1.1.2-bin.tar.gz do /home/hduser
Krok 2) Rozbalte jej spuลกtฤ›nรญm pล™รญkazu $tar -xvf hbase-1.1.2-bin.tar.gz.
Rozbalรญ obsah a vytvoล™รญ hbase-1.1.2 v umรญstฤ›nรญ /home/hduser

Krok 3) Otevล™ete hbase-env.sh
Otevล™ete hbase-env.sh jako nรญลพe a v umรญstฤ›nรญ uveฤte cestu JAVA_HOME.

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Krok 4) Otevล™ete soubor a uveฤte cestu
Otevล™ete soubor ~/.bashrc a uveฤte cestu HBASE_HOME, jak je uvedeno nรญลพe

exportovat HBASE_HOME=/home/hduser/hbase-1.1.1
export PATH= $PATH:$HBASE_HOME/bin

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Krok 5) Pล™idejte vlastnosti do souboru
Otevล™ete soubor hbase-site.xml a do souboru umรญstฤ›te nรกsledujรญcรญ vlastnosti

hduser@ubuntu$ gedit hbase-site.xml (kรณd nรญลพe)

<property>

<name>hbase.rootdir</name>

<value>file:///home/hduser/HBASE/hbase</value>

</property>

<property>

<name>hbase.zookeeper.property.dataDir</name>

<value>/home/hduser/HBASE/zookeeper</value>

</property>

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Zde umรญstรญme dvฤ› vlastnosti

  • Jeden pro koล™enovรฝ adresรกล™ HBase a
  • Druhรฝ pro datovรฝ adresรกล™ odpovรญdรก ZooKeeperu.

Vลกechny aktivity HMaster a ZooKeeper poukazujรญ na tento hbase-site.xml.

Krok 6) Uveฤte IP adresy
Otevล™ete soubor hosts pล™รญtomnรฝ v /etc. umรญstฤ›nรญ a uveฤte IP adresy, jak je uvedeno nรญลพe.

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Krok 7) Nynรญ spusลฅte Start-hbase.sh v umรญstฤ›nรญ hbase-1.1.1/bin, jak je znรกzornฤ›no nรญลพe.

A mลฏลพeme zkontrolovat pomocรญ pล™รญkazu jps, zda HMaster bฤ›ลพรญ nebo ne.

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Krok 8) Spusลฅte HBase Shell
Shell HBase lze spustit pomocรญ โ€žshell hbaseโ€œ a pล™ejde do reลพimu interaktivnรญho shellu, jak je znรกzornฤ›no na obrรกzku nรญลพe. Jakmile vstoupรญ do reลพimu shellu, mลฏลพeme provรกdฤ›t vลกechny typy pล™รญkazลฏ.

Nainstalujte HBase do Ubuntu se samostatnรฝm reลพimem

Samostatnรฝ reลพim nevyลพaduje spuลกtฤ›nรญ dรฉmonลฏ Hadoop. HBase mลฏลพe bฤ›ลพet nezรกvisle.

HBase Pseudo Distributed Mode instalace

Toto je dalลกรญ zpลฏsob instalace Apache HBase, znรกmรฝ jako Pseudo Distributed Mode of Installation.
Nรญลพe jsou uvedeny kroky k instalaci HBase prostล™ednictvรญm Pseudo Distributed reลพimu:

Krok 1) Umรญstฤ›te hbase-1.1.2-bin.tar.gz do /home/hduser

Krok 2) Rozbalte jej spuลกtฤ›nรญm pล™รญkazu $tar -xvf hbase-1.1.2-bin.tar.gz. Rozbalรญ obsah a vytvoล™รญ hbase-1.1.2 v umรญstฤ›nรญ /home/hduser

Krok 3) Otevล™ete hbase-env.sh nรกsledujรญcรญm zpลฏsobem a uveฤte cestu JAVA_HOME a cestu serverลฏ regionu v umรญstฤ›nรญ a exportujte pล™รญkaz, jak je znรกzornฤ›no

HBase Pseudo Distributed Mode instalace

Krok 4) V tomto kroku otevล™eme soubor ~/.bashrc a zmรญnรญme cestu HBASE_HOME, jak je znรกzornฤ›no na snรญmku obrazovky.

HBase Pseudo Distributed Mode instalace

Krok 5) Otevล™ete soubor HBase-site.xml a uveฤte v nฤ›m nรญลพe uvedenรฉ vlastnosti.Code jak je uvedeno nรญลพe)

<property>

<name>hbase.rootdir</name>

<value>hdfs://localhost:9000/hbase</value>

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.zookeeper.quorum</name>

<value>localhost</value>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>hbase.zookeeper.property.clientPort</name>

<value>2181</value>

</property>

<property>

<name>hbase.zookeeper.property.dataDir</name>

<value>/home/hduser/hbase/zookeeper</value>

</property>

HBase Pseudo Distributed Mode instalace

HBase Pseudo Distributed Mode instalace

  1. Nastavenรญ koล™enovรฉho adresรกล™e Hbase v tรฉto vlastnosti
  2. Pro distribuovanรฉ nastavenรญ musรญme tuto vlastnost nastavit
  3. Zde by mฤ›la bรฝt nastavena vlastnost kvora ZooKeeper
  4. Nastavenรญ replikace provedeno v tรฉto vlastnosti. Ve vรฝchozรญm nastavenรญ umรญsลฅujeme replikaci jako 1. V plnฤ› distribuovanรฉm reลพimu je pล™รญtomno vรญce datovรฝch uzlลฏ, takลพe mลฏลพeme zvรฝลกit replikaci umรญstฤ›nรญm vรญce neลพ 1 hodnoty do vlastnosti dfs.replication
  5. V tรฉto vlastnosti by mฤ›l bรฝt uveden klientskรฝ port
  6. V tรฉto vlastnosti lze zmรญnit datovรฝ adresรกล™ ZooKeeper

Krok 6) Nejprve spusลฅte dรฉmony Hadoop a potรฉ spusลฅte dรฉmony HBase, jak je znรกzornฤ›no nรญลพe

Zde musรญte nejprve spustit Hadoop dรฉmony pomocรญโ€ž./start-all.shโ€œ pล™รญkaz, jak je znรกzornฤ›no nรญลพe.

HBase Pseudo Distributed Mode instalace

Po spuลกtฤ›nรญ dรฉmonลฏ Hbase pomocรญ hbase-start.sh

HBase Pseudo Distributed Mode instalace

Nynรญ zkontrolujte jps

HBase Pseudo Distributed Mode instalace

Instalace plnฤ› distribuovanรฉho reลพimu HBase

  • Toto nastavenรญ bude fungovat v reลพimu clusteru Hadoop, kde se v clusteru vytvoล™รญ a bฤ›ลพรญ vรญce uzlลฏ.
  • Instalace je stejnรก jako v pseudodistribuovanรฉm reลพimu; jedinรฝ rozdรญl je v tom, ลพe se vytvoล™รญ ve vรญce uzlech.
  • Konfiguraฤnรญ soubory uvedenรฉ v HBase-site.xml a hbase-env.sh jsou stejnรฉ jako v pseudo reลพimu.

Odstraลˆovรกnรญ problรฉmลฏ s instalacรญ HBase

1) Prohlรกลกenรญ o problรฉmu: Hlavnรญ server se inicializuje, ale servery regionลฏ se neinicializujรญ

Komunikace mezi hlavnรญmi a regionรกlnรญmi servery prostล™ednictvรญm jejich IP adres. Stejnฤ› jako zpลฏsob, jakรฝm bude Master naslouchat, ลพe regionรกlnรญ servery bฤ›ลพรญ nebo majรญ IP adresu 127.0.0.1. Adresa IP 127.0.0.1, kterรก je mรญstnรญm hostitelem a pล™evรกdรญ se na vlastnรญ mรญstnรญ hostitel hlavnรญho serveru.

Zpลฏsobit:

Pล™i duรกlnรญ komunikaci mezi regionรกlnรญmi servery a masterem regionรกlnรญ server prลฏbฤ›ลพnฤ› informuje Master server o tom, ลพe jejich IP adresy jsou 127.0.0.1.

ล˜eลกenรญ:

  • Musรญte odstranit hlavnรญ uzel nรกzvu serveru z mรญstnรญho hostitele, kterรฝ je pล™รญtomen v souboru hostitelลฏ
  • Umรญstฤ›nรญ hostitelskรฉho souboru /etc/hosts

Co zmฤ›nit:

Otevล™ete /etc./hosts a pล™ejdฤ›te do tohoto umรญstฤ›nรญ

127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost
: : 1              localhost3.localdomain3 localdomain3

Upravte vรฝลกe uvedenou konfiguraci jako nรญลพe (odeberte nรกzev serveru regionu, jak je zvรฝraznฤ›no vรฝลกe)

127.0.0.1    localhost.localdomainlocalhost
: : 1 localhost3.localdomain3 localdomain3

2) Prohlรกลกenรญ o problรฉmu: Nemohu najรญt svou adresu: XYZ v seznamu serverลฏ kvora Zookeeper

Zpลฏsobit:

  • Server ZooKeeper se nepodaล™ilo spustit a v nรกzvu serveru vyvolรก chybu jako .xyz.
  • HBase se pokouลกรญ spustit server ZooKeeper na nฤ›jakรฉm poฤรญtaฤi, ale zรกroveลˆ stroj nenรญ schopen najรญt konfiguraci kvora, tj. HBase.zookeeper.quorum konfiguraฤnรญho souboru.

ล˜eลกenรญ:-

  • Musรญte nahradit nรกzev hostitele nรกzvem hostitele, kterรฝ je uveden v chybovรฉ zprรกvฤ›
  • Pล™edpoklรกdejme, ลพe mรกme DNS server, pak mลฏลพeme nastavit nรญลพe uvedenรฉ konfigurace v HBase-site.xml.
    • Rozhranรญ HBase.zookeeper.dns
    • Jmennรฝ server HBase.zookeeper.dns

3) Prohlรกลกenรญ o problรฉmu: Vytvoล™enรฝ koล™enovรฝ adresรกล™ pro HBase prostล™ednictvรญm Hadoop DFS

  • Master ล™รญkรก, ลพe musรญte spustit skript migrace HBase.
  • Pล™i spuลกtฤ›nรญ to, skript migrace HBase reaguje jako ลพรกdnรฉ soubory v koล™enovรฉm adresรกล™i.

Zpลฏsobit:

  • Vytvoล™enรญ novรฉho adresรกล™e pro pouลพitรญ HBase Hadoop Distribuovanรฝ souborovรฝ systรฉm
  • Zde HBase oฤekรกvรก dvฤ› moลพnosti

1) Koล™enovรฝ adresรกล™ neexistuje

2) pล™edchozรญ spuลกtฤ›nรก instance HBase byla inicializovรกna dล™รญve

ล˜eลกenรญ:

  • Proveฤte shodu, ลพe koล™enovรฝ adresรกล™ HBase aktuรกlnฤ› neexistuje nebo byl inicializovรกn pล™edchozรญm spuลกtฤ›nรญm instance HBase.
  • V rรกmci ล™eลกenรญ musรญme postupovat podle krokลฏ

Krok 1) Pouลพitรญ Hadoop dfs k odstranฤ›nรญ koล™enovรฉho adresรกล™e HBase

Krok 2) HBase vytvรกล™รญ a inicializuje adresรกล™ sรกm

4) Vysvฤ›tlenรญ problรฉmu: Udรกlosti vyprลกenรญ platnosti relace Zookeeper

Zpลฏsobit:

  • Servery HMaster nebo HRegion se vypรญnajรญ vyvolรกnรญm vรฝjimek
  • Pokud budeme sledovat protokoly, mลฏลพeme zjistit skuteฤnรฉ vรฝjimky, kterรฉ byly vyvolรกny

Nรกsledujรญcรญ text ukazuje vรฝjimku vyvolanou kvลฏli udรกlosti Zookeeper vyprลกela. Zvรฝraznฤ›nรฉ udรกlosti jsou nฤ›kterรฉ z vรฝjimek, ke kterรฝm doลกlo v souboru protokolu

Kรณd souborลฏ protokolu, jak je zobrazeno nรญลพe:

WARN org.apache.zookeeper.ClientCnxn: Exception
closing session 0x278bd16a96000f to sun.nio.ch.SelectionKeyImpl@355811ec

java.io.IOException: TIMED OUT	
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:906)
WARN org.apache.hadoop.hbase.util.Sleeper: We slept 79410ms, ten times longer than scheduled: 5000
INFO org.apache.zookeeper.ClientCnxn: Attempting connection to server hostname/IP:PORT
INFO org.apache.zookeeper.ClientCnxn: Priming connection to java.nio.channels.SocketChannel[connected local=/IP:PORT remote=hostname/IP:PORT]
INFO org.apache.zookeeper.ClientCnxn: Server connection successful
WARN org.apache.zookeeper.ClientCnxn: Exception closing session 0x278bd16a96000d to sun.nio.ch.SelectionKeyImpl@3544d65e

java.io.IOException: Session Expired	 
at org.apache.zookeeper.ClientCnxn$SendThread.readConnectResult(ClientCnxn.java:589)
at org.apache.zookeeper.ClientCnxn$SendThread.doIO(ClientCnxn.java:709)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:945)
ERROR org.apache.hadoop.hbase.regionserver.HRegionServer: ZooKeeper session expired

ล˜eลกenรญ:

  • Vรฝchozรญ velikost pamฤ›ti RAM je 1 GB. Pro provรกdฤ›nรญ dlouhodobรฝch importลฏ jsme zachovali kapacitu pamฤ›ti RAM vฤ›tลกรญ neลพ 1 GB.
  • Je tล™eba prodlouลพit ฤasovรฝ limit relace Oลกetล™ovatel v zoo.
  • Abychom prodlouลพili dobu relace mimo Zookeeper, musรญme upravit nรกsledujรญcรญ vlastnost v โ€žhbase-site.xmlโ€œ, kterรก se nachรกzรญ v cestฤ› ke sloลพce hbase /conf.
  • Vรฝchozรญ ฤasovรฝ limit relace je 60 sekund. Mลฏลพeme jej zmฤ›nit na 120 sekund, jak je uvedeno nรญลพe
<property>
    <name> zookeeper.session.timeout </name>
    <value>1200000</value>
</property>
<property>
    <name> hbase.zookeeper.property.tickTime </name>
    <value>6000</value>
</property>

Shrลˆte tento pล™รญspฤ›vek takto: