docker 部署Hbase及spring 整合

406 阅读1分钟

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…