Comment inclure hbase-site.xml dans le classpath
Je suis en train d'essayer d'obtenir mon HBase code pour utiliser les paramètres de mon hbase-site.xml. Il semble qu'il utilise les paramètres par défaut à la place de ce qui est spécifié dans le hbase-site.xml fichier de configuration. J'ai redémarré le cluster HBase depuis la mise à jour les fichiers, mais il n'est toujours pas en utilisant des fichiers de configuration que j'ai mis à jour.
Le cluster je suis à l'aide est de 2 nœuds, dont l'un est le maître. Les fichiers de configuration sur les deux nœuds de spécifier l'adresse IP du nœud maître comme la gardienne d'animaux de quorum. Je crois que le problème c'est que mon paramètres spécifiés dans hbase-site.xml ne sont pas utilisés parce que le code fonctionne très bien si je mets le zookeeper quorum à la même valeur que dans mon hbase-site.xml via le code, mais le deuxième nœud ne peut pas communiquer avec le capitaine, si le quorum n'est pas spécifié via le code.
config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", masterNodeIP);
Je serais très heureux d'instructions ou un lien sur la manière d'inclure hbase-site.xml dans mon code du classpath. J'développer avec Eclipse sur une machine Windows, et ont la HBase environnement installé sur un cluster Linux. J'ai l'habitude d'utiliser Eclipse pour compiler le code, à cause des dépendances.
Idéalement, je veux que chaque nœud dans le cluster à utiliser son propre fichier de configuration.
Merci d'avance!
OriginalL'auteur Alex Vertlieb | 2013-01-14
Vous devez vous connecter pour publier un commentaire.
Si c'est à l'aide de la valeur par défaut, indépendamment de ce que vous mettez dans votre
hbase-site.xml
, cela signifie probablement qu'il est en train d'être remplacé par un autre fichier dans votre classpath. C'est très possible, car il y a déjà unconf-site.xml
dans la hbase jar.Pour résoudre ce problème, modifiez votre classpath pour ajouter le répertoire contenant votre
hbase-site.xml
à la fin du classpath pour être sûr que rien ne la remplace. Quelque chose comme:Si elle devient trop obscur, je vous conseille d'exécuter cette ligne de commande et pas dans Eclipse, de sorte que vous pouvez être sûr de savoir exactement ce que vous avez dans votre classpath.
Espère que ça aide.
Vous pouvez trouver les pots que vous avez besoin en tapant
hbase classpath
sur la ligne de commande qui devrait vous donner toutes les bocaux vous avez besoin de travailler avec hbase.Bon, je présume qu'il en est de même pour hadoop. Je peux probablement chercher comment l'associer d'autres projets dans l'instruction de compilation. Je vais travailler avec ce. Merci encore.
Oui vous pouvez le faire
hadoop classpath
trop et il vous donnera la série de bocaux. Je le fais pour tous mes projets quand j'ai besoin de créer un script shell pour exécuter le travail, et c'est très bien jusqu'à présent.Salut @CharlesMenguy et @Alex Vertlieb , je suis en train d'essayer de se connecter HBase (situé à l'intérieur de la VM sur ma machine windows) à partir de Scala code (situé sur ma machine windows). Comment puis-je régler le
hbase-site.xml
dans mon chemin de classe Java à l'intérieur de ma machine windows?OriginalL'auteur Charles Menguy