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

目录
相关文章
|
6月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
4月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
614 3
docker 安装 Postgres 17.6
|
3月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
586 6
|
3月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
418 2
|
9月前
|
存储 安全 C++
Odoo 安装方式选择:源码安装 vs Docker
Odoo部署常采用源码编译或Docker容器化,但分别面临依赖复杂、版本风险和服务化难题,以及镜像臃肿和扩展受限的问题。Websoft9提出混合方案,融合两者优势:通过智能环境适配、三阶段部署流程(环境预检、混合模式选择、持久化配置)及声明式YAML配置,实现高效、灵活的双模运行时。此方案显著降低依赖冲突解决时间(从83分钟至0),生产环境构建耗时缩短至8分钟,并达100% CVE漏洞修复率,适合ERP定制开发与规模化部署的企业需求。
|
7月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
939 4
|
6月前
|
Linux Docker Windows
windows docker安装报错适用于 Linux 的 Windows 子系统必须更新到最新版本才能继续。可通过运行 “wsl.exe --update” 进行更新。
适用于 Linux 的 Windows 子系统需更新至最新版本(如 wsl.2.4.11.0.x64.msi)以解决 2025 年 Windows 更新后可能出现的兼容性问题。用户可通过运行 “wsl.exe --update” 或访问提供的链接下载升级包进行更新。
2649 0

热门文章

最新文章