docker-compose HBase + Phoenix 开发环境单机快速部署
2023-09-14 09:01:56 时间
下载地址
https://gitee.com/assad/docker-hbase.git
项目介绍
基于 big-data-europe 的仓库代码修改,主要升级了 HBase 版本到 2.X, 增加 Phoenix 的配置,增加 HBase 对 Hadoop 共享库的配置,同时修改 HBase 组件由 http 下载为本地二进制包拷贝,减少构建过程中键盘被砸坏的风险。
主要组件版本如下:
- Hadoop-2.7.4
- Zookeeper-3.4.10
- HBase-2.0.0
- Phoenix-5.0.0
使用过程
下载仓库
仓库中包含完整的 hbase-2.0.0-bin.tar.gz
二进制包和 phoenix-5.0.0-hbase-2.0.tar.gz
中的 phoenix-5.0.0-server.jar
,仓库体积比较大,这也是无奈,毕竟在国内从 apache 历史仓库下载 hbase 历史版本的体验简直就是噩梦。
git clone https://github.com/Al-assad/docker-hbase.git
国内环境可以从 gitee 镜像仓库下载,毕竟 github 小水管不是吹的;
git clone https://gitee.com/assad/docker-hbase.git
构建镜像
docker-compose 构建基础镜像。
make build
运行 Standalone 版本
Standalone
版本依赖结构与 quickstart HBase documentation 一致,只不过使用了 Hadoop
的 HDFS
版本作为底层储存。
主要用于开发测试环境的快速搭建。
docker-compose -f docker-compose-standalone.yml up -d
运行 Local Distributed 伪分布式版本
运行该版本会使用一个独立的 Zookeeper
,HMaster
节点和 HResgionserver
节点也会分开为独立容器。
docker-compose -f docker-compose-distributed-local.yml up -d
docker-compose.yml
yulin/hbase-standalone:1.0.1-hbase2.0.0
该镜像不存在,这里重新调整了镜像:
[root@k8s-n1 hbase-compose]# cat hbase-standalone-compose.yml
version: "3"
services:
namenode:
image: bde2020/hadoop-namenode:2.0.0-hadoop2.7.4-java8
container_name: namenode
volumes:
- hadoop_namenode:/hadoop/dfs/name
environment:
- CLUSTER_NAME=test
env_file:
- ./hadoop.env
datanode:
image: bde2020/hadoop-datanode:2.0.0-hadoop2.7.4-java8
container_name: datanode
volumes:
- hadoop_datanode:/hadoop/dfs/data
environment:
SERVICE_PRECONDITION: "namenode:50070"
env_file:
- ./hadoop.env
resourcemanager:
image: bde2020/hadoop-resourcemanager:2.0.0-hadoop2.7.4-java8
container_name: resourcemanager
environment:
SERVICE_PRECONDITION: "namenode:50070 datanode:50075"
env_file:
- ./hadoop.env
nodemanager1:
image: bde2020/hadoop-nodemanager:2.0.0-hadoop2.7.4-java8
container_name: nodemanager
environment:
SERVICE_PRECONDITION: "namenode:50070 datanode:50075 resourcemanager:8088"
env_file:
- ./hadoop.env
historyserver:
image: bde2020/hadoop-historyserver:2.0.0-hadoop2.7.4-java8
container_name: historyserver
volumes:
- hadoop_historyserver:/hadoop/yarn/timeline
environment:
SERVICE_PRECONDITION: "namenode:50070 datanode:50075 resourcemanager:8088"
env_file:
- ./hadoop.env
hbase:
#image: yulin/hbase-standalone:1.0.1-hbase2.0.0
image: dmvolod/hbase-standalone:2.2.5
container_name: hbase
hostname: hbase
volumes:
- hbase_data:/hbase-data
- hbase_zookeeper_data:/zookeeper-data
ports:
- 16000:16000
- 16010:16010
- 16020:16020
- 16030:16030
- 2888:2888
- 3888:3888
- 2181:2181
environment:
SERVICE_PRECONDITION: "namenode:50070 datanode:50075"
env_file:
- ./hbase-standalone.env
volumes:
hadoop_namenode:
hadoop_datanode:
hadoop_historyserver:
hbase_data:
hbase_zookeeper_data:
[root@k8s-n1 hbase-compose]#
相关文章
- pycharm 使用docker 配置环境「建议收藏」
- 从零开始 - Docker部署前后端分离项目(二)
- Docker安装RabbitMQ并安装延时队列插件
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- docker安装elasticsearch 7.6.2「建议收藏」
- docker安全二:容器逃逸的常见方式
- docker-compose重建typecho博客
- Docker部署_docker部署网站
- Docker容器实战十四:Docker Compose介绍
- docker 离线安装_Docker安装
- Docker安装docker-compose插件
- 软件容器化 and Docker
- 部署Flask项目至远程服务器中的Docker容器内
- 【Docker】搭建部署Redis高可用集群实验
- Docker查看容器命令(docker ps)
- Docker高级篇:docker网络的四种类型
- 「 [Docker]当你的docker无法解析DNS 」
- 「 【Docker】用docker运行2048小游戏(玩转docker) 」
- 「 【Docker】如何处理宝塔docker管理器未启动 」
- 【Docker 系列】docker 学习 二,Docker 的常用命令
- 【Docker 系列】docker 学习六,探究一下数据卷容器
- 【Docker 系列】docker 学习八,Docker 网络
- Docker - docker-compose搭建ELK服务
- docker run常用参数
- docker overlay网络实现原理
- linux docker 搭建pgadmin4 服务,Ubuntu,pgadmin详解程序员
- 在Linux系统中安装Docker容器(linux下安装docker)
- 每日安全资讯:全部 Docker 版本都存在漏洞,允许攻击者获得主机 root 访问权限
- docker-Docker Registry私有仓库
- 使用 Docker 轻松安装 MySQL 数据库(docker安装mysql)
- 探索容器化的未来:Docker与Linux的联合应用(dockerlinux)
- Redis与Hbase:探索高效缓存和分布式数据库的最佳实践(redis与hbase)
- 比较:MYSQL与HBASE 数据库管理系统的异同(mysql与hbase)
- 【保姆级】Python项目(Flask网页)部署到Docker的完整过程