Sådan installeres HBase på Ubuntu (HBase installation)
Apache HBase installationstilstande
Apache HBase kan installeres i tre tilstande. Funktionerne i disse tilstande er nævnt nedenfor.
1) Installation i selvstændig tilstand (ingen afhængighed af Hadoop-systemet)
- Dette er standardtilstanden for HBase
- Det kører mod det lokale filsystem
- Den bruger ikke Hadoop HDFS
- Kun HMaster-dæmonen kan køre
- Anbefales ikke til produktionsmiljø
- Kører i enkelt JVM
2) Installation i pseudo-distribueret tilstand (Hadoop-system med enkelt knude + HBase-installation)
- Det kører på Hadoop HDFS
- Alle dæmoner kører i en enkelt node
- Anbefales til produktionsmiljø
3) Fuldt distribueret tilstand installation (MultinodeHadoop miljø + HBase installation)
- Det kører på Hadoop HDFS
- Alle dæmoner vil køre på tværs af alle noder til stede i klyngen
- Stærkt anbefalet til produktionsmiljø
For Hadoop-installation Se denne URL Her
Sådan downloades HBase tar-fil stabil version
Trin 1) Gå til linket link. for at downloade HBase. Det åbner en webside som vist nedenfor.
Trin 2) Vælg stabil version som vist nedenfor 1.1.2 version
Trin 3) Klik på hbase-1.1.2-bin.tar.gz. Det vil downloade tar-filen. Kopier tar-filen til en installationsplacering.
Sådan installeres HBase i Ubuntu med Standalone Mode
Her er trin for trin-processen for HBase-standalone-installation i Ubuntu:
Trin 1) Indsæt kommandoen nedenfor
Placer hbase-1.1.2-bin.tar.gz i /home/hduser
Trin 2) Pak den ud ved at udføre kommandoen $tar -xvf hbase-1.1.2-bin.tar.gz.
Det vil udpakke indholdet, og det vil oprette hbase-1.1.2 på placeringen /home/hduser
Trin 3) Åbn hbase-env.sh
Åbn hbase-env.sh som nedenfor, og nævn JAVA_HOME-stien på stedet.
Trin 4) Åbn filen og angiv stien
Åbn ~/.bashrc-filen og nævn HBASE_HOME-stien som vist nedenfor
eksporter HBASE_HOME=/home/hduser/hbase-1.1.1 eksport PATH= $PATH:$HBASE_HOME/bin |
Trin 5) Tilføj egenskaber i filen
Åbn hbase-site.xml og placer følgende egenskaber i filen
hduser@ubuntu$ gedit hbase-site.xml(kode som nedenfor)
<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>
Her placerer vi to ejendomme
- En til HBase rodmappe og
- Den anden til datakatalog svarer til ZooKeeper.
Alle HMaster- og ZooKeeper-aktiviteter peger på denne hbase-site.xml.
Trin 6) Nævn IP'erne
Åbn hosts-fil til stede i /etc. placering og angiv IP'erne som vist nedenfor.
Trin 7) Kør nu Start-hbase.sh på hbase-1.1.1/bin-placeringen som vist nedenfor.
Og vi kan kontrollere ved hjælp af jps-kommandoen for at se, at HMaster kører eller ej.
Trin 8) Start HBase Shell
HBase shell kan starte med at bruge "hbase skal”, og den går i interaktiv skaltilstand som vist på skærmbilledet nedenfor. Når den går i shell-tilstand, kan vi udføre alle typer kommandoer.
Den selvstændige tilstand kræver ikke, at Hadoop-dæmoner starter. HBase kan køre uafhængigt.
HBase Pseudo Distributed Mode of Installation
Dette er en anden metode til Apache HBase Installation, kendt som Pseudo Distributed Mode of Installation.
Nedenfor er trinene til at installere HBase gennem Pseudo Distributed-tilstand:
Trin 1) Placer hbase-1.1.2-bin.tar.gz i /home/hduser
Trin 2) Pak den ud ved at udføre kommandoen$tar -xvf hbase-1.1.2-bin.tar.gz. Det vil udpakke indholdet, og det vil oprette hbase-1.1.2 på placeringen /home/hduser
Trin 3) Åbn hbase-env.sh som følger nedenfor og nævn JAVA_HOME-stien og Regionsservernes sti på placeringen og eksporter kommandoen som vist
Trin 4) I dette trin skal vi åbne ~/.bashrc-filen og nævne HBASE_HOME-stien som vist i skærmbilledet.
Trin 5) Åbn HBase-site.xml og nævn nedenstående egenskaber i filen.(Kode som nedenfor)
<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>
- Opsætning af Hbase-rodmappe i denne ejendom
- For distribueret opsætning skal vi indstille denne egenskab
- ZooKeeper kvorumsegenskab bør konfigureres her
- Replikeringsopsætning udført i denne egenskab. Som standard placerer vi replikering som 1. I den fuldt distribuerede tilstand er der flere dataknudepunkter til stede, så vi kan øge replikeringen ved at placere mere end 1 værdi i egenskaben dfs.replication
- Klientport skal nævnes i denne ejendom
- ZooKeeper datakatalog kan nævnes i denne ejendom
Trin 6) Start Hadoop-dæmoner først og derefter start HBase-dæmoner som vist nedenfor
Her skal du først starte Hadoop-dæmoner ved at bruge"./start-alle.sh" kommando som vist nedenfor.
Efter at have startet Hbase-dæmoner af hbase-start.sh
Tjek nu jps
Installation af HBase Fuldt distribueret tilstand
- Denne opsætning fungerer i Hadoop-klyngetilstand, hvor flere noder gyder hen over klyngen og kører.
- Installationen er den samme som pseudo distribueret tilstand; den eneste forskel er, at den vil spawne på tværs af flere noder.
- Konfigurationsfilerne nævnt i HBase-site.xml og hbase-env.sh er de samme som nævnt i pseudo-tilstand.
HBase Installationsfejlfinding
1) Problemformulering: Hovedserveren initialiseres, men regionsservere initialiseres ikke
Kommunikationen mellem master- og regionsservere gennem deres IP-adresser. Ligesom den måde, Master vil lytte til, at regionsservere kører eller har IP-adressen 127.0.0.1. IP-adressen 127.0.0.1, som er den lokale vært og løser til masterserverens egen lokale vært.
Årsag:
I dobbelt kommunikation mellem regionsservere og master informerer regionserveren løbende masterserveren om deres IP-adresser 127.0.0.1.
Opløsning:
- Nødt til at fjerne hovedservernavnet node fra den lokale vært, der er til stede i værtsfilen
- Værtsfilens placering /etc/hosts
Hvad skal man ændre:
Åbn /etc./hosts og gå til denne placering
127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost : : 1 localhost3.localdomain3 localdomain3
Rediger ovenstående konfiguration som nedenfor (fjern regionsservernavnet som fremhævet ovenfor)
127.0.0.1 localhost.localdomainlocalhost : : 1 localhost3.localdomain3 localdomain3
2) Problemformulering: Kunne ikke finde min adresse: XYZ på listen over Zookeepers kvorumsservere
Årsag:
- ZooKeeper-serveren kunne ikke starte, og den vil give en fejl som .xyz i navnet på serveren.
- HBase forsøger at starte en ZooKeeper-server på en eller anden maskine, men samtidig er maskinen ikke i stand til at finde sig selv den kvorumskonfiguration, dvs. HBase.zookeeper.quorum konfigurationsfil.
Løsning:-
- Er nødt til at erstatte værtsnavnet med et værtsnavn, der vises i fejlmeddelelsen
- Antag, at vi har DNS-server, så kan vi indstille nedenstående konfigurationer i HBase-site.xml.
- HBase.zookeeper.dns.grænseflade
- HBase.zookeeper.dns.navneserver
3) Problemformulering: Oprettet Root Directory til HBase gennem Hadoop DFS
- Master siger, at du skal køre HBase-migreringsscriptet.
- Ved at køre det, svarer HBase-migreringsscriptet som ingen filer i rodmappen.
Årsag:
- Oprettelse af ny mappe til HBase vha Hadoop Distribueret filsystem
- Her forventer HBase to muligheder
1) Rodbibliotek eksisterer ikke
2) HBase tidligere kørende instans initialiseret før
Opløsning:
- Gør overensstemmelse HBase-rodmappen eksisterer ikke i øjeblikket eller er blevet initialiseret af en tidligere kørsel af HBase-forekomst.
- Som en del af løsningen skal vi følge trin
Trin 1) Brug af Hadoop dfs til at slette HBase-rodmappen
Trin 2) HBase opretter og initialiserer mappen af sig selv
4) Problemformulering: Udløbne hændelser fra Zookeeper-sessionen
Årsag:
- HMaster- eller HRegion-servere lukker ned ved at kaste undtagelser
- Hvis vi observerer logfiler, kan vi finde ud af de faktiske undtagelser, der blev kastet
Det følgende viser undtagelsen, der er kastet på grund af en hændelse, der er udløbet af Zookeeper. De fremhævede hændelser er nogle af undtagelserne i logfilen
Logfilkode som vist nedenfor:
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
Opløsning:
- Standard RAM-størrelse er 1 GB. For at udføre langvarige importer har vi opretholdt RAM-kapacitet på mere end 1 GB.
- Nødt til at øge sessionens timeout for Dyrepasser.
- For at øge sessionstiden ude af Zookeeper skal vi ændre følgende egenskab i "hbase-site.xml", som findes i mappestien hbase /conf.
- Standard sessionstimeout er 60 sekunder. Vi kan ændre det til 120 sekunder som nævnt nedenfor
<property> <name> zookeeper.session.timeout </name> <value>1200000</value> </property> <property> <name> hbase.zookeeper.property.tickTime </name> <value>6000</value> </property>