Docker入门(十三):制作hbase2.1.0集群镜像

一、环境

docker版本

[root@localhost opt]# docker --version
Docker version 19.03.1, build 74b1e89

docker网络

[root@localhost opt]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
d05f84a8746f        bridge              bridge              local
398d73e5b1ed        hadoop_net          bridge              local
da5e746c4d2e        host                host                local
bfa3adcc971d        none                null                local
ip主机名HDFSMapReduce/Yarn角色
172.10.0.2masterNameNodeResourceManagerMaster
172.10.0.3slave1DataNodeNodeManagerRegionServer、Backup Master
172.10.0.4slave2DataNodeNodeManagerRegionServer

二、运行hadoop集群镜像

hadoop镜像制作方法:https://blog.csdn.net/qq_39680564/article/details/98043754
从仓库拉取镜像

docker pull 192.168.0.20:5000/hadoop:master
docker pull 192.168.0.20:5000/hadoop:slave1
docker pull 192.168.0.20:5000/hadoop:slave2

启动master:

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.2 \
-h master \
-p 10022:22 \
-p 2181:2181 \
-p 2887:2888 \
-p 3887:3888 \
-p 9870:9870 \
-p 8088:8088 \
-p 16010:16010 \
--restart always \
--name master \
192.168.0.20:5000/hadoop:master

启动slave1:

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.3 \
-h slave1 \
-p 20022:22 \
-p 2182:2181 \
-p 2888:2888 \
-p 3888:3888 \
-p 9864:9864 \
-p 8042:8042 \
-p 16011:16010 \
-p 16030:16030 \
--restart always \
--name slave1 \
192.168.0.20:5000/hadoop:slave1

启动slave2:

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.4 \
-h slave2 \
-p 30022:22 \
-p 2183:2181 \
-p 2889:2888 \
-p 3889:3888 \
-p 9865:9864 \
-p 8043:8042 \
-p 16031:16030 \
--restart always \
--name slave2 \
192.168.0.20:5000/hadoop:slave2

三、配置环境变量(三台服务器同步操作)

将hbase包复制进容器

docker cp hbase-2.1.0/ master:/opt/
docker cp hbase-2.1.0/ slave1:/opt/
docker cp hbase-2.1.0/ slave2:/opt/
vim ~/.bashrc

新增内容

# Hbase
export HBASE_HOME=/opt/hbase-2.1.0
export HBASE_CONF_DIR=/opt/hbase-2.1.0/conf
export PATH=$PATH:$HBASE_HOME/bin

刷新生效

source ~/.bashrc

如图
在这里插入图片描述

四、修改配置文件(三台服务器同步操作)

4.1 配置hbase-env.sh文件

vim /opt/hbase-2.1.0/conf/hbase-env.sh

修改如下内容

export JAVA_HOME=/opt/jdk-1.8
export HBASE_MANAGES_ZK=false

4.2 配置hbase-site.xml文件

vim /opt/hbase-2.1.0/conf/hbase-site.xml

添加如下内容

<property>
  <name>hbase.rootdir</name>
  <value>hdfs://master:9000/hbase</value>
</property>
<property>
  <name>hbase.cluster.distributed</name>
  <value>true</value>
</property>
<property>
  <name>hbase.zookeeper.quorum</name>
  <value>master,slave1,slave2</value>
</property>
<!--hbase有内置zookeeper,如果使用外置的zookeeper,则这个dataDir则无需配置
     <property>
  <name>hbase.zookeeper.property.dataDir</name>
  <value>/usr/local/zookeeper/zkData</value>
</property>
-->
<property>
  <name>hbase.unsafe.stream.capability.enforce</name>
  <value>false</value>
</property>

如图
在这里插入图片描述

4.3 配置regionservers和backup-masters文件

vim /opt/hbase-2.1.0/conf/regionservers

改为如下内容

server2
server3

如图
在这里插入图片描述

vim /opt/hbase-2.1.0/conf/backup-masters

添加如下内容(该文件是不存在的,需要自己创建,里面的主机当作master的备份机)

server2

如图
在这里插入图片描述

4.4 删除slf4j-log4j12-1.7.25.jar

rm -rf /opt/hbase-2.1.0/lib/client-facing-thirdparty/slf4j-log4j12-1.7.25.jar

4.5 复制htrace-core-3.1.0-incubating.jar

cp /opt/hbase-2.1.0/lib/client-facing-thirdparty/htrace-core-3.1.0-incubating.jar /opt/hbase-2.1.0/lib/

五、启动Hbase集群(master启动)

5.1 启动server1的hbase即可

[root@master ~]# /opt/hbase-2.1.0/bin/start-hbase.sh 
running master, logging to /opt/hbase-2.1.0/logs/hbase-root-master-master.out
slave1: running regionserver, logging to /opt/hbase-2.1.0/logs/hbase-root-regionserver-slave1.out
slave2: running regionserver, logging to /opt/hbase-2.1.0/logs/hbase-root-regionserver-slave2.out
slave1: running master, logging to /opt/hbase-2.1.0/logs/hbase-root-master-slave1.out

5.2 查看进程

master

[root@master ~]# jps 
33 QuorumPeerMain
1649 Jps
249 NameNode
507 SecondaryNameNode
1372 HMaster
749 ResourceManager

slave1

[root@slave1 ~]# jps
880 Jps
33 QuorumPeerMain
530 HMaster
249 NodeManager
138 DataNode
445 HRegionServer

slave2

[root@slave2 ~]# jps 
33 QuorumPeerMain
243 NodeManager
132 DataNode
440 HRegionServer
682 Jps

5.3 访问

HDFS
192.168.0.138:9870
192.168.0.138:9864
192.168.0.138:9865
YARN
192.168.0.138:8088
192.168.0.138:8042
192.168.0.138:8043
HBASE
192.168.0.138:16010
192.168.0.138:16011
192.168.0.138:16030
192.168.0.138:16031

六、保存,上传镜像

保存镜像

docker commit master 192.168.0.20:5000/hadoop-hbase:master
docker commit slave1 192.168.0.20:5000/hadoop-hbase:slave1
docker commit slave2 192.168.0.20:5000/hadoop-hbase:slave2

上传镜像至仓库

docker push 192.168.0.20:5000/hadoop-hbase:master
docker push 192.168.0.20:5000/hadoop-hbase:slave1
docker push 192.168.0.20:5000/hadoop-hbase:slave2

启动方法
master

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.2 \
-h master \
-p 10022:22 \
-p 2181:2181 \
-p 2887:2888 \
-p 3887:3888 \
-p 9870:9870 \
-p 8088:8088 \
-p 16010:16010 \
--restart always \
--name master \
192.168.0.20:5000/hadoop-hbase:master

slave1

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.3 \
-h slave1 \
-p 20022:22 \
-p 2182:2181 \
-p 2888:2888 \
-p 3888:3888 \
-p 9864:9864 \
-p 8042:8042 \
-p 16011:16010 \
-p 16030:16030 \
--restart always \
--name slave1 \
192.168.0.20:5000/hadoop-hbase:slave1

slave2

docker run -d \
--add-host master:172.10.0.2 \
--add-host slave1:172.10.0.3 \
--add-host slave2:172.10.0.4 \
--net hadoop_net \
--ip 172.10.0.4 \
-h slave2 \
-p 30022:22 \
-p 2183:2181 \
-p 2889:2888 \
-p 3889:3888 \
-p 9865:9864 \
-p 8043:8042 \
-p 16031:16030 \
--restart always \
--name slave2 \
192.168.0.20:5000/hadoop-hbase:slave2

先启动zookeeper,再启动hdfs,再启动yarn,再启动hbase

/opt/zookeeper-3.4.10/bin/zkServer.sh start  #每台服务器启动zookeeper
/opt/zookeeper-3.4.10/bin/zkServer.sh status #查看启动状态
/opt/hadoop-3.0.3/sbin/start-dfs.sh #master启动HDFS
/opt/hadoop-3.0.3/sbin/start-yarn.sh #master启动yarn
/opt/hbase-2.1.0/bin/start-hbase.sh #master启动hbase
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值