1.拉取docker镜像
docker pull harisekhon/hbase:1.3
2.创建、运行HBase容器
docker run -d -h hbase -p 2181:2181 -p 8080:8080 -p 8085:8085 -p 9090:9090 -p 9095:9095 -p 16000:16000 -p 16010:16010 -p 16020:16020 --name hbase1.3 harisekhon/hbase:1.3
zookeeper端口:2181
HMaster:16000
web管理页面:16010
Regionserver:16020
3.开放本地端口
如果是云服务器需要开放安全组,上述docker部署映射的端口
4.windows环境调试
需要安装hadoop
链接:https://pan.baidu.com/s/10g3dKab0tZXGA1yYVdMP8g 密码:pj9n 里面包含2.6.0-3.0.0所有版本
创建HADOOP_HOME环境变量
path变量中添加路径
hosts修改
C:\Windows\System32\drivers\etc\hosts
添加一行
xxx.xxx.xxx.xx hbase
ip域名 ip如果是云服务器,就是绑定的外网ip;如果是本机则是 127.0.0.1
5.引入pom依赖
<properties>
<hbase.version>1.3.0</hbase.version>
</properties>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>${hbase.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
6.测试连接
public static void main(String[] args) throws IOException {
//第一步,设置HBsae配置信息
Configuration configuration = HBaseConfiguration.create();
configuration.set("hbase.zookeeper.quorum","ip"); //hbase 服务地址 hosts中的ip
//这里使用的是接口Admin 该接口有一个实现类HBaseAdmin 也可以直接使用这个实现类
// HBaseAdmin baseAdmin = new HBaseAdmin(configuration);
Admin admin = ConnectionFactory.createConnection(configuration).getAdmin();
if(admin !=null){
try {
//获取到数据库所有表信息
HTableDescriptor[] allTable = admin.listTables();
for (HTableDescriptor hTableDescriptor : allTable) {
System.out.println(hTableDescriptor.getNameAsString());
}
}catch (IOException e) {
e.printStackTrace();
}
}
}
GitHub demo:github.com/joyuce/Hbas…