Comment installer HBase sur Ubuntu (Installation HBase)

Modes d'installation d'Apache HBase

Apache HBase peut รชtre installรฉ selon trois modes. Les caractรฉristiques de ces modes sont mentionnรฉes ci-dessous.

1) Installation en mode autonome (Aucune dรฉpendance au systรจme Hadoop)

  • C'est le mode par dรฉfaut de HBase
  • Il fonctionne sur le systรจme de fichiers local
  • Il n'utilise pas Hadoop HDFS
  • Seul le dรฉmon HMaster peut s'exรฉcuter
  • Non recommandรฉ pour l'environnement de production
  • Fonctionne dans une seule JVM

2) Installation en mode pseudo-distribuรฉ (systรจme Hadoop ร  nล“ud unique + installation HBase)

  • Il fonctionne sur Hadoop HDFS
  • Tous les dรฉmons s'exรฉcutent sur un seul nล“ud
  • Recommandรฉ pour l'environnement de production

3) Installation en mode entiรจrement distribuรฉ (environnement MultinodeHadoop + installation HBase)

  • Il fonctionne sur Hadoop HDFS
  • Tous les dรฉmons vont s'exรฉcuter sur tous les nล“uds prรฉsents dans le cluster
  • Fortement recommandรฉ pour l'environnement de production

Pour l'installation de Hadoop, reportez-vous ร  cette URL Ici

Comment tรฉlรฉcharger la version stable du fichier tar HBase

ร‰tape 1) Aller sur le lien ici pour tรฉlรฉcharger HBase. Cela ouvrira une page Web comme indiquรฉ ci-dessous.

 Tรฉlรฉcharger la version stable du fichier Tar HBase

ร‰tape 2) Sรฉlectionnez la version stable comme indiquรฉ ci-dessous la version 1.1.2

Tรฉlรฉcharger la version stable du fichier Tar HBase

ร‰tape 3) Cliquez sur hbase-1.1.2-bin.tar.gz. Il tรฉlรฉchargera le fichier tar. Copiez le fichier tar dans un emplacement d'installation.

Tรฉlรฉcharger la version stable du fichier Tar HBase

Comment installer HBase dans Ubuntu avec mode autonome

Voici le processus รฉtape par รฉtape d'installation en mode autonome de HBase dans Ubuntu:

ร‰tape 1) Placez la commande ci-dessous
Placez hbase-1.1.2-bin.tar.gz dans /home/hduser
ร‰tape 2) Dรฉcompressez-le en exรฉcutant la commande $tar -xvf hbase-1.1.2-bin.tar.gz.
Il dรฉcompressera le contenu et crรฉera hbase-1.1.2 ร  l'emplacement /home/hduser

ร‰tape 3) Ouvrez hbase-env.sh
Ouvrez hbase-env.sh comme ci-dessous et mentionnez le chemin JAVA_HOME ร  l'emplacement.

Installer HBase dans Ubuntu avec mode autonome

ร‰tape 4) Ouvrez le fichier et mentionnez le chemin
Ouvrez le fichier ~/.bashrc et mentionnez le chemin HBASE_HOME comme indiquรฉ ci-dessous

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

Installer HBase dans Ubuntu avec mode autonome

ร‰tape 5) Ajouter des propriรฉtรฉs dans le fichier
Ouvrez hbase-site.xml et placez les propriรฉtรฉs suivantes dans le fichier

hduser@ubuntu$ gedit hbase-site.xml (code comme ci-dessous)

<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>

Installer HBase dans Ubuntu avec mode autonome

Ici nous plaรงons deux propriรฉtรฉs

  • Un pour le rรฉpertoire racine HBase et
  • Le deuxiรจme pour le rรฉpertoire de donnรฉes correspond ร  ZooKeeper.

Toutes les activitรฉs HMaster et ZooKeeper pointent vers ce hbase-site.xml.

ร‰tape 6) Mentionnez les IP
Ouvrez le fichier hosts prรฉsent dans /etc. emplacement et mentionnez les adresses IP comme indiquรฉ ci-dessous.

Installer HBase dans Ubuntu avec mode autonome

ร‰tape 7) Exรฉcutez maintenant Start-hbase.sh ร  l'emplacement hbase-1.1.1/bin comme indiquรฉ ci-dessous.

Et nous pouvons vรฉrifier par la commande jps pour voir que HMaster est en cours d'exรฉcution ou non.

Installer HBase dans Ubuntu avec mode autonome

ร‰tape 8) Dรฉmarrez le shell HBase
Le shell HBase peut dรฉmarrer en utilisant "shell hbase" et il entrera en mode shell interactif comme indiquรฉ dans la capture d'รฉcran ci-dessous. Une fois qu'il entre en mode shell, nous pouvons exรฉcuter tout type de commandes.

Installer HBase dans Ubuntu avec mode autonome

Le mode autonome ne nรฉcessite pas le dรฉmarrage des dรฉmons Hadoop. HBase peut fonctionner indรฉpendamment.

Mode d'installation pseudo-distribuรฉ HBase

Il s'agit d'une autre mรฉthode d'installation d'Apache HBase, connue sous le nom de mode d'installation pseudo-distribuรฉ.
Vous trouverez ci-dessous les รฉtapes pour installer HBase via le mode pseudo-distribuรฉ :

ร‰tape 1) Placez hbase-1.1.2-bin.tar.gz dans /home/hduser

ร‰tape 2) Dรฉcompressez-le en exรฉcutant command$tar -xvf hbase-1.1.2-bin.tar.gz. Il dรฉcompressera le contenu et crรฉera hbase-1.1.2 ร  l'emplacement /home/hduser

ร‰tape 3) Ouvrez hbase-env.sh comme suit ci-dessous et mentionnez le chemin JAVA_HOME et le chemin des serveurs de rรฉgion ร  l'emplacement et exportez la commande comme indiquรฉ.

Mode d'installation pseudo-distribuรฉ HBase

ร‰tape 4) Dans cette รฉtape, nous allons ouvrir le fichier ~/.bashrc et mentionner le chemin HBASE_HOME comme indiquรฉ dans la capture d'รฉcran.

Installation en mode pseudo-distribuรฉ HBase

ร‰tape 5) Ouvrez HBase-site.xml et mentionnez les propriรฉtรฉs ci-dessous dans le fichier. (Codez comme ci-dessous)

<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>

Mode d'installation pseudo-distribuรฉ HBase

Mode d'installation pseudo-distribuรฉ HBase

  1. Configuration du rรฉpertoire racine Hbase dans cette propriรฉtรฉ
  2. Pour une configuration distribuรฉe, nous devons dรฉfinir cette propriรฉtรฉ
  3. La propriรฉtรฉ de quorum ZooKeeper doit รชtre configurรฉe ici
  4. Configuration de la rรฉplication effectuรฉe dans cette propriรฉtรฉ. Par dรฉfaut, nous plaรงons la rรฉplication sur 1. En mode entiรจrement distribuรฉ, plusieurs nล“uds de donnรฉes sont prรฉsents afin que nous puissions augmenter la rรฉplication en plaรงant plus d'une valeur dans la propriรฉtรฉ dfs.replication.
  5. Le port client doit รชtre mentionnรฉ dans cette propriรฉtรฉ
  6. Le rรฉpertoire de donnรฉes ZooKeeper peut รชtre mentionnรฉ dans cette propriรฉtรฉ

ร‰tape 6) Dรฉmarrez d'abord les dรฉmons Hadoop, puis dรฉmarrez les dรฉmons HBase comme indiquรฉ ci-dessous.

Ici, vous devez d'abord dรฉmarrer les dรฉmons Hadoop en utilisant"./start-all.sh" commande comme indiquรฉ ci-dessous.

Mode d'installation pseudo-distribuรฉ HBase

Aprรจs avoir dรฉmarrรฉ les dรฉmons Hbase par hbase-start.sh

Mode d'installation pseudo-distribuรฉ HBase

Maintenant, vรฉrifie les jps

Mode d'installation pseudo-distribuรฉ HBase

Installation en mode entiรจrement distribuรฉ HBase

  • Cette configuration fonctionnera en mode cluster Hadoop oรน plusieurs nล“uds apparaissent sur le cluster et sont en cours d'exรฉcution.
  • L'installation est la mรชme qu'en mode pseudo distribuรฉ ; la seule diffรฉrence est qu'il apparaรฎtra sur plusieurs nล“uds.
  • Les fichiers de configuration mentionnรฉs dans HBase-site.xml et hbase-env.sh sont les mรชmes que ceux mentionnรฉs en mode pseudo.

Dรฉpannage de l'installation de HBase

1) ร‰noncรฉ du problรจme : Le serveur maรฎtre s'initialise mais les serveurs de rรฉgion ne s'initialisent pas

La communication entre les serveurs maรฎtres et rรฉgionaux via leurs adresses IP. Comme la faรงon dont Master va รฉcouter que les serveurs de rรฉgion sont en cours d'exรฉcution ou ont l'adresse IP de 127.0.0.1. L'adresse IP 127.0.0.1 qui est l'hรดte local et se rรฉsout en l'hรดte local du serveur maรฎtre.

Cause:

Dans une double communication entre les serveurs de rรฉgion et le maรฎtre, le serveur de rรฉgion informe en permanence le serveur maรฎtre que leurs adresses IP sont 127.0.0.1.

Solution:

  • Doit supprimer le nล“ud de nom de serveur maรฎtre de l'hรดte local prรฉsent dans le fichier hosts
  • Emplacement du fichier hรดte /etc/hosts

Que changer :

Ouvrez /etc./hosts et accรฉdez ร  cet emplacement

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

Modifiez la configuration ci-dessus comme ci-dessous (supprimez le nom du serveur de rรฉgion comme indiquรฉ ci-dessus)

127.0.0.1    localhost.localdomainlocalhost
: : 1 localhost3.localdomain3 localdomain3

2) ร‰noncรฉ du problรจme : Impossible de trouver mon adresse : XYZ dans la liste des serveurs de quorum Zookeeper

Cause:

  • Le serveur ZooKeeper n'a pas pu dรฉmarrer et il gรฉnรฉrera une erreur telle que .xyz au nom du serveur.
  • HBase tente de dรฉmarrer un serveur ZooKeeper sur une machine mais en mรชme temps, la machine n'est pas en mesure de trouver elle-mรชme la configuration du quorum, c'est-ร -dire prรฉsente dans HBase.zookeeper.quorum fichier de configuration.

La solution:-

  • Doit remplacer le nom d'hรดte par un nom d'hรดte prรฉsentรฉ dans le message d'erreur
  • Supposons que nous ayons un serveur DNS, nous pouvons dรฉfinir les configurations ci-dessous dans HBase-site.xml.
    • HBase.zookeeper.dns.interface
    • HBase.zookeeper.dns.nameserver

3) ร‰noncรฉ du problรจme : Crรฉation du rรฉpertoire racine pour HBase via Hadoop DFS

  • Le maรฎtre dit que vous devez exรฉcuter le script de migration HBase.
  • En exรฉcutant cela, le script de migration HBase rรฉpond comme s'il n'y avait aucun fichier dans le rรฉpertoire racine.

Cause:

  • Crรฉation d'un nouveau rรฉpertoire pour HBase en utilisant Hadoop Systรจme de fichiers distribuรฉ
  • Ici, HBase s'attend ร  deux possibilitรฉs

1) Le rรฉpertoire racine ne doit pas exister

2) L'instance en cours d'exรฉcution prรฉcรฉdente de HBase a รฉtรฉ initialisรฉe avant

Solution:

  • Assurez-vous que le rรฉpertoire racine HBase n'existe pas actuellement ou a รฉtรฉ initialisรฉ par une exรฉcution prรฉcรฉdente de l'instance HBase.
  • Dans le cadre de la solution, nous devons suivre les รฉtapes

ร‰tape 1) Utilisation de Hadoop dfs pour supprimer le rรฉpertoire racine HBase

ร‰tape 2) HBase crรฉe et initialise le rรฉpertoire par lui-mรชme

4) ร‰noncรฉ du problรจme : ร‰vรฉnements expirรฉs de la session Zookeeper

Cause:

  • Les serveurs HMaster ou HRegion s'arrรชtent en lanรงant des exceptions
  • Si nous observons les journaux, nous pouvons dรฉcouvrir les exceptions rรฉelles qui ont รฉtรฉ gรฉnรฉrรฉes.

Ce qui suit montre l'exception levรฉe en raison de l'expiration de l'รฉvรฉnement Zookeeper. Les รฉvรฉnements mis en รฉvidence sont quelques-unes des exceptions survenues dans le fichier journal

Code des fichiers journaux comme affichรฉ ci-dessous :

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

Solution:

  • La taille de RAM par dรฉfaut est de 1 Go. Pour effectuer des importations de longue durรฉe, nous avons maintenu une capacitรฉ de RAM supรฉrieure ร  1 Go.
  • Je dois augmenter le dรฉlai d'expiration de la session pour Zookeeper.
  • Pour augmenter la durรฉe de session hors de Zookeeper, nous devons modifier la propriรฉtรฉ suivante dans ยซ hbase-site.xml ยป prรฉsente dans le chemin du dossier hbase /conf.
  • Le dรฉlai d'expiration de session par dรฉfaut est de 60 secondes. Nous pouvons le changer ร  120 secondes comme mentionnรฉ ci-dessous
<property>
    <name> zookeeper.session.timeout </name>
    <value>1200000</value>
</property>
<property>
    <name> hbase.zookeeper.property.tickTime </name>
    <value>6000</value>
</property>

Rรฉsumez cet article avec :