Table des matières
1. Contexte du problème
Lors du démarrage du script shell hbase et de la saisie de la liste pour afficher la table, l'erreur suivante se produit
ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet
at org.apache.hadoop.hbase.master.HMaster.checkServiceStarted(HMaster.java:2731)
at org.apache.hadoop.hbase.master.MasterRpcServices.isMasterRunning(MasterRpcServices.java:1205)
at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:395)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133)
at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338)
at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318)
2. Solutions
Tout d'abord , après avoir lu de nombreuses méthodes sur Internet, la plupart d'entre elles ont déclaré qu'une fois que hdfs est entré en mode sans échec, hbase ne peut pas démarrer, ce qui entraîne le démarrage de hadoop.
Désactivez simplement le mode sans échec et redémarrez HBase.
1. Vérifiez si le nœud de nom est dans un état sûr
hadoop dfsadmin -safemode get
Si le mode sans échec est désactivé, il est à l'état ferméSi le mode sans échec est activé, il est activé et doit être désactivé.
2. Désactivez le mode sans échechadoop dfsadmin -safemode quitter
J'ai essayé cette méthode, mais la mienne était initialement fermée et cette méthode n'a pas résolu mon problème.
Deuxièmement , mon hadoop est 3.3.0 et hbase est 2.4.3. Lorsque je l'ai installé, j'ai suivi le site officiel de hbase. Le site officiel disait que hadoop3.3.X est compatible avec hbase2.4.x, mais j'ai regardé en ligne . Certaines informations parlent d'une incompatibilité de version. On dit que hadoop3.3. Je n'ai tout simplement pas essayé
Finalement, j'ai vu une question et une réponse disant que le problème avait été résolu en ajoutant quelques configurations au fichier de configuration hbase hbase-site.xml. J'ai emboîté le pas et j'ai finalement résolu le problème.
La méthode spécifique est la suivante :
1. Arrêtez le cluster hbase
2. Ajoutez la configuration suivante au fichier de configuration hbase-site.xml
<property>
<name>hbase.wal.provider</name>
<value>système de fichiers</value>
</property>3. Démarrez le cluster hbase à partir de
J'ai utilisé la deuxième méthode pour le résoudre