Hogyan telepítsük a HBase-t Ubuntu (HBase telepítés)
Apache HBase telepítési módok
Az Apache HBase három módban telepíthető. Ezen módok jellemzőit az alábbiakban ismertetjük.
1) Önálló módú telepítés (nincs függés a Hadoop rendszertől)
- Ez a HBase alapértelmezett módja
- Helyi fájlrendszeren fut
- Nem használ Hadoop HDFS
- Csak a HMaster démon futhat
- Gyártási környezetben nem ajánlott
- Egyetlen JVM-ben fut
2) Ál-elosztott módú telepítés (egy csomópontos Hadoop rendszer + HBase telepítés)
- Ez fut tovább Hadoop HDFS
- Minden démon egyetlen csomópontban fut
- Gyártási környezethez ajánljuk
3) Teljesen elosztott módú telepítés (MultinodeHadoop környezet + HBase telepítés)
- Ez fut tovább Hadoop HDFS
- Az összes démon a fürt összes csomópontján futni fog
- Gyártási környezetbe kifejezetten ajánlott
A Hadoop telepítéséhez tekintse meg ezt az URL-t Itt
A HBase tar fájl stabil verziójának letöltése
Step 1) Menjen a linkre itt a HBase letöltéséhez. Megnyílik egy weboldal az alábbiak szerint.
Step 2) Válassza ki a stabil verziót az alábbi 1.1.2 verzió szerint
Step 3) Kattintson a hbase-1.1.2-bin.tar.gz fájlra. Letölti a tar fájlt. Másolja a tar fájlt egy telepítési helyre.
A HBase telepítése Ubuntu Önálló móddal
Íme a HBase önálló módú telepítésének lépésről lépésre történő folyamata Ubuntu:
1. lépés) Adja ki az alábbi parancsot
Helyezze el a hbase-1.1.2-bin.tar.gz fájlt a /home/hduser mappába
2. lépés) Csomagolja ki a $tar -xvf hbase-1.1.2-bin.tar.gz parancs végrehajtásával.
Kicsomagolja a tartalmat, és létrehozza a hbase-1.1.2-t a /home/hduser helyen
3. lépés: Nyissa meg a hbase-env.sh-t
Nyissa meg a hbase-env.sh-t az alábbiak szerint, és említse meg a JAVA_HOME elérési útját a helyen.
4. lépés) Nyissa meg a fájlt, és említse meg az elérési utat
Nyissa meg a ~/.bashrc fájlt, és említse meg a HBASE_HOME elérési utat az alábbiak szerint
export HBASE_HOME=/home/hduser/hbase-1.1.1 export PATH= $PATH:$HBASE_HOME/bin |
5. lépés: Adjon hozzá tulajdonságokat a fájlhoz
Nyissa meg a hbase-site.xml fájlt, és helyezze el a következő tulajdonságokat a fájlba
hduser@ubuntu$ gedit hbase-site.xml (kód az alábbiak szerint)
<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>
Itt két ingatlant helyezünk el
- Egy a HBase gyökérkönyvtárához és
- A második az adatkönyvtárhoz a ZooKeepernek felel meg.
Minden HMaster és ZooKeeper tevékenység erre a hbase-site.xml fájlra mutat.
6. lépés) Említse meg az IP-címeket
Nyissa meg a hosts fájlt, amely a /etc-ben található. helyét, és említse meg az IP-címeket az alábbiak szerint.
7. lépés) Most futtassa a Start-hbase.sh fájlt a hbase-1.1.1/bin helyen az alábbiak szerint.
A jps paranccsal ellenőrizhetjük, hogy a HMaster fut-e vagy sem.
8. lépés) Indítsa el a HBase Shell-t
A HBase shell a „hbase shell” és interaktív shell módba lép az alábbi képernyőképen látható módon. Miután shell módba lép, minden típusú parancsot végrehajthatunk.
Az önálló mód nem igényel Hadoop démonokat az induláshoz. A HBase önállóan is futhat.
HBase pszeudo elosztott telepítési mód
Ez egy másik módszer az Apache HBase telepítéséhez, amely pszeudo elosztott telepítési módként ismert.
Az alábbiakban bemutatjuk a HBase pszeudo elosztott módban történő telepítésének lépéseit:
Step 1) Helyezze el a hbase-1.1.2-bin.tar.gz fájlt a /home/hduser mappába
Step 2) Csomagolja ki a parancs$tar -xvf hbase-1.1.2-bin.tar.gz parancs végrehajtásával. Kicsomagolja a tartalmat, és létrehozza a hbase-1.1.2-t a /home/hduser helyen
Step 3) Nyissa meg a hbase-env.sh fájlt az alábbiak szerint, és adja meg a JAVA_HOME elérési útját és a régiókiszolgálók elérési útját a helyen, és exportálja a parancsot az ábrán látható módon
Step 4) Ebben a lépésben megnyitjuk a ~/.bashrc fájlt, és megemlítjük a HBASE_HOME elérési utat a képernyőképen látható módon.
Step 5) Nyissa meg a HBase-site.xml fájlt, és említse meg az alábbi tulajdonságokat a fájlban. (Kód az alábbiak szerint)
<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>
- A Hbase gyökérkönyvtár beállítása ebben a tulajdonságban
- Elosztott beállításhoz be kell állítanunk ezt a tulajdonságot
- Itt kell beállítani a ZooKeeper kvórum tulajdonát
- A replikáció beállítása megtörtént ebben a tulajdonságban. Alapértelmezés szerint a replikációt 1-ként helyezzük el. Teljesen elosztott módban több adatcsomópont van jelen, így növelhetjük a replikációt, ha 1-nél több értéket helyezünk el a dfs.replication tulajdonságban.
- Az ügyfélportot meg kell említeni ebben a tulajdonságban
- A ZooKeeper adatkönyvtár megemlíthető ebben az ingatlanban
Step 6) Először indítsa el a Hadoop démonokat, majd ezután indítsa el a HBase démonokat az alábbiak szerint
Itt először el kell indítania a Hadoop démonokat a használatával"./start-all.sh" parancsot az alábbiak szerint.
Miután elindította a Hbase démonokat a hbase-start.sh által
Most ellenőrizze a jps-t
HBase teljesen elosztott módú telepítés
- Ez a beállítás Hadoop-fürt módban fog működni, ahol több csomópont jön létre a fürtön és fut.
- A telepítés megegyezik a pszeudo elosztott móddal; az egyetlen különbség az, hogy több csomóponton keresztül fog megjelenni.
- A HBase-site.xml és a hbase-env.sh fájlokban említett konfigurációs fájlok megegyeznek a pszeudo módban említettekkel.
HBase telepítési hibaelhárítás
1) Problémanyilatkozat: A főkiszolgáló inicializálódik, de a régiókiszolgálók nem inicializálódnak
Kommunikáció a mester és a regionális szerverek között IP-címeiken keresztül. Mint ahogy a Mester azt fogja figyelni, hogy a régiószerverek futnak vagy 127.0.0.1 IP-címmel rendelkeznek. A 127.0.0.1 IP-cím, amely a helyi gazdagép, és a főszerver saját helyi gazdagépe lesz.
Ok:
A régiószerverek és a mester közötti kettős kommunikáció során a régiószerver folyamatosan tájékoztatja a főszervert, hogy IP-címük 127.0.0.1.
Megoldás:
- El kell távolítani a főkiszolgálónév csomópontot a helyi gazdagépről, amely a hosts fájlban található
- A gazdagép fájl helye /etc/hosts
Mit kell megváltoztatni:
Nyissa meg az /etc./hosts fájlt, és menjen erre a helyre
127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost : : 1 localhost3.localdomain3 localdomain3
Módosítsa a fenti konfigurációt az alábbiak szerint (távolítsa el a régiókiszolgáló nevét a fent kiemelt módon)
127.0.0.1 localhost.localdomainlocalhost : : 1 localhost3.localdomain3 localdomain3
2) Problémanyilatkozat: Nem található a címem: XYZ a Zookeeper kvórumszervereinek listájában
Ok:
- A ZooKeeper szerver nem tudott elindulni, és egy .xyz-hez hasonló hibát dob a szerver nevében.
- A HBase megpróbál elindítani egy ZooKeeper szervert néhány gépen, de ugyanakkor a gép nem találja meg magának a kvórum konfigurációt, azaz jelen van HBase.zookeeper.quorum konfigurációs fájl.
Megoldás:-
- A gazdagépnevet le kell cserélni a hibaüzenetben megjelenő gazdagépnévre
- Tegyük fel, hogy van DNS szerverünk, akkor beállíthatjuk az alábbi konfigurációkat a HBase-site.xml fájlban.
- HBase.zookeeper.dns.interface
- HBase.zookeeper.dns.nameserver
3) Problémanyilatkozat: Létrehozta a HBase gyökérkönyvtárát a Hadoop DFS-en keresztül
- A Mester azt mondja, hogy futtatnia kell a HBase áttelepítési parancsfájlt.
- Ennek futtatása után, a HBase migrációs szkript úgy válaszol, mintha nem lenne fájl a gyökérkönyvtárban.
Ok:
- Új könyvtár létrehozása a HBase számára a használatával Hadoop Elosztott fájlrendszer
- Itt a HBase két lehetőségre számít
1) A gyökérkönyvtár nem létezik
2) A HBase előző futó példánya korábban inicializálva
Megoldás:
- Győződjön meg arról, hogy a HBase gyökérkönyvtár jelenleg nem létezik, vagy a HBase példány korábbi futtatásával inicializálták.
- A megoldás részeként lépéseket kell követnünk
Step 1) Hadoop dfs használata a HBase gyökérkönyvtárának törléséhez
Step 2) A HBase maga hozza létre és inicializálja a könyvtárat
4) Probléma megfogalmazása: Az állatkerti munkamenet lejárt események
Ok:
- A HMaster vagy a HRegion szerverek leállása kivételek dobásával
- Ha megfigyeljük a naplókat, megtudhatjuk a tényleges kivételeket, amelyek dobtak
Az alábbiakban a Zookeeper lejárt esemény miatt kidobott kivétel látható. A kiemelt események a naplófájlban előforduló kivételek közé tartoznak
A naplófájlok kódja az alábbiak szerint:
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
Megoldás:
- Az alapértelmezett RAM mérete 1 GB. A hosszú távú importáláshoz 1 GB-nál nagyobb RAM-kapacitást tartottunk fenn.
- Növelnie kell a munkamenet időtúllépését Állatgondozó.
- A Zookeeper munkamenet-idejének növeléséhez módosítanunk kell a „hbase-site.xml” következő tulajdonságát, amely a hbase /conf mappa elérési útjában található.
- A munkamenet alapértelmezett időtúllépése 60 másodperc. Az alábbiak szerint módosíthatjuk 120 másodpercre
<property> <name> zookeeper.session.timeout </name> <value>1200000</value> </property> <property> <name> hbase.zookeeper.property.tickTime </name> <value>6000</value> </property>