利用Docker创建hadoop集群

来源:互联网 发布:施耐德plc仿真软件 编辑:程序博客网 时间:2024/06/05 15:12

利用Docker创建hadoop集群

原文在此 http://kiwenlau.com/2016/06/12/160612-hadoop-cluster-docker-update/

问题

这个项目对于我来说问题是增加节点的时候需要在本地 build,但是本地 build 的时候 apt-get update 会出错,即使更换国内的源也不行。所以可以通过 DockerHub 远程构建,然后直接 pull 到本地,然后再本地启动 docker 容器。这样就可以方便的更改节点而不用在本地 build ,记录一下整个过程。

制作镜像

我的项目

GitHub: https://github.com/CHAAAAA/docker-hadoop-cluster
DockerHub: https://hub.docker.com/r/chaaaa/hadoop-cluster-dockerfile/

远程构建操作步骤:

  • 将含有 Dockerfile 文件的项目传到 GitHub 上
  • 在 DockerHub 中关联 GitHub 账号
  • 创建自动构建的镜像,点击右上角 Create Automated Build,选择含有 Dockerfile 文件的项目。
  • 点击下图按钮手动构建,当然也可以配置当在 GitHub 提交时自动构建

使用

本地启动docker镜像如下:

  • 下载Docker镜像
sudo docker pull chaaaa/hadoop-cluster-dockerfile
  • 下载GitHub仓库
git clone https://github.com/CHAAAAA/docker-hadoop-cluster.git
  • 创建Hadoop网络
sudo docker network create --driver=bridge hadoop
  • ./start-container.sh 可以带参数,第一个参数是本地挂载的目录,第二个参数是挂载的目标目录
  • 进入hadoop集群(默认进入)
  • ./start-hadoop.sh 启动hadoop
  • 测试 ./run-wordcount.sh
  • 对于自己的作业,可以进入到挂载的目录执行。这样可以将处理数据和程序通过本地路径传入hadoop集群
1 0