„HBase“ diegimas „Ubuntu“

Turinys:

Anonim

Š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.rootdirfile:///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.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. Šioje ypatybėje nustatomas „Hbase“ šakninis katalogas
  2. Norėdami paskirstyti konfigūraciją, turime nustatyti šią savybę
  3. Čia turėtų būti nustatyta „ZooKeeper“ kvorumo nuosavybė
  4. Š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ę.

  5. Klientų uostas turėtų būti paminėtas šioje nuosavybėje
  6. Š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