Nous avons un cluster 8 noeuds à l'aide de CDH3U2 configuré à l'aide de Cloudera Manager. Nous avons un nœud maître dédié à exécuter notre seule instance de Zookeper. Lorsque je configurais la ruche pour exécuter Hadoop local, exécuté du noeud maître, je n'ai aucun problème à récupérer les données de HBASE. Lorsque j'exécute une carte distribuée / réduite via la ruche, je reçois l'erreur suivante lorsque les nœuds esclaves se connectent au zookeeper.
HBase est capable de se connecter à ZooKeEper, mais la connexion se ferme immédiatement. Cela pourrait être un signe que le serveur a trop de connexions (30 est la valeur par défaut). P>
Nous avons essayé de définir Max connexions plus élevées (nous avons même essayé de supprimer la limite). Il s'agit d'un cluster de développement qui a très peu d'utilisateurs, je sais que le problème n'est pas qu'il y a trop de connexions (je suis capable de se connecter à ZookePer à partir des nœuds esclaves à l'aide de ./zkcli).
server Les journaux latéraux indiquent que la session a été résiliée par le client. P>
Le logiciel Hadoop Hadoop dit: «Causée par: org.apache.zookeeper.keeperexception $ ConnectionsLossexception: KeeperErrorCode = ConnectiveLoss For / HBASE P>
N'importe quelle idée Pourquoi je suis incapable de maintenir une connexion à ZooKeEper via la carte de la ruche / réduite? P> Configs pour HBase et Zookeeper sont: P>
<property> <name>hbase.rootdir</name> <value>hdfs://alnnimb01:8020/hbase</value> <description>The directory shared by region servers. Should be fully-qualified to include the filesystem to use. E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR</description> </property> <property> <name>hbase.master.port</name> <value>60000</value> <description>The port master should bind to.</description> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> <description>The mode the cluster will be in. Possible values are false: standalone and pseudo-distributed setups with managed Zookeeper true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)</description> </property> <property> <name>hbase.master.info.port</name> <value>60010</value> <description>The port for the hbase master web UI Set to -1 if you do not want the info server to run.</description> </property> <property> <name>zookeeper.znode.parent</name> <value>/hbase</value> <description>Root ZNode for HBase in ZooKeeper. All of HBase's ZooKeeper files that are configured with a relative path will go under this node. By default, all of HBase's ZooKeeper file path are configured with a relative path, so they will all go under this directory unless changed.</description> </property> <property> <name>zookeeper.znode.rootserver</name> <value>root-region-server</value> <description>Path to ZNode holding root region location. This is written by the master and read by clients and region servers. If a relative path is given, the parent folder will be ${zookeeper.znode.parent}. By default, this means the root location is stored at /hbase/root-region-server.</description> </property> <property> <name>hbase.zookeeper.property.clientPort</name> <value>2181</value> <description>The ZooKeeper client port to which HBase clients will connect</description> </property> <property> <name>hbase.zookeeper.quorum</name> <value>alnnimb01.aln.experian.com</value> <description>Comma separated list of servers in the ZooKeeper Quorum. For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".</description>
4 Réponses :
s'avère que la carte / réduite soumise par la ruche essaie de se connecter à Zookeper à "localhost", quel que soit la configuration du zooveeper.Quorom dans le fichier de configuration. J'ai changé / etc / hosts pour avoir à l'alias 'localhost' point de point sur la propriété intellectuelle de mon noeud maître et que la connexion à ZookeEper est maintenue. Vous recherchez toujours une meilleure résolution, mais cela fonctionnera pour le moment. P>
Je suis désolé d'avoir posté une nouvelle réponse. Je voulais commenter la réponse précédente, mais l'interface utilisateur commentaire semble avoir disparu>. <... P>
Quoi qu'il en soit, je voulais dire que je ressens le même problème, et c'est résolu en faisant le piratage / etc / hôtes, mais cela semble être une solution très sale ... P>
Quelqu'un a-t-il trouvé une façon de réparer cela proprement ... ?? p>
merci :)! p>
Je l'ai compris. C'était un problème de configuration (comme je soupçonnais tout le long). La solution était de: p>
-set 'hbase.zookeper.quorum' dans le "hive-site.xml" et placez-le dans le répertoire "Hadoop-Conf" P>
Qu'est-ce qui m'a jeté, c'est qu'il n'y ait pas de '
Je rencontre exactement le même problème. Ce que j'ai fait, c'est d'utiliser la Conf suivante pour commencer la ruche CLI et cela fonctionne bien.
hive --hiveconf hbase.zookeeper.quorum={zk-host}