配置文件hbase-site.xml:
<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://192.168.1.128:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.master</name> <value>192.168.1.128:60000</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>192.168.1.128</value> </property> <property> <name>zookeeper.session.timeout</name> <value>60000</value> </property> <property> <name>hbase.zookeeper.prpperty.clientPort</name> <value>2181</value> </property>
</configuration>
远程调用:
conf = HBaseConfiguration.create(); conf.set("hbase.master", "192.168.1.128:60000"); conf.set("hbase.zookeeper.quorum", "192.168.1.128.184"); conf.set("hbase.zookeeper.property.clientPort", "2181");
windows的C:\Windows\System32\drivers\etc的hosts文件加上一句:
1)、先启动hadoop后,再开启hbase
2)、去掉hadoop的安全模式:hadoop dfsadmin -safemode leave
3)、把/etc/hosts里的linux的IP改为服务器当前的IP
4) 、确认hbase的hbase-site.xml中
<name>hbase.rootdir</name>
<value>hdfs://node:49002/hbase</value>
与hadoop的core-site.xml中
<name>fs.default.name</name>
<value>hdfs://node:49002/hbase</value>
保持一致
<value>hdfs://localhost:8020/hbase</value>
6)、重新执行./start-hbase.sh之前,先kill掉当前的hbase和zookeeper进程
7)、 关闭hbase之前,不能关闭hadoop,要先停止hbase 再停止hadoop