HBase telepítés az Ubuntun

Tartalomjegyzék:

Anonim

Ebben az oktatóanyagban megtanulod,

  • Apache HBase telepítési módok
  • A Hbase tar fájl stabil verziójának letöltése
  • Hbase - önálló módú telepítés
  • Hbase - Pszeudo Elosztott telepítési mód
  • Hbase - Teljesen elosztott módú telepítés
  • HBase telepítési hibaelhárítás

Apache HBase telepítési módok

Az Apache HBase három módban telepíthető. Ezeknek a módoknak a jellemzőit az alábbiakban említjük.

1) Önálló módú telepítés (nincs függőség a Hadoop rendszertől)

  • Ez a HBase alapértelmezett módja
  • A helyi fájlrendszerrel fut
  • Nem használja a Hadoop HDFS-t
  • Csak a HMaster démon futtatható
  • Nem ajánlott termelési környezetben
  • Egyetlen JVM-ben fut

2) Ál-elosztott módú telepítés (egycsomópontos Hadoop rendszer + HBase telepítés)

  • Hadoop HDFS-en fut
  • Az összes démon egyetlen csomópontban fut
  • Ajánljuk a termelési környezetnek

3) Teljesen elosztott módú telepítés (MultinodeHadoop környezet + HBase telepítés)

  • Hadoop HDFS-en fut
  • Az összes démon át fog futni a fürt összes csomópontján
  • Erősen ajánlott termelési környezetben

A Hadoop telepítéséhez olvassa el ezt az URL-t itt

A Hbase tar fájl stabil verziójának letöltése

1. lépés: A HBase letöltéséhez lépjen az itt található linkre. Megnyit egy weboldalt az alábbiak szerint.

2. lépés: Válassza ki a stabil verziót, az alábbi 1.1.2 verzió szerint

3. lépés) Kattintson a hbase-1.1.2-bin.tar.gz gombra. Letölti a tar fájlt. Másolja a tar fájlt egy telepítési helyre.

Hbase - önálló módú telepítés:

A telepítést az Ubuntun hajtják végre, a Hadoop már telepítve van.

1. lépés: Helyezze a hbase-1.1.2-bin.tar.gz fájlt a / home / hduser fájlba

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 fájlt a location / home / hduser fájlban

3. lépés: Nyissa meg a hbase-env.sh fájlt az alábbiak szerint, és említse meg a JAVA_HOME elérési utat a helyen.

4. lépés: 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: Nyissa meg a hbase-site.xml fájlt, és helyezze a következő tulajdonságokat a fájlba

hduser @ ubuntu $ gedit hbase-site.xml (kód az alábbiak szerint)

hbase.rootdirfile:///home/hduser/HBASE/hbase
hbase.zookeeper.property.dataDir/home/hduser/HBASE/zookeeper

Itt két tulajdonságot helyezünk el

  • Az egyik a HBase gyökérkönyvtárhoz és
  • Az adatkatalógus második része a ZooKeeper-nek felel meg.

A HMaster és a ZooKeeper összes tevékenysége erre a hbase-site.xml fájlra mutat.

6. lépés: Nyissa meg az / etc fájlban található gazdagépfájlt. helyet, és említse meg az IP-ket 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) A HBase shell elindulhat a "hbase shell" használatával, és interaktív shell módba lép, ahogy az alábbi képernyőképen látható. Amint shell módba lép, minden típusú parancsot végrehajthatunk.

Az önálló mód nem igényli a Hadoop démonok elindítását. A HBase önállóan futtatható.

Hbase - Pseudo Elosztott telepítési mód:

Ez az Apache Hbase telepítésének egy másik módszere, Pseudo Distributed Installation mode néven. Az alábbiakban bemutatjuk a HBase ezen módszerrel történő telepítésének lépéseit.

1. lépés: Helyezze a hbase-1.1.2-bin.tar.gz fájlt a / home / hduser fájlba

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 fájlt a location / home / hduser fájlban

3. lépés: Nyissa meg a hbase-env.sh fájlt az alábbiak szerint, és említse meg a JAVA_HOME elérési utat és a Region server kiszolgáló elérési útját a helyszínen, és exportálja a parancsot az ábra szerint

4. lépés) Ebben a lépésben meg fogjuk nyitni a ~ / .bashrc fájlt, és megemlítjük a HBASE_HOME elérési utat, ahogyan a képernyőképen látható.

5. lépés: 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)

hbase.rootdirhdfs://localhost:9000/hbase
hbase.cluster.distributedtrue
hbase.zookeeper.quorumlocalhost
dfs.replication1
hbase.zookeeper.property.clientPort2181
hbase.zookeeper.property.dataDir/home/hduser/hbase/zookeeper
  1. A Hbase gyökérkönyvtár beállítása ebben a tulajdonságban
  2. Az elosztott beállításhoz be kell állítanunk ezt a tulajdonságot
  3. A ZooKeeper kvórum tulajdonságát itt kell felállítani
  4. A replikáció beállítása megtörtént ebben a tulajdonságban. Alapértelmezés szerint a replikációt 1-nek 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.

  5. Az ügyfélportot meg kell említeni ebben a tulajdonságban
  6. A ZooKeeper adatkönyvtára megemlíthető ebben a tulajdonságban

6. lépés: Először indítsa el a Hadoop démonokat, majd indítsa el a HBase démonokat az alábbiak szerint

Itt először el kell indítania a Hadoop démonokat az "./start-all.sh" paranccsal, az alábbiak szerint.

A Hbase démonok elindítása után a hbase-start.sh

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 keletkezik a fürtön és fut.
  • A telepítés megegyezik az álosztott móddal; az egyetlen különbség az, hogy több csomóponton keresztül fog ívni.
  • A HBase-site.xml és a hbase-env.sh fájlokban említett konfigurációs fájlok megegyeznek az álmódúval.

HBase telepítési hibaelhárítás

1) Probléma: A fő szerver inicializálja, de a régió szerverek nem inicializálják

A Master és a regionális szerverek közötti kommunikáció az IP-címen keresztül. Mint ahogy a Master hallgatni fogja, hogy a régiós kiszolgálók futnak vagy az IP-címe 127.0.0.1. A 127.0.0.1 IP-cím, amely a helyi gazdagép, és feloldja a fő szerver saját helyi gazdagépét.

Ok:

A régiókiszolgálók és a master közötti kettős kommunikáció során a régiókiszolgáló folyamatosan tájékoztatja a Master szervert arról, hogy IP-címe 127.0.0.1.

Megoldás:

  • El kell távolítania a mester kiszolgáló név csomópontját a hoszt fájlban található helyi állomásról
  • Gépfájl helye / etc / hosts

Mit kell változtatni:

Nyissa meg az /etc./hosts alkalmazást, és lépjen 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émafeltétel: Nem található a címem: XYZ a Zookeeper kvórumkiszolgálók listáján

Ok:

  • A ZooKeeper szerver nem tudott elindulni, és olyan hibát fog dobni, mint a .xyz a szerver nevében.
  • A HBase megpróbálja elindítani a ZooKeeper szervert valamilyen gépen, ugyanakkor a gép nem képes megtalálni a kvórumkonfigurációt, azaz jelen van a HBase.zookeeper.quorum konfigurációs fájlban.

Megoldás:-

  • Cserélje le a gazdagép nevét a gazda nevére, amely a hibaüzenetben szerepel
  • Tegyük fel, hogy DNS-kiszolgálónk van, akkor a HBase-site.xml fájlban beállíthatjuk az alábbi konfigurációkat.
    • HBase.zookeeper.dns.interface
    • HBase.zookeeper.dns.nameserver

3) Probléma-kimutatás: Hadase DFS-en keresztül létrehozott gyökérkönyvtár a HBase számára

  • A mester azt mondja, hogy futtatnia kell a HBase migrációs szkriptet.
  • Ennek futtatásakor a HBase migrációs parancsfájl úgy válaszol, mintha egyetlen fájl sem lenne a gyökérkönyvtárban .

Ok:

  • Új könyvtár létrehozása a HBase számára a Hadoop Distributed fájlrendszer használatával
  • Itt a HBase két lehetőséget vár

1) Gyökérkönyvtár nem létezik

2) A HBase előző futó példánya korábban inicializált

Megoldás:

  • Tegye megfelelővé, hogy a HBase gyökérkönyvtár jelenleg nem létezik, vagy a HBase példány korábbi futtatása inicializálta.
  • A megoldás részeként lépéseket kell követnünk

1. lépés: A Hadoop dfs segítségével törölje a HBase gyökérkönyvtárát

2. lépés) A HBase maga hozza létre és inicializálja a könyvtárat

4) Probléma nyilatkozat: A Zookeeper munkamenet lejárt eseményei

Ok:

  • A HMaster vagy a HRegion szerverek leállnak a Kivételek eldobásával
  • Ha megfigyeljük a naplókat, megtudhatjuk a tényleges kivételt

Az alábbiakban bemutatjuk a Zookeeper lejárt eseménye miatt dobott kivételt. A kiemelt események közül néhány a naplófájlban történt kivétel

Naplófájlok kódja az alábbiak szerint:

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

Megoldás:

  • Az alapértelmezett RAM-méret 1 GB. A hosszú ideig tartó importáláshoz fenntartottuk a RAM kapacitást, több mint 1 GB.
  • Növelnie kell a Zookeeper munkamenetének időkorlátját.
  • A Zookeeperen kívüli munkamenet időtartamának növeléséhez módosítanunk kell a következő tulajdonságot a "hbase-site.xml" fájlban a hbase / conf mappa elérési útjában.
  • A munkamenet alapértelmezett időtúllépése 60 másodperc. Az alábbiakban 120 másodpercre módosíthatjuk
 zookeeper.session.timeout 1200000
 hbase.zookeeper.property.tickTime 6000