V tomto návode sa dozviete,
- Režimy inštalácie Apache HBase
- Ako sťahovať stabilnú verziu tar súboru Hbase
- Hbase - inštalácia v samostatnom režime
- Hbase - Pseudo distribuovaný spôsob inštalácie
- Hbase - inštalácia v plne distribuovanom režime
- Riešenie problémov s inštaláciou HBase
Režimy inštalácie Apache HBase
Apache HBase je možné nainštalovať v troch režimoch. Vlastnosti týchto režimov sú uvedené nižšie.
1) Inštalácia v samostatnom režime (bez závislosti na systéme Hadoop)
- Toto je predvolený režim HBase
- Beží proti miestnemu súborovému systému
- Nepoužíva Hadoop HDFS
- Môže bežať iba démon HMaster
- Neodporúča sa pre produkčné prostredie
- Beží v single JVM
2) Inštalácia v pseudodistribuovanom režime (systém Hadoop s jedným uzlom + inštalácia HBase)
- Beží na Hadoop HDFS
- Všetci démoni fungujú v jednom uzle
- Odporúčame pre produkčné prostredie
3) Inštalácia v plne distribuovanom režime (prostredie MultinodeHadoop + inštalácia HBase)
- Beží na Hadoop HDFS
- Všetci démoni prebehnú cez všetky uzly prítomné v klastri
- Veľmi odporúčané pre produkčné prostredie
Informácie o inštalácii softvéru Hadoop nájdete na tejto webovej adrese
Ako sťahovať stabilnú verziu tar súboru Hbase
Krok 1) Kliknutím na odkaz tu stiahnete HBase. Otvorí sa webová stránka, ako je uvedené nižšie.
Krok 2) Vyberte stabilnú verziu, ako je uvedené nižšie vo verzii 1.1.2
Krok 3) Kliknite na hbase-1.1.2-bin.tar.gz. Stiahne súbor tar. Skopírujte súbor tar do inštalačného umiestnenia.
Hbase - inštalácia v samostatnom režime:
Inštalácia sa vykonáva na Ubuntu s už nainštalovaným programom Hadoop.
Krok 1) Vložte hbase-1.1.2-bin.tar.gz do / home / hduser
Krok 2) Rozbaľte ho vykonaním príkazu $ tar -xvf hbase-1.1.2-bin.tar.gz . Rozbalí to obsah a vytvorí sa hbase-1.1.2 v umiestnení / home / hduser
Krok 3) Otvorte hbase-env.sh ako je uvedené nižšie a v umiestnení uveďte cestu JAVA_HOME.
Krok 4) Otvorte súbor ~ / .bashrc a uveďte cestu HBASE_HOME, ako je uvedené nižšie
export HBASE_HOME = / home / hduser / hbase-1.1.1 export PATH = $ PATH: $ HBASE_HOME / bin |
Krok 5) Otvorte hbase-site.xml a do súboru umiestnite nasledujúce vlastnosti
hduser @ ubuntu $ gedit hbase-site.xml (kód uvedený nižšie)
hbase.rootdir file:///home/hduser/HBASE/hbase hbase.zookeeper.property.dataDir /home/hduser/HBASE/zookeeper
Tu umiestňujeme dve vlastnosti
- Jeden pre koreňový adresár HBase a
- Druhý pre dátový adresár zodpovedá ZooKeeper.
Všetky aktivity HMaster a ZooKeeper poukazujú na tento hbase-site.xml.
Krok 6) Otvorte súbor hostiteľov v / etc. umiestnenie a uveďte adresy IP, ako je uvedené nižšie.
Krok 7) Teraz spustite Start-hbase.sh v umiestnení hbase-1.1.1 / bin, ako je uvedené nižšie.
Príkazom jps môžeme skontrolovať, či je HMaster spustený alebo nie.
Krok 8) HBase shell môže začať použitím „hbase shell“ a vstúpi do interaktívneho režimu shellu, ako je znázornené na obrázku nižšie. Len čo vstúpi do režimu shellu, môžeme vykonávať všetky typy príkazov.
Samostatný režim nevyžaduje na spustenie démonov Hadoop. HBase môže bežať nezávisle.
Hbase - Pseudo distribuovaný spôsob inštalácie:
Toto je ďalší spôsob inštalácie Apache Hbase, známy ako pseudo distribuovaný režim inštalácie. Ďalej sú uvedené kroky na inštaláciu HBase pomocou tejto metódy.
Krok 1) Vložte hbase-1.1.2-bin.tar.gz do / home / hduser
Krok 2) Rozbaľte ho vykonaním príkazu $ tar -xvf hbase-1.1.2-bin.tar.gz . Rozbalí to obsah a vytvorí sa hbase-1.1.2 v umiestnení / home / hduser
Krok 3) Otvorte hbase-env.sh nasledujúcim spôsobom, v umiestnení uveďte cestu JAVA_HOME a cestu serverov regiónu a exportujte príkaz podľa obrázka
Krok 4) V tomto kroku otvoríme súbor ~ / .bashrc a spomenieme cestu HBASE_HOME, ako je to znázornené na obrazovke.
Krok 5) Otvorte HBase-site.xml a v súbore uveďte nasledujúce vlastnosti. (Kód uvedený nižšie)
hbase.rootdir hdfs://localhost:9000/hbase hbase.cluster.distributed true hbase.zookeeper.quorum localhost dfs.replication 1 hbase.zookeeper.property.clientPort 2181 hbase.zookeeper.property.dataDir /home/hduser/hbase/zookeeper
- Nastavenie koreňového adresára Hbase v tejto vlastnosti
- Pre distribuované nastavenie musíme nastaviť túto vlastnosť
- Tu by mala byť nastavená vlastnosť kvóra ZooKeeper
- V tomto vlastníctve je nastavená replikácia. V predvolenom nastavení umiestňujeme replikáciu ako 1.
V plne distribuovanom režime je prítomných viac dátových uzlov, aby sme mohli zvýšiť replikáciu umiestnením viac ako 1 hodnoty do vlastnosti dfs.replication
- V tejto vlastnosti by sa mal spomenúť port klienta
- V tejto vlastnosti je možné spomenúť dátový adresár ZooKeeper
Krok 6) Najprv spustite démonov Hadoop a potom spustite démonov HBase, ako je uvedené nižšie
Tu musíte najskôr spustiť démonov Hadoop pomocou príkazu „./start-all.sh“, ako je uvedené nižšie.
Po spustení démonov Hbase pomocou hbase-start.sh
Teraz skontrolujte jps
Hbase - inštalácia v plne distribuovanom režime: -
- Toto nastavenie bude fungovať v režime klastra Hadoop, kde sa v klastri bude nachádzať niekoľko uzlov a budú bežať.
- Inštalácia je rovnaká ako v pseudo distribuovanom režime; jediný rozdiel je v tom, že sa objaví vo viacerých uzloch.
- Súbory konfigurácií uvedené v súboroch HBase-site.xml a hbase-env.sh sú rovnaké ako súbory uvedené v pseudo režime.
Riešenie problémov s inštaláciou HBase
1) Vyhlásenie o probléme: Hlavný server sa inicializuje, ale regionálne servery sa neinicializujú
Komunikácia medzi hlavným a regionálnym serverom prostredníctvom ich IP adries. Rovnako ako spôsob, akým bude Master počúvať, že sú spustené regionálne servery alebo majú IP adresu 127.0.0.1. Adresa IP 127.0.0.1, ktorá je lokálnym hostiteľom, a je určená na miestneho hostiteľa hlavného servera.
Príčina:
V duálnej komunikácii medzi regionálnymi servermi a hlavným serverom regionálny server nepretržite informuje hlavný server o ich adresách IP 127.0.0.1.
Riešenie:
- Musí odstrániť uzol názvu hlavného servera z lokálneho hostiteľa, ktorý je prítomný v súbore hostiteľov
- Umiestnenie hostiteľského súboru / etc / hosts
Čo zmeniť:
Otvorte /etc./hosts a choďte na toto miesto
127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost: : 1 localhost3.localdomain3 localdomain3
Upravte vyššie uvedenú konfiguráciu, ako je uvedené nižšie (odstráňte názov servera regiónu, ako je zvýraznené vyššie).
127.0.0.1 localhost.localdomainlocalhost: : 1 localhost3.localdomain3 localdomain3
2) Vyhlásenie o probléme: Nenašiel som moju adresu: XYZ v zozname serverov kvóra Zookeeper
Príčina:
- Server ZooKeeper sa nepodarilo spustiť a v názve servera spôsobí chybu ako .xyz.
- HBase sa pokúsi spustiť server ZooKeeper na nejakom stroji, ale zároveň nie je schopný nájsť si konfiguráciu kvóra, tj. Ktorá je v konfiguračnom súbore HBase.zookeeper.quorum .
Riešenie:-
- Musíte nahradiť názov hostiteľa názvom hostiteľa, ktorý je uvedený v chybovej správe
- Predpokladajme, že máme server DNS, a potom môžeme v HBase-site.xml nastaviť nasledujúce konfigurácie.
- HBase.zookeeper.dns.rozhranie
- HBase.zookeeper.dns.nameserver
3) Vyhlásenie o probléme: Vytvorený hlavný adresár pre HBase prostredníctvom Hadoop DFS
- Master hovorí, že musíte spustiť migračný skript HBase.
- Po spustení skript migrácie HBase reaguje ako žiadne súbory v koreňovom adresári .
Príčina:
- Vytvorenie nového adresára pre HBase pomocou distribuovaného súborového systému Hadoop
- Tu HBase očakáva dve možnosti
1) Koreňový adresár neexistuje
2) Predchádzajúca inicializovaná inštancia HBase
Riešenie:
- Uistite sa, že koreňový adresár HBase v súčasnosti neexistuje alebo bol inicializovaný predchádzajúcim spustením inštancie HBase.
- Ako súčasť riešenia musíme postupovať podľa krokov
Krok 1) Použitie Hadoop dfs na odstránenie koreňového adresára HBase
Krok 2) HBase vytvorí a inicializuje adresár sám
4) Vyhlásenie o probléme: Platnosť udalostí relácii Zookeeper skončila
Príčina:
- Vypínanie serverov HMaster alebo HRegion vyvolaním výnimiek
- Ak pozorujeme protokoly, môžeme zistiť skutočné výnimky, ktoré sa vyskytli
Nasledujúci obrázok zobrazuje výnimku vyvolanú z dôvodu udalosti, ktorej platnosť vypršala Zookeeper. Zvýraznené udalosti sú niektoré z výnimiek, ktoré sa vyskytli v protokolovom súbore
Prihláste kód súboru, ako je zobrazené nižšie:
WARN org.apache.zookeeper.ClientCnxn: Exceptionclosing session 0x278bd16a96000f to sun.nio.ch.SelectionKeyImpl@355811ecjava.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: 5000INFO org.apache.zookeeper.ClientCnxn: Attempting connection to server hostname/IP:PORTINFO 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 successfulWARN org.apache.zookeeper.ClientCnxn: Exception closing session 0x278bd16a96000d to sun.nio.ch.SelectionKeyImpl@3544d65ejava.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
Riešenie:
- Predvolená veľkosť pamäte RAM je 1 GB. Pre dlhodobé importy sme udržali kapacitu RAM viac ako 1 GB.
- Musí zvýšiť časový limit relácie pre Zookeeper.
- Pre zvýšenie času relácie mimo Zookeeper musíme upraviť v „hbase-site.xml“ nasledujúcu vlastnosť, ktorá sa nachádza v ceste k priečinku hbase / conf.
- Predvolený časový limit relácie je 60 sekúnd. Môžeme to zmeniť na 120 sekúnd, ako je uvedené nižšie
zookeeper.session.timeout 1200000 hbase.zookeeper.property.tickTime 6000