大数据学习整理篇(十一)spark和Hbase大数据Docker文件的迁移(成功版)

       我们用Docker搭建测试环境,有时候为了方便,需要做下环境迁移,网上资料查了一下,发现很多文章都没有介绍清楚,于是特地写了这篇文章:

        整个场景说明如下:192.168.*.102机器上安装了Spark,Hbase的环境,现在需要一模一样的迁移到192.168.*。101机器。

Docker环境部署,参考文章:大数据学习整理篇(七)Linux下使用Docker搭建Spark多节点,Phoenix单机版,然后使用Spark访问Phoenix(java示例成功版)

一、Spark的Docker环境迁移

a.首先我们将源机的Spark Docker停止

docker stop <容器ID>

b.保存源机镜像环境(其中8ead b249是容器ID)

docker commit 8ead docker-spark_master_1:v1

docker commit b249 docker-spark_worker_1:v1

c.查看镜像

d.导出镜像(./是指当前目录)

docker save -o ./spark-master.tar docker-spark_master_1:v1
docker save -o ./spark-worker.tar docker-spark_worker_1:v1
docker save -o ./hbase.tar hbase-phoenix-docker:v1

e.将镜像文件.tar拷贝到目的机,即101机器(省略)

f.在目的机导入到镜像

docker load --input ./spark-master.tar

docker load --input ./spark-worker.tar 
docker load --input ./hbase.tar

g.在目的机运行镜像

 docker run -itd -p 4040:4040 -p 7077:7077 -p 8080:8080 -p 6066:6066  docker-spark_master_1:v1 /bin/bash

 docker run -itd -p 8081:8081 docker-spark_worker_1:v1 /bin/bash

h.进入容器,执行spark命令,具体见gitee网址的docker-compose.xml配置

master镜像:运行:

bin/spark-class org.apache.spark.deploy.master.Master -h master

work镜像,运行

bin/spark-class org.apache.spark.deploy.worker.Worker spark://master:7077

如果上述命令运行失败,请使用docker-compose.yml文件直接启动,具体文件参考如下:

version: "2.2"
services:
  master:
    image: docker-spark_master_1:v1
    command: bin/spark-class org.apache.spark.deploy.master.Master -h spark-master
    hostname: spark-master
    environment:
      MASTER: spark://spark-master:7077
      SPARK_CONF_DIR: /conf
      SPARK_PUBLIC_DNS: localhost
    expose:
      - 7001
      - 7002
      - 7003
      - 7004
      - 7005
      - 7077
      - 6066
    ports:
      - 4040:4040
      - 6066:6066
      - 7077:7077
      - 8080:8080
    volumes:
      - ./conf/master:/conf
      - ./data:/tmp/data

  worker:
    image: docker-spark_worker_1:v1
    command: bin/spark-class org.apache.spark.deploy.worker.Worker spark://spark-master:7077
    hostname: spark-worker
    environment:
      SPARK_CONF_DIR: /conf
      SPARK_WORKER_CORES: 2
      SPARK_WORKER_MEMORY: 1g
      SPARK_WORKER_PORT: 8881
      SPARK_WORKER_WEBUI_PORT: 8081
      SPARK_PUBLIC_DNS: localhost
    links:
      - master
    expose:
      - 7012
      - 7013
      - 7014
      - 7015
      - 8881
    ports:
      - 8081:8081
    volumes:
      - ./conf/worker:/conf
      - ./data:/tmp/data

二、Hbase环境迁移

a.提交镜像(70b7是容器ID)

docker commit 70b7 hbase-phoenix-docker:v1

b.上面第一节步骤d,f已经说明导出镜像

c.在目的机运行镜像

docker run -itd -p 2181:2181 -p 8765:8765 hbase-phoenix-docker:v1 /bin/bash

c.进入容器,执行命令(/usr/bin/supervisord &)

~# docker exec -it --user root <容器ID> /bin/bash

root@47fb2def03d7:/opt/hbase-2.0.6/conf# /usr/bin/supervisord &

d.验证

root@47fb2def03d7:/opt/hbase-2.0.6/conf# cd /opt/phoenix/bin && ./sqlline.py

三、Spark验证省略,可以查看大数据学习整理篇(七)Linux下使用Docker搭建Spark多节点,Phoenix单机版,然后使用Spark访问Phoenix(java示例成功版)进行验证。

 

猜你喜欢

转载自blog.csdn.net/penker_zhao/article/details/108703047