org.apache.hadoop.hbase.PleaseHoldException: Maître est en cours d'initialisation
J'essaye de configurer le évolutifs à plusieurs nœuds de cluster de Hbase. Quand je fais les juges de paix sur l'esclave-je obtenir
5780 Jps
5558 HQuorumPeer
5684 HRegionServer
1963 DataNode
2093 TaskTracker
de même sur le maître-je obtenir
4254 SecondaryNameNode
15226 Jps
14982 HMaster
3907 NameNode
14921 HQuorumPeer
4340 JobTracker
Tout est runnnig correctement. Mais lorsque je tente de créer une table sur hbase shell. Il donne une erreur
ERROR: org.apache.hadoop.hbase.PleaseHoldException: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
regionserver journal de mon esclave(où la région serveur est en cours d'exécution):
2013-06-11 13:09:53,119 INFO org.apache.hadoop.hbase.regionserver.HRegionServer: Attempting connect to Master server at localhost,60000,137093$
2013-06-11 13:10:53,190 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
org.apache.hadoop.hbase.ipc.HBaseClient$FailedServerException: This server is in the failed servers list: localhost/127.0.0.1:60000
at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupIOstreams(HBaseClient.java:425)
at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:1124)
at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:974)
at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:86)
at $Proxy8.getProtocolVersion(Unknown Source)
at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:138)
at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:208)
at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:2037)
at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2083)
at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:744)
at java.lang.Thread.run(Thread.java:722)
2013-06-11 13:10:53,391 INFO org.apache.hadoop.hbase.regionserver.HRegionServer: Attempting connect to Master server at localhost,60000,137093$
Pour info, j'ai également pris soin de fichier /etc/hosts sur maître et de l'esclave.
127.0.0.1 localhost
127.0.0.1 naresh-PC
J'ai de nouveau fait des modifications dans le fichier /etc/hosts 127.0.1.1 à naresh-PC. Mais toujours cette erreur
2013-06-11 14:51:17,781 INFO org.apache.hadoop.hbase.regionserver.HRegionServer: Attempting connect to Master server at naresh-pc,60000,137094$
2013-06-11 14:52:17,817 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
java.net.UnknownHostException: unknown host: naresh-pc
at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.<init>(HBaseClient.java:276)
at org.apache.hadoop.hbase.ipc.HBaseClient.createConnection(HBaseClient.java:255)
at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:1111)
at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:974)
at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:86)
at $Proxy8.getProtocolVersion(Unknown Source)
at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:138)
at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:208)
at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:2037)
at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2083)
at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:744)
at java.lang.Thread.run(Thread.java:722)
Aussi, je suis capable de le faire sans mot de passe ssh de maître à l'esclave et l'esclave au maître.
OriginalL'auteur Naresh | 2013-06-11
Vous devez vous connecter pour publier un commentaire.
Essayez d'effacer tous les etats de la Gardienne.
J'avais la même question, et de suivi de cette approche et il a bien fonctionné.
A couru dans tout cela aujourd'hui, et d'essuyer la zk répertoire de données a également travaillé pour moi. Nishu, votre hbase-site.xml le fichier doit avoir une hbase.zookeeper.de la propriété.dataDir propriété qui indique où ce chemin est. Assurez-vous juste hbase est vers le bas avant de l'effacer.
OriginalL'auteur Nishu Tayal
Vous avez besoin de changer la configuration du nœud esclave de point au niveau de la maîtrise. Il pointe actuellement vers localhost et non pas de la connexion à la véritable maître:
Après le réglage de
<property> <name>hbase.master</name> <value>ip-hmaster:60000</value> </property>
dans/usr/lib/hbase/conf/hbase-site.xml
sur tous les nœuds esclaves le problème a été résolu. Merci pour la réponse.OriginalL'auteur Arnon Rotem-Gal-Oz
Je suis l'hébergement de mon propre cluster à l'intérieur de Docker. Voici ce qui a fonctionné dans mon cas. Je grepped la HBase fichier journal des erreurs et a trouvé "Maître, nous fait passer un autre nom d'hôte à utiliser"
Je l'ai associé mon-nom-hôte à 111.22.333.444 dans mon fichier hosts, redémarré HBase et cela a fonctionné.
OriginalL'auteur s d
J'ai aussi eu le même problème avec une architecture distribuée cluster hbase avec la configuration ci-dessous.
RCA:
La sauvegarde maîtres des nœuds ont été tenté d'être démarré lorsque le cluster a commencé.
Solution
J'ai supprimé la sauvegarde des maîtres en faisant $HBASE_HOME/conf/sauvegarde-maîtres vide dans tous les hbase nœuds.
J'ai donc eu un cluster en cours d'exécution sans sauvegarde des maîtres.
Je me demande si le nœud maître et maître nœuds ne doit pas fonctionner comme regionservers? La HBase documentation dit le contraire.
OriginalL'auteur Abdurrahman Adebiyi