Šioje pamokoje sužinosite,
- „Apache HBase“ diegimo režimai
- Kaip atsisiųsti stabilią „Hbase tar“ failo versiją
- „Hbase“ - autonominio režimo diegimas
- „Hbase“ - „Pseudo Distributed“ diegimo būdas
- „Hbase“ - visiškai paskirstyto režimo diegimas
- „HBase“ diegimo trikčių šalinimas
„Apache HBase“ diegimo režimai
„Apache HBase“ galima įdiegti trimis režimais. Šių režimų ypatybės yra paminėtos žemiau.
1) autonominio režimo diegimas (nepriklauso nuo „Hadoop“ sistemos)
- Tai yra numatytasis „HBase“ režimas
- Tai veikia prieš vietinę failų sistemą
- Jis nenaudoja „Hadoop HDFS“
- Paleisti gali tik „HMaster“ demonas
- Nerekomenduojama gamybos aplinkai
- Veikia viename JVM
2) Pseudo paskirstyto režimo diegimas (vieno mazgo „Hadoop“ sistema + „HBase“ diegimas)
- Jis veikia su „Hadoop HDFS“
- Visi „Daemons“ veikia viename mazge
- Rekomenduoti gamybos aplinkai
3) Pilnai paskirstyto režimo diegimas („MultinodeHadoop“ aplinka + „HBase“ diegimas)
- Jis veikia su „Hadoop HDFS“
- Visi demonai eis per visus mazgus, esančius klasteryje
- Labai rekomenduojama gamybos aplinkai
Norėdami įdiegti „Hadoop“, žiūrėkite šį URL čia
Kaip atsisiųsti stabilią „Hbase tar“ failo versiją
1 žingsnis. Eikite į nuorodą čia, kad atsisiųstumėte „HBase“. Tai atvers tinklalapį, kaip parodyta žemiau.
2 žingsnis) Pasirinkite stabilią versiją, kaip parodyta žemiau 1.1.2 versija
3 žingsnis) Spustelėkite „hbase-1.1.2-bin.tar.gz“. Jis atsisiųs dervos failą. Nukopijuokite dervos failą į diegimo vietą.
„Hbase“ - autonominio režimo diegimas:
Diegimas atliekamas „Ubuntu“ su jau įdiegtu „Hadoop“.
1 žingsnis. Įdėkite „hbase-1.1.2-bin.tar.gz“ į / home / hduser
2 žingsnis. Išpakuokite jį vykdydami komandą $ tar -xvf hbase-1.1.2-bin.tar.gz . Tai išpakuos turinį ir sukurs „hbase-1.1.2“ vietoje / home / hduser
3 žingsnis. Atidarykite hbase-env.sh, kaip nurodyta toliau, ir vietoje paminėkite JAVA_HOME kelią.
4 žingsnis) Atidarykite ~ / .bashrc failą ir paminėkite HBASE_HOME kelią, kaip parodyta žemiau
eksportuoti HBASE_HOME = / home / hduser / hbase-1.1.1 eksportuoti PATH = $ PATH: $ HBASE_HOME / bin |
5 žingsnis. Atidarykite „hbase-site.xml“ ir įdėkite šias ypatybes į failą
hduser @ ubuntu $ gedit hbase-site.xml (kodas, kaip nurodyta toliau)
hbase.rootdir file:///home/hduser/HBASE/hbase hbase.zookeeper.property.dataDir /home/hduser/HBASE/zookeeper
Čia pateikiame dvi savybes
- Vienas skirtas HBase šakniniam katalogui ir
- Antrasis duomenų katalogo puslapis atitinka „ZooKeeper“.
Visa „HMaster“ ir „ZooKeeper“ veikla nurodo šį „hbase-site.xml“.
6 žingsnis. Atidarykite kompiuterių failą, esantį / etc. vietą ir paminėkite IP, kaip parodyta žemiau.
7 žingsnis) Dabar paleiskite Start-hbase.sh „hbase-1.1.1 / bin“ vietoje, kaip parodyta žemiau.
JPS komanda galime patikrinti, ar „HMaster“ veikia, ar ne.
8 žingsnis) „HBase“ apvalkalas gali prasidėti naudojant „hbase shell“ ir jis pereis į interaktyvų apvalkalo režimą, kaip parodyta žemiau esančioje ekrano kopijoje. Kai jis persijungia į apvalkalo režimą, galime atlikti visų tipų komandas.
Atskiram režimui nereikia paleisti „Hadoop“ demonų. „HBase“ gali veikti savarankiškai.
„Hbase“ - „Pseudo Distributed“ diegimo būdas:
Tai dar vienas „Apache Hbase“ diegimo būdas, žinomas kaip „Pseudo Distributed“ diegimo režimas. Toliau pateikiami žingsniai, kaip įdiegti „HBase“ naudojant šį metodą.
1 žingsnis. Įdėkite „hbase-1.1.2-bin.tar.gz“ į / home / hduser
2 žingsnis. Išpakuokite jį vykdydami komandą $ tar -xvf hbase-1.1.2-bin.tar.gz . Tai išpakuos turinį ir sukurs „hbase-1.1.2“ vietoje / home / hduser
3 žingsnis. Atidarykite hbase-env.sh taip, kaip nurodyta toliau, ir vietoje paminėkite JAVA_HOME kelią ir regiono serverių kelią ir eksportuokite komandą, kaip parodyta
4 žingsnis) Šiame žingsnyje atidarysime ~ / .bashrc failą ir paminėsime HBASE_HOME kelią, kaip parodyta ekrano kopijoje.
5 žingsnis. Atidarykite „HBase-site.xml“ ir faile paminėkite žemiau esančias ypatybes. (Kodas, kaip nurodyta toliau)
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
- Šioje ypatybėje nustatomas „Hbase“ šakninis katalogas
- Norėdami paskirstyti konfigūraciją, turime nustatyti šią savybę
- Čia turėtų būti nustatyta „ZooKeeper“ kvorumo nuosavybė
- Šioje nuosavybėje nustatytas kopijavimas. Pagal numatytuosius nustatymus dedame replikaciją kaip 1.
Visiškai paskirstytame režime yra keli duomenų mazgai, todėl mes galime padidinti replikaciją į dfs.replication ypatybę įterpdami daugiau nei 1 vertę.
- Klientų uostas turėtų būti paminėtas šioje nuosavybėje
- Šioje nuosavybėje galima paminėti „ZooKeeper“ duomenų katalogą
6 žingsnis) Pirmiausia paleiskite „Hadoop“ demonus, o po to - „HBase“ demonus
Pirmiausia turite paleisti „Hadoop“ demonus naudodami komandą „./start-all.sh“, kaip parodyta žemiau.
Pradėjus „Hbase“ demonus, parašė hbase-start.sh
Dabar patikrinkite jps
„Hbase“ - visiškai paskirstyto režimo diegimas: -
- Šis nustatymas veiks „Hadoop“ sankaupos režimu, kai keli mazgai neršia visoje grupėje ir veikia.
- Diegimas yra toks pat kaip pseudo paskirstyto režimo; vienintelis skirtumas yra tas, kad jis nerš per kelis mazgus.
- Konfigūracijos failai, paminėti HBase-site.xml ir hbase-env.sh, yra tokie patys, kaip ir pseudo režime.
„HBase“ diegimo trikčių šalinimas
1) Problemos pareiškimas: Pagrindinis serveris inicijuoja, bet regiono serveriai neinicializuoja
Ryšys tarp pagrindinio ir regiono serverių per jų IP adresus. Kaip ir tai, kaip „Master“ klausys, ar veikia regiono serveriai, ar IP adresas yra 127.0.0.1. IP adresas 127.0.0.1, kuris yra vietinis kompiuteris ir kuris nustatomas pagrindiniam serveriui priklausančiam vietiniam kompiuteriui.
Priežastis:
Esant dvigubam ryšiui tarp regiono serverių ir pagrindinio serverio, regiono serveris nuolat informuoja pagrindinį serverį apie jų IP adresus 127.0.0.1.
Sprendimas:
- Turite pašalinti pagrindinio serverio vardo mazgą iš vietinio pagrindinio kompiuterio, esančio kompiuterio faile
- Pagrindinio failo vieta / etc / hosts
Ką pakeisti:
Atidarykite /etc./hosts ir eikite į šią vietą
127.0.0.1 fully.qualified.regionservernameregionservername localhost.localdomain localhost: : 1 localhost3.localdomain3 localdomain3
Pakeiskite aukščiau pateiktą konfigūraciją, kaip nurodyta toliau (pašalinkite regiono serverio pavadinimą, kaip paryškinta aukščiau)
127.0.0.1 localhost.localdomainlocalhost: : 1 localhost3.localdomain3 localdomain3
2) Problemos pareiškimas: „ Zookeeper“ kvorumo serverių sąraše nepavyko rasti mano adreso: XYZ
Priežastis:
- „ZooKeeper“ serverio nepavyko paleisti, ir jis serverio pavadinime sukels tokią klaidą kaip .xyz.
- „HBase“ bando paleisti „ZooKeeper“ serverį tam tikroje mašinoje, tačiau tuo pačiu metu mašina negali rasti kvorumo konfigūracijos, ty esamos HBase.zookeeper.quorum konfigūracijos faile.
Sprendimas: -
- Turite pakeisti pagrindinio kompiuterio pavadinimą pagrindinio kompiuterio pavadinimu, kuris pateikiamas klaidos pranešime
- Tarkime, kad turime DNS serverį, tada HBase-site.xml galime nustatyti toliau nurodytas konfigūracijas.
- „HBase.zookeeper.dns.interface“
- HBase.zookeeper.dns.nameserver
3) Problemos pareiškimas: sukurtas HBase šakninis katalogas per Hadoop DFS
- Meistras sako, kad reikia paleisti HBase migracijos scenarijų.
- Vykdant tai , HBase perkėlimo scenarijus atsako kaip ne failai šakniniame kataloge .
Priežastis:
- Naujo katalogo „HBase“ sukūrimas naudojant „Hadoop Distributed“ failų sistemą
- Čia „HBase“ tikisi dviejų galimybių
1) Nėra šakninio katalogo
2) HBase ankstesnė vykdoma instancija inicijuota anksčiau
Sprendimas:
- Patikrinkite, ar HBase šakninis katalogas šiuo metu neegzistuoja arba jį inicijavo ankstesnis HBase egzemplioriaus vykdymas.
- Kaip sprendimo dalį turime atlikti veiksmus
1 žingsnis) Naudodami „Hadoop dfs“ ištrinkite HBase šakninį katalogą
2 žingsnis) „ HBase“ pati sukuria ir inicializuoja katalogą
4) Problemos teiginys: „ Zookeeper“ sesijos įvykiai pasibaigė
Priežastis:
- „HMaster“ arba „HRegion“ serveriai išsijungia, išmesdami išimtis
- Jei stebime žurnalus, galime sužinoti faktines išimtis
Toliau parodyta išimtis, padaryta dėl „Zookeeper“ pasibaigusio įvykio. Paryškinti įvykiai yra keletas išimčių, įvykusių žurnalo faile
Žurnalo failų kodas, kaip parodyta žemiau:
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
Sprendimas:
- Numatytasis RAM dydis yra 1 GB. Ilgą laiką importuodami išlaikėme daugiau nei 1 GB RAM.
- Turite padidinti „Zookeeper“ sesijos skirtąjį laiką.
- Norėdami padidinti sesijos laiką iš „Zookeeper“, „hbase-site.xml“ turime pakeisti šią ypatybę, esančią „hbase / conf“ aplanko kelyje.
- Numatytasis seanso skirtasis laikas yra 60 sekundžių. Mes galime jį pakeisti į 120 sekundžių, kaip minėta žemiau
zookeeper.session.timeout 1200000 hbase.zookeeper.property.tickTime 6000