Cloudera Manager를 사용하여 구성된 CDH3u2를 사용하는 8 노드 클러스터가 있습니다. 유일한 사육사 인스턴스를 실행하는 전용 마스터 노드가 있습니다. 마스터 노드에서 실행 된 로컬 hadoop을 실행하도록 하이브를 구성 할 때 HBase에서 데이터를 가져 오는 데 문제가 없습니다. 하이브를 통해 분산 맵/축소를 실행하면 슬레이브 노드가 사육사에게 연결될 때 다음과 같은 오류가 발생합니다.하이브/HBase 통합 - 사육사 세션 즉시 종료
HBase가 ZooKeeper에 연결할 수 있지만 즉시 연결이 닫힙니다. 이는 서버에 너무 많은 연결이 있음을 나타내는 기호 일 수 있습니다 (기본값은 30입니다).
우리는 최대 연결 수를 더 높게 설정하려고 시도했습니다 (우리는 한계를 제거하려고 시도했습니다). 이것은 사용자가 거의없는 개발 클러스터입니다. 문제는 너무 많은 연결이 없다는 것입니다. (저는 ./zkCli를 사용하여 슬레이브 노드에서 사육사에게 연결할 수 있습니다).
서버 쪽 로그는 세션이 클라이언트에 의해 종료되었음을 나타냅니다.
클라이언트 측 하둡 로그는 말한다 : org.apache.zookeeper.KeeperException $ ConnectionLossException : 가 '에 의한 KeeperErrorCode = ConnectionLoss에 대한/HBase를
내가 하이브지도를 통해 사육사의 연결을 maintian 드릴 수 없습니다 이유는 어떤 생각 /줄이다? HBase를하고 사육사에 대한
CONFIGS은 다음과 같습니다
# Autogenerated by Cloudera SCM on Wed Dec 28 08:42:23 CST 2011
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper
clientPort=2181
maxClientCnxns=1000
minSessionTimeout=4000
maxSessionTimeout=40000
HBase를 사이트 XML은 다음과 같습니다
<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>