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),可能无法满足读者的需求.同时,这些教程也没有说清楚关于 ...
随机推荐
- 转换函数conversion function
类转换分为两个角度 转换自身为其他类型 把其他类型转换为自身 Example: 这里我们可以将b转换为class xxx 的类型(方式2),也可以将me转换为double,然后再讲结果转换为doubl ...
- 5个Linux性能命令
使用几个命令就可以管理Linux系统的性能了,下面列出了5个最常用的Linux性能命令,包括top.vmstat.iostat.free和sar,它们有助于系统管理员快速解决性能问题. (1)to ...
- 打印 request 请求中的参数
@SuppressWarnings({"rawtypes"})private void showParams(HttpServletRequest request) { Map&l ...
- SQL SERVER创建表
创建表 create table table_name ( column_name_1 data_type, column_name_2 data_type NOT NULL, column_name ...
- oracle中Blob、Clob、Varchar之间的互相转换
以下是oracle中Blob.Clob.Varchar之间的互相转换(都是百度找的,亲测可用) Blob转Varchar2: CREATE OR REPLACE FUNCTION blob_to_va ...
- python3.5+installer 将.py 打包成.exe
(1)下载安装installer,不如我安装在D:\Program Files\Python35,安装完成后,在D:\Program Files\Python35\Scripts可以找到install ...
- 20190805-Python基础 第二章 列表和元组(2)列表
1. list函数,用于将字符串转换为列表 2. 基本的列表操作 修改列表 - 给元素赋值,使用索引表示法给特定的元素赋值,如x[1] = 2 删除元素 - 使用del语句即可 name1 = ['a ...
- 关于greenlet的一些问题
今天测试关于协程方面的代码发现我安装了greenlet模块缺导入不进.如图: 后来找了半天才发现原来greenlet被整进了gevent包中,如下导入就可以成功: 但这个greenlet没有了swit ...
- php实现只需要一个QQ号就可以获得用户信息
<?php // 通过QQ号即可获取用户信息 // 获取QQ头像接口 // http://q1.qlogo.cn/g?b=qq&nk=QQ号&s=100&t=154790 ...
- spring配置文件和spring mvc配置文件的区别
Question: Are applicationContext.xml and spring-servlet.xml related anyhow in Spring Framework? Will ...