必会技能!Docker助你快速上手玩转HBase!
前言:本文主要讲述了如何使用Docker快速上手HBase,省去繁杂的安装部署环境,直接上手,小白必备。适合HBase入门学习及简单代码测试。
1. Docker 安装
参考地址:
https://yeasy.gitbook.io/docker_practice/install
支持常用的操作系统:Centos / ubuntu / Windows / macos 等。

2. 拉取镜像
镜像地址:
https://hub.docker.com/r/harisekhon/hbase/tags
这里推荐使用harisekho,支持多个版本(最新支持HBase2.1.3),star数也最多,大家也可以在镜像库中搜索其他镜像。
以下前提:第一步Docker安装完成。
拉取最新版本:
docker pull harisekhon/hbase:latest
拉取指定版本:
docker pull harisekhon/hbase:1.4
3. 运行容器
Docker安装成功后,直接运行以下命令。
docker run -d -h docker-hbase \
-p 2181:2181 \
-p 8080:8080 \
-p 8085:8085 \
-p 9090:9090 \
-p 9000:9000 \
-p 9095:9095 \
-p 16000:16000 \
-p 16010:16010 \
-p 16201:16201 \
-p 16301:16301 \
-p 16020:16020\
--name hbase \
harisekhon/hbase
配置服务器hosts文件,添加如下配置:
127.0.0.1 docker-hbase
配置本地hosts文件,添加如下配置:
服务器ip docker-hbase
4. HBase实操
4.1 访问HBase WebUI:
http://docker-hbase:16010/master-status
4.2 访问HBase Shell
查看正在运行的容器:
docker ps
找到容器id,进入容器:
docker exec -it <container ID前缀> bash
访问HBase Shell,进入容器后直接输入:
bash-4.4# hbase shell
2020-05-20 03:59:26,228 WARN [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.1.3, rda5ec9e4c06c537213883cca8f3cc9a7c19daf67, Mon Feb 11 15:45:33 CST 2019
Took 0.0049 seconds
hbase(main):001:0>
Shell 测试:
hbase(main):001:0> create 'test-docker','f'
Created table test-docker
Took 1.4964 seconds
=> Hbase::Table - test-docker
hbase(main):002:0> list
TABLE
test-docker
3 row(s)
Took 0.0281 seconds
=> ["test-docker"]
hbase(main):003:0>
4.3 访问Zookeeper
输入exit退出容器。并执行以下命令进入zk:
bash-4.4# hbase zkcli
查看zk节点:
ls /
[zookeeper, hbase]
4.4 Java Api 测试
public class HBaseHelper {
public static String ZK_QUORUM = "docker-hbase";
public static String ZK_ZNODE = "/hbase";
public static String ZK_PORT = "2181";
public static String SUPER_USER = "hbase";
// 配置连接信息
public Configuration getConfiguration() {
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", ZK_QUORUM);
conf.set("zookeeper.znode.parent", ZK_ZNODE);
conf.set("hbase.zookeeper.property.clientPort", ZK_PORT);
return conf;
}
...
...
...
}
想查看完整Demo代码可以访问Github地址:
https://github.com/zhoupengbo/demos-bigdata/tree/master/hbase/hbase-docker-demo

转载请注明出处!欢迎关注本人微信公众号【HBase工作笔记】
必会技能!Docker助你快速上手玩转HBase!的更多相关文章
- 前端开发工具包 WijmoJS 2019V1正式发布:全新的在线 Demo 系统,助您快速上手,开发无忧
前端开发工具包WijmoJS在2019年的第一个主要版本2019V1已经发布,本次发布包括了更加易用的在线Demo系统.各控件新增功能.NPM 包的改动,以及全新的浏览器API组件. WijmoJ ...
- ShardingSphere 知识库更新 | 官方样例集助你快速上手
Apache ShardingSphere 作为 Apache 顶级项目,是数据库领域最受欢迎的开源项目之一.经过 5 年多的发展,ShardingSphere 已获得超 14K Stars 的关注, ...
- 想知道Vue3与Vue2的区别?五千字教程助你快速上手Vue3!
从Vue3发布以来,我就一直对其非常感兴趣,就一直想着将其投入公司的生产中,但是开始考虑到很多不确定性就暂时对一些很小的功能进行一些尝试:慢慢的发现组合式Api的形式非常适合开发(个人感觉),尤其是V ...
- 用Docker在一台笔记本电脑上搭建一个具有10个节点7种角色的Hadoop集群(上)-快速上手Docker
如果想在一台电脑上搭建一个多节点的Hadoop集群,传统的方式是使用多个虚拟机.但这种方式占用的资源比较多,一台笔记本能同时运行的虚拟机的数量是很有限的.这个时候我们可以使用Docker.Docker ...
- webpack快速入门——webpack3.X 快速上手一个Demo
1.进入根目录,建两个文件夹,分别为src和dist 1).src文件夹:用来存放我们编写的javascript代码,可以简单的理解为用JavaScript编写的模块. 2).dist文件夹:用来存放 ...
- Rancher 快速上手指南操作(1)
Rancher 快速上手指南操作(1)该指南知道用户如何快速的部署Rancher Server 管理容器.前提是假设你的机器已经安装好docker了.1 确认 docker 的版本,下面是 ubunt ...
- EF Core 快速上手——EF Core 入门
EF Core 快速上手--EF Core 介绍 本章导航 从本书你能学到什么 对EF6.x 程序员的一些话 EF Core 概述 1.3.1 ORM框架的缺点 第一个EF Core应用 本文是对 ...
- Ansible快速上手
ansible 是通过python 语言开发的自动化运维工具,可以实现批量系统设置.批量程序部署.批量执行命令等功能 下面是基于docker使用ansible测试示例,可以让新手快速上手使用 一.新建 ...
- [转]Rancher 快速上手指南操作(1)
本文转自:http://www.cppblog.com/zhiyewang/archive/2016/03/17/213053.aspx Rancher 快速上手指南操作(1)该指南知道用户如何快速的 ...
随机推荐
- 源码安装nginx 方法二
yum 仓库不能用大写字母 [root@oldboy conf.d]# gzip * 压缩当前目录下的所有文件 gzip ./* gzip . gzip./ # 关闭防火墙和selinux [root ...
- 【Linux常见命令】touch命令
touch - change file timestamps touch [文件名] 就是“摸”一下文件,如果文件不存在,就建立新文件:如果文件存在,就改变文件的访问时间atime等时间戳信息. 语法 ...
- Codeforces Round #530 (Div. 1) 1098A Sum in the tree
A. Sum in the tree Mitya has a rooted tree with nn vertices indexed from 11 to nn, where the root ha ...
- B. Math Show 暴力 C - Four Segments
B. Math Show 这个题目直接暴力,还是有点难想,我没有想出来,有点思维. #include <cstdio> #include <cstdlib> #include ...
- keepalived高可用服务配置管理
实验环境: 主机 ipaddress 服务 备注 k8s-master1 10.0.0.63 nginx k8s-master2 10.0.0.64 nginx k8s-node1 10.0.0.65 ...
- Spring官网阅读(五)BeanDefinition(下)
上篇文章已经对BeanDefinition做了一系列的介绍,这篇文章我们开始学习BeanDefinition合并的一些知识,完善我们整个BeanDefinition的体系,Spring在创建一个bea ...
- react中redux的理解
定义 redux可以看作是flux的进阶版,主要用于react中公共状态(数据)的管理 redux底层原理 redux有一个createStore方法,这个方法用户创建公共存储空间,createSto ...
- crontab自动启动小任务例子(每一分钟将当前日期打入一个文件)
crontab -l #查看当前定时任务列表 显示没有,那么我们来安装一下(必须在root用户下) – yum install vixie-cron – yum install crontabs ...
- 【Hadoop离线基础总结】HDFS的API操作
HDFS的API操作 创建maven工程并导入jar包 注意 由于cdh版本的所有的软件涉及版权的问题,所以并没有将所有的jar包托管到maven仓库当中去,而是托管在了CDH自己的服务器上面,所以我 ...
- VA01销售订单批导问题解决
1业务场景 事务代码:VA01创建销售订单,VA02修改销售订单 可以通过BAPI_SALESORDER_CREATEFROMDAT2批量创建 可以通过BAPI_SALESORDER_CHANGE批量 ...