Docker-13:Docker安装Hbase

简介: Docker环境中安装配置Hbase,并且初始化本地环境访问Hbase

1. 背景

HDOOP

HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 Bigtable :一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

因为在实际项目中需要使用到 Hbase 帮助我们存储离散型的文本文件,以前我们都是通过 FastDFS,但它受制于 FastDFS 自身一些问题不能很好满足我们的实际业务需要,例如对指定单个文件的操作以及在开放的访问方式上。所以我们最终选型在 Hbase 。

2. 环境准备

我通过在 Windows 10 操作系统的虚拟机,安装的 CentOS 7.0CentOS 是最小安装版,安装后需要将服务器内核和补丁全部更新一遍。

CentOS 安装 Docker 后,可以查看 Docker 版本为 20.10.17 ,截止当前是 Docekr 社区版当中的最新版本。

  • Windows 10 Home 64bit
  • VMware Workstation Pro 16
  • CentOS 7.0
  • docker

Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:05:12 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:03:33 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

3. 安装

  • Docker 仓库中查找 hbase 的镜像,这里选择 STARS 最多的,都比较靠谱。

docekr search hbase

检索版本

  • 确定了我们要的版本名称,此时我们从仓库中直接拉取 hbase 镜像,拉取过程中受制于网络等影响,所以建议提前更换 Docker 的中央仓库地址,更改方式参考 [[Docker-01:Docker安装及更换源]] 中的操作。

docekr pull hbase

下载

  • 小结,这里我们完成了将 hbase 镜像的检索和下载,至此,我们的前期准备工作已经完成。

4. 启动

启动命令要注意,宿主机和镜像端口间的映射,这样本机正常访问。我们后续也是为了通过 Java API 操作 Hbase


docker run -d -p 2181:2181 -p 8080:8080 -p 8085:8085 -p 9090:9090 -p 9095:9095 -p 16000:16000 -p 16010:16010 -p 16201:16201 -p 16301:16301  -p 16030:16030 -p 16020:16020 --name hbaseCase harisekhon/hbase

这里把 Hbase 默认的端口一并罗列,对照着启动命令的映射关系,自己按照实际需要定制。

端口号 节点 使用 说明
2181 zookeeper zkCli.sh -server zookeeper1:2181 客户端接入
16000 HBase Master hbase-client-1.x.x.jar RegionServer接入
16010 HBase Master http://namenode1:16010/ 集群监控
16020 HBase RegionServer 客户端接入
16030 HBase RegionServer http://datanode1:16030/ 节点监控

打开网址: http://192.168.147.128:16010/master-status

20220724011350

5. Host文件设置

如果在本地访问 Hbase 的网址,还需要在 HOST 文件中添加, Hbase 与域名的映射。


192.168.147.128 b78d142ca272

20220724011700

6. 环境变脸

实际项目,我们都是在开发环境利用 Java 来操作 Hbase ,所以还需要在本地配置下 Hadoop 环境变量。

这里我用我本地的环境做说明:

  • HODOOP_HOME: D:\Environment\Hadoop\2.10.1

20220827111313

  • PATH: %HODOOP_HOME%\bin

20220827111429

相关实践学习
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
1月前
|
Ubuntu 虚拟化 Docker
Docker的安装
Docker的安装
51 0
|
1月前
|
Ubuntu Docker 容器
如何在Ubuntu上安装Docker?
【2月更文挑战第10天】
239 0
|
1月前
|
Oracle 关系型数据库 数据库
如何利用 Docker 安装 Oracle 数据库
【2月更文挑战第14天】
89 0
|
6天前
|
时序数据库 Docker 容器
Docker安装InfluxDB
Docker安装InfluxDB
10 0
|
9天前
|
关系型数据库 MySQL 数据库
docker自定义安装mysql 5.7
docker自定义安装mysql 5.7
19 0
|
20天前
|
Linux Shell 开发工具
CentOS8中Docker安装及部署
CentOS8中Docker安装及部署
67 0
|
21天前
|
弹性计算 Serverless 数据库
ECS安装问题之docker安装如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
28天前
|
关系型数据库 分布式数据库 PolarDB
PolarDB常见问题之安装gms时出现docker如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
29天前
|
Devops 开发工具 数据安全/隐私保护
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
43 0
|
30天前
|
NoSQL 关系型数据库 MySQL
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
187 0