HBase-installation på Ubuntu

Innehållsförteckning:

Anonim

I den här handledningen lär du dig,

  • Apache HBase installationslägen
  • Hur man laddar ner stabil version av Hbase-tarfil
  • Hbase - Installation av fristående läge
  • Hbase - Pseudo Distribuerat installationsläge
  • Hbase - Installation av fullt distribuerat läge
  • Felsökning av HBase-installation

Apache HBase installationslägen

Apache HBase kan installeras i tre lägen. Funktionerna i dessa lägen nämns nedan.

1) Installation av fristående läge (inget beroende av Hadoop-systemet)

  • Detta är standardläget för HBase
  • Det körs mot det lokala filsystemet
  • Den använder inte Hadoop HDFS
  • Endast HMaster-demonen kan köras
  • Rekommenderas inte för produktionsmiljö
  • Körs i enstaka JVM

2) Installation av Pseudo-distribuerat läge (Hadoop-system med en nod + HBase-installation)

  • Den körs på Hadoop HDFS
  • Alla Daemons körs i en enda nod
  • Rekommenderas för produktionsmiljö

3) Installation med fullständigt distribuerat läge (MultinodeHadoop-miljö + HBase-installation)

  • Den körs på Hadoop HDFS
  • Alla demoner kommer att springa över alla noder som finns i klustret
  • Rekommenderas starkt för produktionsmiljö

För installation av Hadoop Se denna URL här

Hur man laddar ner stabil version av Hbase-tarfil

Steg 1) Gå till länken här för att ladda ner HBase. Det öppnar en webbsida som visas nedan.

Steg 2) Välj stabil version enligt 1.1.2-versionen

Steg 3) Klicka på hbase-1.1.2-bin.tar.gz. Det kommer att ladda ner tjärfil. Kopiera tarfilen till en installationsplats.

Hbase - Installation av fristående läge:

Installationen utförs på Ubuntu med Hadoop redan installerat.

Steg 1) Placera hbase-1.1.2-bin.tar.gz i / home / hduser

Steg 2) Packa upp den genom att utföra kommandot $ tar -xvf hbase-1.1.2-bin.tar.gz . Det kommer att packa upp innehållet och det kommer att skapa hbase-1.1.2 på plats / hem / hduser

Steg 3) Öppna hbase-env.sh enligt nedan och nämna JAVA_HOME-sökvägen på platsen.

Steg 4) Öppna ~ / .bashrc-filen och nämna HBASE_HOME-sökvägen som visas nedan

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

Steg 5) Öppna hbase-site.xml och placera följande egenskaper i filen

hduser @ ubuntu $ gedit hbase-site.xml (kod enligt nedan)

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

Här placerar vi två fastigheter

  • En för HBase-rotkatalog och
  • Den andra för datakatalogen motsvarar ZooKeeper.

Alla HMaster- och ZooKeeper-aktiviteter pekar på denna hbase-site.xml.

Steg 6) Öppna värdfilen som finns i / etc. plats och nämn IP: erna som visas nedan.

Steg 7) Kör nu Start-hbase.sh i hbase-1.1.1 / bin-plats enligt nedan.

Och vi kan kontrollera med jps-kommandot för att se att HMaster körs eller inte.

Steg 8) HBase-skal kan börja med att använda "hbase-skal" och det går in i interaktivt skalläge som visas i nedanstående skärmdump. När det väl är i skalläge kan vi utföra alla typer av kommandon.

Det fristående läget kräver inte att Hadoop-demoner startar. HBase kan köras oberoende.

Hbase - Pseudo Distribuerat installationsläge:

Detta är en annan metod för Apache Hbase-installation, känd som Pseudo Distribuerat installationsläge. Nedan följer stegen för att installera HBase genom denna metod.

Steg 1) Placera hbase-1.1.2-bin.tar.gz i / home / hduser

Steg 2) Packa upp den genom att utföra kommandot $ tar -xvf hbase-1.1.2-bin.tar.gz . Det kommer att packa upp innehållet och det kommer att skapa hbase-1.1.2 på plats / hem / hduser

Steg 3) Öppna hbase-env.sh enligt följande och nämna JAVA_HOME-sökvägen och regionservrarnas sökväg på platsen och exportera kommandot som visas

Steg 4) I det här steget ska vi öppna ~ / .bashrc-filen och nämna HBASE_HOME-sökvägen som visas i skärmdump.

Steg 5) Öppna HBase-site.xml och nämna egenskaperna nedan i filen. (Kod som nedan)

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. Konfigurera Hbase-rotkatalog i den här egenskapen
  2. För distribuerad installation måste vi ställa in den här egenskapen
  3. ZooKeeper kvorumfastighet bör ställas in här
  4. Replikering konfigurerad gjort i den här egenskapen. Som standard placerar vi replikering som 1.

    I det helt distribuerade läget finns flera datanoder så att vi kan öka replikeringen genom att placera mer än 1 värde i egenskapen dfs.replication

  5. Klientport bör nämnas i den här egenskapen
  6. ZooKeeper datakatalog kan nämnas i den här egenskapen

Steg 6) Starta Hadoop-demoner först och därefter starta HBase-demoner som visas nedan

Här måste du först starta Hadoop-demoner genom att använda kommandot "./start-all.sh" som visas nedan.

Efter att ha startat Hbase-demoner av hbase-start.sh

Kontrollera nu jps

Hbase - Fullt distribuerad lägesinstallation: -

  • Denna inställning fungerar i Hadoop-klusterläge där flera noder springer över klustret och körs.
  • Installationen är samma som pseudodistribuerat läge; den enda skillnaden är att den kommer att leka över flera noder.
  • Konfigurationsfilerna som nämns i HBase-site.xml och hbase-env.sh är samma som nämns i pseudoläge.

Felsökning av HBase-installation

1) Problembeskrivning: Masterservern initialiseras men regionservrarna initialiseras inte

Kommunikationen mellan huvud- och regionservrar via deras IP-adresser. Liksom hur Master kommer att lyssna på att regionservrar kör eller har IP-adressen 127.0.0.1. IP-adressen 127.0.0.1 som är den lokala värden och löser till huvudserverns egen lokala värd.

Orsak:

I dubbelkommunikation mellan regionservrar och master informerar regionservern kontinuerligt Master-servern om deras IP-adresser är 127.0.0.1.

Lösning:

  • Måste ta bort huvudservernamnoden från den lokala värden som finns i värdfilen
  • Värdfilplats / etc / värdar

Vad ska jag ändra:

Öppna /etc./hosts och gå till den här platsen

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

Ändra konfigurationen ovan som nedan (ta bort regionservernamnet som markerat ovan)

127.0.0.1 localhost.localdomainlocalhost: : 1 localhost3.localdomain3 localdomain3

2) Problemförklaring: Det gick inte att hitta min adress: XYZ i listan över Zookeeper-kvorumsservrar

Orsak:

  • ZooKeeper-servern kunde inte starta och det kommer att kasta ett fel som .xyz i servern.
  • HBase försöker starta en ZooKeeper-server på någon maskin men samtidigt kan maskinen inte hitta sig själv kvorumkonfigurationen, dvs. finns i konfigurationsfilen för HBase.zookeeper.quorum .

Lösning:-

  • Måste ersätta värdnamnet med ett värdnamn som visas i felmeddelandet
  • Antag att vi har DNS-server så kan vi ställa in nedanstående konfigurationer i HBase-site.xml.
    • HBase.zookeeper.dns.interface
    • HBase.zookeeper.dns.nameserver

3) Problembeskrivning: Skapad rotkatalog för HBase genom Hadoop DFS

  • Master säger att du måste köra HBase-migrationsskriptet.
  • När du kör det svarar HBase-migrationsskriptet som inga filer i rotkatalogen .

Orsak:

  • Skapande av en ny katalog för HBase med Hadoop Distribuerade filsystem
  • Här förväntar sig HBase två möjligheter

1) Rotkatalogen finns inte

2) HBase tidigare körinstans initierad tidigare

Lösning:

  • Gör överensstämmelse HBase-rotkatalogen finns inte för närvarande eller har initierats av en tidigare körning av HBase-instans.
  • Som en del av lösningen måste vi följa stegen

Steg 1) Använda Hadoop dfs för att ta bort HBase-rotkatalogen

Steg 2) HBase skapar och initialiserar katalogen själv

4) Problemmeddelande: Zookeeper-sessionen har löpt ut

Orsak:

  • HMaster- eller HRegionservrar stängs av genom att kasta undantag
  • Om vi ​​observerar loggar kan vi ta reda på de faktiska undantagen som kastades

Följande visar undantaget som kastats på grund av att Zookeeper har upphört. De markerade händelserna är några av undantagen i loggfilen

Loggfiler kod som visas nedan:

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

Lösning:

  • Standard RAM-storlek är 1 GB. För att göra långvarig import har vi bibehållit RAM-kapacitet på mer än 1 GB.
  • Måste öka sessionens timeout för Zookeeper.
  • För att öka sessionstiden från Zookeeper måste vi ändra följande egenskap i "hbase-site.xml" som finns i mappvägen hbase / conf.
  • Standard sessionstimeout är 60 sekunder. Vi kan ändra det till 120 sekunder som nämns nedan
 zookeeper.session.timeout 1200000
 hbase.zookeeper.property.tickTime 6000