docker化hbase并使用外部zookeeper
近日公司需要单节点hbase,并不使用内置zookeeper,我们的zookeeper是单节点的docker化,hbase也要做单节点的docker化,于是以下为自写的Dockerfile
hbase安装包下载:https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.2.2/
一、hbase的Dockerfile
FROM ubuntu
ADD ["jdk.tar.gz","/usr/local/"]
ADD ["hbase.tar.gz","/opt/"]
COPY ["entrypoint.sh","/"]
ENV JAVA_HOME /usr/local/jdk
ENV PATH ${PATH}:${JAVA_HOME}/bin
RUN echo "Asia/Shanghai" > /etc/timezone
EXPOSE
VOLUME /opt/hbase/data
ENTRYPOINT /entrypoint.sh
二、hbase的entrypoint.sh
#!/bin/bash
Host_Name=`hostname`
Conf_Dir=/opt/hbase/conf
if [ -n ${ZK_Server} ]; then
sed -i "/zookeeper.quorum/{n;s/.*/ <value>${ZK_Server}<\/value>/g}" ${Conf_Dir}/hbase-site.xml
fi
if [-n ${ZK_Port}]; then
sed -i "/zookeeper.property.clientPort/{n;s/.*/ <value>${ZK_Port}<\/value>/g}" ${Confi_Dir}/hbase-site.xml
fi bash /opt/hbase/bin/start-hbase.sh
tail -F /opt/hbase/logs/hbase--master-${Host_Name}.log
三、hbase的docker-compose文件
version: ""
services:
hbase:
image: registry.cn-beijing.aliyuncs.com/wavewisdom-bj-registry-common/hbase:2.2.
container_name: hbase
environment:
- "ZK_Server=193.168.1.136"
- "ZK_Port=2181"
ports:
- "16000:16000"
- "16010:16010"
- "16020:16020"
- "16030:16030"
volumes:
- "/home/volumes/hbase/data:/opt/hbase/data"
- "/etc/localtime:/etc/localtime:ro"
restart: always
四、说明:观察启动日志会发现程序依然会自动binding2181端口,但是hbase和region已经注册到了自建的zookeeper中,测试正常。
五、dockerfile等文件可通过百度网盘下载:
链接:https://pan.baidu.com/s/1Vdxuo6diF8Js7WOcLcGBkg
提取码:22hl
hbase优化:https://www.jianshu.com/p/06648fb74c26
docker化hbase并使用外部zookeeper的更多相关文章
- 测试环境docker化—容器集群编排实践
本文来自网易云社区 作者:孙婷婷 背景 在前文<测试环境docker化-基于ndp部署模式的docker基础镜像制作>中已经详述了docker镜像制作及模块部署的过程,按照上述做法已可以搭 ...
- Docker化运维方式讲解
应用迁移需求 应用运维需要考虑的一个重要问题就是迁移, 在不同机器.机房.环境间迁移.迁移的原因有很多, 比如硬件过保(硬件故障), 机房迁移, 应用扩缩容等. 应用迁移的核心需求是: 简单.迁移操作 ...
- 老司机实战Windows Server Docker:2 docker化现有iis应用的正确姿势
前言 上一篇老司机实战Windows Server Docker:1 初体验之各种填坑介绍了安装docker服务过程中的一些小坑.这一篇,我们来填一些稍大一些的坑:如何docker化一个现有的iis应 ...
- docker 安装 hbase安装 java连接hbase (mac环境)
docker 安装 https://hub.docker.com/editions/community/docker-ce-desktop-mac 下载地址 下载完之后,安装app一样安装就好 安装完 ...
- 部门sonarque代码扫描测试服务器docker化
部门内部的服务器太多了,打算将对应的测试环境docker化. 转成docker后,以后不管是升级调研还是定制化开发测试都方便,就是事情太多,一直没有抽出身来做,今天处理下并把过程记录下来跟大家分享下. ...
- 一步步创建第一个Docker App —— 2. 创建 Docker化 主机
原文:https://docs.docker.com/engine/getstarted-voting-app/node-setup/ 部署voting app的第一步,是为集群节点(swarm no ...
- Hbase0.98.0完全分布式搭建---【使用外部zookeeper】
Hbase是一个分布式的实时数据库,他可以基于hadoop的hdfs,S3等分布式存储系统.而且使用zookeeper来通信(查询元数据和获取数据所在位置等功能) 本文的Hbase使用的是hadoop ...
- Docker学习总结(6)——通过 Docker 化一个博客网站来开启我们的 Docker 之旅
通过 Docker 化一个博客网站来开启我们的 Docker 之旅 这篇文章包含 Docker 的基本概念,以及如何通过创建一个定制的 Dockerfile 来 Docker 化Dockerize一个 ...
- 如何Docker化任意一个应用
网上有很多关于如何将应用Docker化的教程,为什么我还要再写一个呢? 我见过的大部分教程都是限定在某种特定技术(例如Java或者Python),可能无法满足读者的需求.同时,这些教程也没有说清楚关于 ...
随机推荐
- Hadoop之HDFS客户端操作
1. HDFS 客户端环境准备 1.1 windows 平台搭建 hadoop 2.8.5 2. 创建Maven工程 # pom.xml <dependencies> <depend ...
- Vue.directive()的用法和实例
官网实例: https://cn.vuejs.org/v2/api/#Vue-directive https://cn.vuejs.org/v2/guide/custom-directive.html ...
- Python+request超时和重试
Python+request超时和重试 一.什么是超时? 1.连接超时 连接超时指的是没连接上,超过指定的时间内都没有连接上,这就是连接超时.(连接时间就是httpclient发送请求的地方开始到连接 ...
- springboot @vaule注解失效解决办法
在Controller类里面通过@Value将参数注入进来,最后的确成功了.因此基于此经验,我便在其他使用的类里面也采用这样的方式注入参数,但是发现去失效了,报错为NULL,说明参数并没有我们料想的被 ...
- java日期比较工具类
package com.net.util; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.ut ...
- 常见三种加密(MD5、非对称加密,对称加密)
转载. https://blog.csdn.net/SSY_1992/article/details/79094556 任何应用的开发中安全都是重中之重,在信息交互异常活跃的现在,信息加密技术显得尤为 ...
- 基础python规范
一.注释 合理的代码注释应该占源代码的 1/3 左右,Python 语言允许在任何地方插入空字符或注释,但不能插入到标识符和字符串中间. 在 Python 中,通常包括 3 种类型的注 ...
- oracle用户解锁,rename管理
---查看命令:用户默认表空间 SYS@ACE >select username,default_tablespace,temporary_tablespace,created from dba ...
- PowerDesigner最基础的使用方法
1:入门级使用PowerDesigner软件创建数据库(直接上图怎么创建,其他的概念知识可自行学习) 我的PowerDesigner版本是16.5的,如若版本不一样,请自行参考学习即可.(打开软件即是 ...
- js Indexof的用法
JavaScript中indexOf()函数 JavaScript中indexOf()函数方法返回一个整数值,指出 String 对象内子字符串的开始位置.如果没有找到子字符串,则返回 -1.如果 ...