连接hbase_在docker中使用HBase

本文介绍了如何在Docker环境下安装和使用HBase,包括查看和拉取HBase镜像、启动HBase容器、进入HBase shell以及如何通过修改hbase-site.xml连接远程HBase服务器。在容器内进行HBase操作时,要注意Docker的持久化设置,以确保配置更改在容器重启后仍然有效。
摘要由CSDN通过智能技术生成

由于hbase依赖于hadoop,所以想要使用hbase必须先要安装hadoop(主要是我懒),我们可以通过docker使用别人安装好的hbase.

安装docker

docker的安装很简单,请参考http://www.runoob.com/docker/centos-docker-install.html

查看hbase镜像

首先查看关于hbase的镜像有哪些,运行 docker search hbase

eddc444211c827e0889b0ea492183192.png

我们就使用第一个好了,毕竟star最多。

拉取镜像

使用命令 docker pull harisekhon/hbase 就会将镜像拉取到本地。然后查看当前本地存在哪些镜像

b541d0e21473274cda407b4f796a45b6.png

运行hbase容器并进入容器内部

  • docker run -dit harisekhon/hbase

启动容器,默认的版本是latest,如果运行的版本不是需要加上版本,比如docker run -dit harisekhon/hbase:1.0

7a8d4cee97e8ec26e115f963b69b84cd.png
  • docker exec -it dc0716 bash(进入容器内部,这里的dc0716是容器id前几位)

32249a6f9ab1f24c9aed12b2128fa2c1.png

可以看到此时容器内的hbase目录

运行hbase命令

e35b194096ff34d234dcb3efba12283e.png

运行了./hbase shell命令后就进入了hbase shell命令行,此时可以用命令的方式查看hbase状态,新建表等 由于我们安装的hbase镜像是一个伪分布式的,只有一个服务器,所以查看状态显示只有一个server

1ade4cf784213c578b7ceb7f7dff59e3.png

连接服务器的hbase

hbase默认使用的配置文件是hbase-site.xml位于hbase安装路径下的conf目录,有时候我们可能没有权限连接远程服务器,但是又想要看hbase的数据怎么办呢?这个时候可以修改hbase-site.xml中的配置连接上远程服务器。将项目中的hbase-site.xml替换默认的hbase-site.xml然后重新进入hbase shell即可。但是需要注意的是由于我们使用的docker,所以每次虚拟机关闭之后对hbase容器的修改都会还原,所以如果想要修改之后一直生效可以将修改保存成另一个镜像。

  • 替换自带的hbase-site.xml
  • docker commit containerId saveImageName:version
    比如: docker commit 430d centor-tar:1.0

之前也提到了hbase需要依赖于hadoop以及zookeeper,hbase自带了一个zookeeper,可以不使用它,而使用已有的zookeeper。所以能连接远程hbase服务器主要是因为我们在hbase-site.xml中配置了hadoop以及zookeeper的地址,这两个配置项的属性如下

<property>
    <name>hbase.rootdir</name>
    <value>hdfs://localhost:9020/hbase</value>
</property>
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>localhost</value>
  </property>

这里的localhost:9020需要替换成对应服务器上Hadoop的地址以及端口,通过它们的配置我们就可以去hbase shell上愉快的操作hbase了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值