Kako instalirati HBase na Ubuntu: Vodič korak po korak
⚡ Pametni sažetak
Instalacija HBase-a uključena Ubuntu radi u tri načina rada - samostalnom, pseudodistribuiranom i potpuno distribuiranom - pokrivajući kako preuzeti tarball izdanja, urediti hbase-env.sh i hbase-site.xml, pokrenuti daemone i ispraviti uobičajene pogreške pri pokretanju.

Apache HBase je distribuirani, stupčasto orijentirana baza podataka koji se izvodi na Hadoop distribuiranom datotečnom sustavu (HDFS). Prije nego što počnete, provjerite podržani Java runtime je instaliran i JAVA_HOME je postavljen; pseudodistribuirani i potpuno distribuirani načini rada također zahtijevaju radni Hadoop montaža.
Načini instalacije Apache HBase
Apache HBase može se instalirati u tri načina. Značajke ovih načina rada navedene su u nastavku.
1) Instalacija samostalnog načina rada (bez ovisnosti o Hadoop sustavu)
- Ovo je zadani način rada HBasea.
- Radi protiv lokalnog datotečnog sustava.
- Ne koristi Hadoop HDFS.
- Samo HMaster daemon može raditi.
- Ne preporučuje se za produkcijsko okruženje.
- Radi u jednom JVM-u.
2) Instalacija pseudo-distribuiranog načina (Hadoop sustav s jednim čvorom + HBase instalacija)
- Trči dalje Hadoop HDFS.
- Svi demoni se izvode na jednom čvoru.
- Preporučuje se za produkcijsko okruženje.
3) Potpuno distribuirana instalacija (Multinode Hadoop okruženje + HBase instalacija)
- Trči dalje Hadoop HDFS.
- Svi demoni se izvršavaju na svim čvorovima prisutnim u klasteru.
- Toplo se preporučuje za produkcijsko okruženje.
Za instalaciju Hadoop-a, pogledajte ovo Vodič za instalaciju Hadoop-a.
Snimke zaslona u nastavku koriste HBase 1.1.2. Trenutna stabilna izdanja su serije HBase 2.5.x i 2.6.x (Java 8 ili 11), ali koraci instalacije i konfiguracijske datoteke ostaju u biti isti.
Kako preuzeti stabilnu verziju HBase tar datoteke
Korak 1) Idite na službena stranica za preuzimanje Apache HBase-a za preuzimanje HBase-a. Otvorit će se web stranica za preuzimanje kao što je prikazano dolje.
Korak 2) Odaberite stabilnu verziju kao što je prikazano dolje, HBase 1.1.2 verzija.
Korak 3) Kliknite na hbase-1.1.2-bin.tar.gz. Preuzet će se tar datoteka. Kopirajte tar datoteku na mjesto instalacije.
Kako instalirati HBase u Ubuntu sa samostalnim načinom rada
Evo korak-po-korak postupka instalacije HBase samostalnog načina rada u Ubuntu:
Korak 1) Postavite sljedeću naredbu. Stavite hbase-1.1.2-bin.tar.gz u /home/hduser.
Korak 2) Raspakirajte ga izvršavanjem naredbe $tar -xvf hbase-1.1.2-bin.tar.gz. To će raspakirati sadržaj i stvoriti hbase-1.1.2 na lokaciji /home/hduser.
Korak 3) Otvorite hbase-env.sh kao što je prikazano dolje i navedite putanju JAVA_HOME u lokaciji, kao što je prikazano dolje.
Korak 4) Otvorite datoteku ~/.bashrc i navedite putanju HBASE_HOME kao što je prikazano dolje.
export HBASE_HOME=/home/hduser/hbase-1.1.1 export PATH= $PATH:$HBASE_HOME/bin
Ažurirana ~/.bashrc datoteka s HBASE_HOME unosom prikazana je dolje.
Korak 5) Dodajte svojstva u datoteku. Otvorite hbase-site.xml i postavite sljedeća svojstva unutar datoteke.
hduser@ubuntu$ gedit hbase-site.xml (kod kao u nastavku)
<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>
Datoteka hbase-site.xml otvorena je u gedit prikazano je u nastavku.
Ovdje postavljamo dva svojstva:
- Jedan za korijenski direktorij HBase-a i
- Drugi za direktorij podataka koji odgovara Čuvar zoo vrta.
Sve aktivnosti HMastera i ZooKeepera upućuju na ovu hbase-site.xml datoteku.
Korak 6) Navedite IP adrese. Otvorite datoteku hosts koja se nalazi u direktoriju /etc. i navedite IP adrese kao što je prikazano dolje.
Korak 7) Sada pokrenite start-hbase.sh na lokaciji hbase-1.1.1/bin kao što je prikazano dolje. Zatim možete provjeriti naredbom jps radi li HMaster ili ne.
Korak 8) Pokrenite HBase Shell. HBase shell se može pokrenuti pomoću hbase ljuska naredbu i ući će u interaktivni način rada ljuske kao što je prikazano na snimci zaslona ispod. Nakon što uđe u način rada ljuske, možemo izvršavati sve vrste naredbi.
Samostalni način rada ne zahtijeva Hadoop demone za pokretanje. HBase može raditi neovisno.
HBase pseudo distribuirani način instalacije
Ovo je još jedna metoda za instalaciju Apache HBase-a, poznata kao pseudo distribuirani način instalacije. U nastavku su navedeni koraci za instalaciju HBase-a putem pseudo distribuiranog načina.
Korak 1) Stavite hbase-1.1.2-bin.tar.gz u /home/hduser.
Korak 2) Raspakirajte ga izvršavanjem naredbe $tar -xvf hbase-1.1.2-bin.tar.gz. To će raspakirati sadržaj i stvoriti hbase-1.1.2 na lokaciji /home/hduser.
Korak 3) Otvorite hbase-env.sh kao što je prikazano u nastavku, navedite putanju JAVA_HOME i putanju regionalnih poslužitelja u lokaciji i izvezite naredbu kao što je prikazano u nastavku.
Korak 4) U ovom koraku otvorit ćemo datoteku ~/.bashrc i spomenuti putanju HBASE_HOME kao što je prikazano na snimci zaslona ispod.
Korak 5) Otvorite hbase-site.xml i navedite sljedeća svojstva u datoteci (kod kao u nastavku).
<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>
Datoteka hbase-site.xml s pseudodistribuiranim svojstvima prikazana je u nastavku.
Preostala konfiguracija ZooKeepera prikazana je u nastavku.
Svako svojstvo u datoteci igra određenu ulogu:
- Postavljanje korijenskog direktorija HBase u svojstvu hbase.rootdir.
- Za distribuiranu konfiguraciju, hbase.cluster.distributed mora biti postavljen na true.
- Ovdje treba postaviti svojstvo kvoruma ZooKeepera.
- Replikacija se postavlja u svojstvu dfs.replication. Prema zadanim postavkama, replikacija se postavlja na 1. U potpuno distribuiranom načinu rada prisutno je više podatkovnih čvorova, tako da replikaciju možete povećati postavljanjem vrijednosti veće od 1 u svojstvo dfs.replication.
- Klijentski port treba biti naveden u svojstvu hbase.zookeeper.property.clientPort.
- ZooKeeperov direktorij podataka može se spomenuti u svojstvu hbase.zookeeper.property.dataDir.
Korak 6) Prvo pokrenite Hadoop daemone, a nakon toga pokrenite HBase daemone kao što je prikazano dolje. Prvo morate pokrenuti Hadoop daemone pomoću naredbe ./start-all.sh kao što je prikazano dolje.
Nakon toga, pokrenite HBase daemone s hbase-start.sh, kao što je prikazano dolje.
Sada provjerite pokrenute procese pomoću naredbe jps, kao što je prikazano dolje.
Instalacija HBase potpuno distribuiranog načina rada
Potpuno distribuirani način rada proširuje pseudodistribuiranu postavku na stvarni klaster.
- Ova postavka radi u Hadoop klaster načinu rada, gdje se više čvorova pojavljuje i radi u klasteru.
- Instalacija je ista kao i pseudo distribuirani način rada; jedina je razlika što će se pojaviti na više čvorova.
- Konfiguracijske datoteke spomenute u hbase-site.xml i hbase-env.sh iste su kao one spomenute u pseudo načinu rada.
U potpuno distribuiranom načinu rada, provjerite odgovara li verzija Hadoop-a na vašem klasteru Hadoop bibliotekama koje dolaze s HBase-om kako bi demoni ispravno komunicirali.
Rješavanje problema s instalacijom HBase
1) Izjava o problemu: Glavni poslužitelj se inicijalizira, ali regionalni poslužitelji se ne inicijaliziraju
Komunikacija između glavnog poslužitelja i regionalnih poslužitelja odvija se putem njihovih IP adresa. Glavni poslužitelj osluškuje regionalne poslužitelje koji su pokrenuti ili imaju IP adresu 127.0.0.1. IP adresa 127.0.0.1 je lokalni host i razrješava se kao lokalni host glavnog poslužitelja.
Uzrok:
U dvostrukoj komunikaciji između regionalnih poslužitelja i glavnog poslužitelja, regionalni poslužitelj kontinuirano obavještava glavni poslužitelj da je njegova IP adresa 127.0.0.1.
Rješenje:
- Uklonite čvor naziva glavnog poslužitelja iz unosa lokalnog hosta koji se nalazi u datoteci hosts.
- Lokacija datoteke hosta: /etc/hosts.
Što promijeniti:
Otvorite /etc/hosts i idite na ovu lokaciju.
127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost : : 1 localhost3.localdomain3 localdomain3
Izmijenite gornju konfiguraciju kao što je dolje navedeno (uklonite naziv regionalnog poslužitelja kao što je gore istaknuto).
127.0.0.1 localhost.localdomainlocalhost : : 1 localhost3.localdomain3 localdomain3
2) Izjava o problemu: Nisam mogao pronaći svoju adresu: XYZ na popisu ZooKeeper kvorum servera
Uzrok:
- ZooKeeper poslužitelj nije se mogao pokrenuti i u nazivu poslužitelja izbacuje grešku kao što je .xyz.
- HBase pokušava pokrenuti ZooKeeper poslužitelj na računalu, ali istovremeno se računalo ne može pronaći u konfiguraciji kvoruma koja je prisutna u konfiguraciji hbase.zookeeper.quorum.
Rješenje:
- Zamijenite naziv hosta nazivom hosta koji je prikazan u poruci o pogrešci.
- Ako imate DNS poslužitelj, možete postaviti sljedeće konfiguracije u hbase-site.xml: hbase.zookeeper.dns.interface i hbase.zookeeper.dns.nameserver.
3) Izjava problema: Kreiran je korijenski direktorij za HBase putem Hadoop DFS-a
- Master kaže da trebate pokrenuti skriptu za migracije HBase-a.
- Nakon pokretanja toga, skripta za migracije HBase odgovara da u korijenskom direktoriju nema datoteka.
Uzrok:
- Novi direktorij je kreiran za HBase pomoću Hadoop distribuiranog datotečnog sustava.
- Ovdje HBase očekuje dvije mogućnosti:
1) Korijenski direktorij ne postoji.
2) Prethodna pokrenuta instanca HBase-a je već inicijalizirana.
Rješenje:
- Potvrdite da korijenski direktorij HBase trenutno ne postoji ili da je inicijaliziran prethodnim pokretanjem instance HBase.
- Kao dio rješenja, slijedite ove korake.
Korak 1) Koristite Hadoop dfs za brisanje korijenskog direktorija HBase.
Korak 2) HBase samostalno stvara i inicijalizira direktorij.
4) Izjava o problemu: Događaji isteka ZooKeeper sesije
Uzrok:
- HMaster ili HRegion poslužitelji su se isključili zbog iznimki.
- Ako promatrate zapisnike, možete saznati stvarne iznimke koje su se pojavile.
Sljedeći primjer prikazuje iznimku koja se pojavila zbog događaja isteka ZooKeepera. Istaknuti događaji su neki od iznimaka koji su se pojavili u datoteci zapisnika.
Kod datoteka zapisnika kao što je prikazano u nastavku:
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
Rješenje:
- Zadana veličina RAM-a je 1 GB. Za dugotrajne uvoze održavajte kapacitet RAM-a veći od 1 GB.
- Povećajte vrijeme čekanja sesije za ZooKeeper.
- Da biste povećali vrijeme čekanja sesije ZooKeepera, izmijenite sljedeće svojstvo u hbase-site.xml, koje se nalazi u putanji mape hbase/conf.
- Zadano vrijeme isteka sesije je 60 sekundi. Možete ga promijeniti na 120 sekundi kao što je navedeno u nastavku.
<property>
<name> zookeeper.session.timeout </name>
<value>1200000</value>
</property>
<property>
<name> hbase.zookeeper.property.tickTime </name>
<value>6000</value>
</property>
















