Hadoop 使用hbase中现有的zookeeper
我在独立模式下启动了zookeeper服务,zookeeper二进制文件与Kafka一起携带。以下是zookeeper.properties的内容Hadoop 使用hbase中现有的zookeeper,hadoop,hbase,apache-zookeeper,Hadoop,Hbase,Apache Zookeeper,我在独立模式下启动了zookeeper服务,zookeeper二进制文件与Kafka一起携带。以下是zookeeper.properties的内容 dataDir=/tmp/zookeeper clientPort=2181 maxClientCnxns=0 我使用以下命令启动zookeeper kafka/bin/zookeeper-server-start.sh conf
dataDir=/tmp/zookeeper
clientPort=2181
maxClientCnxns=0
我使用以下命令启动zookeeper
kafka/bin/zookeeper-server-start.sh config/zookeeper.properties
现在zookeeper已经启动并运行,所以我不希望hbase启动自己的zookeeper服务。我在hbase env.sh
中设置了以下属性:
export HBASE_MANAGES_ZK=false
此外,这里还有hbase site.xml
的内容
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:8030/hbase</value>
</property>
</configuration>
hbase似乎仍在尝试启动自己的zookeeper,如何防止它这样做?我假设您正在尝试以伪分布式模式运行hbase。在这种情况下,hbase.cluster.distributed应设置为true,并且应在hbase-site.xml中提供您的zookeeper仲裁详细信息,如中所述,使用hbase for Kafka使用的ZK为我解决了问题。按如下所示配置$HBASE_HOME/conf/HBASE-site.xml并启动HBASE服务器。此后,仅启动kafka服务器 hbase-site.xml配置
<configuration>
<property>
<name>hbase.rootdir</name>
<value>/tmp/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/tmp/zookeeper</value>
</property>
</configuration>
hbase.rootdir
/tmp/hbase
hbase.zookeeper.property.dataDir
/tmp/动物园管理员
<configuration>
<property>
<name>hbase.rootdir</name>
<value>/tmp/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/tmp/zookeeper</value>
</property>
</configuration>