目录
准备:下载VMware、VMwareTools(或Xftp、Xshell)、Ubuntu或者CentOS映像文件、Hadoop和jdk压缩包
(3)通过build Dockfile生成带ssh功能的centos镜像
(5)生成带有ssh、hadoop和jdk环境的CentOS镜像
(4)测试是否成功配置ssh免密登录,ssh + hadoop服务器名:
(2)编辑hadoop_env.sh,修改下面三个参数,按照你自己的改
(7)编辑workers,把原先的默认值localhost删除
前言:为什么要用docker搭建Hadoop集群?
1、磁盘空间的占用
docker搭建的集群占用电脑磁盘空间较小,对电脑的硬件要求也不高,搭建一个Hadoop集群(一主两从)只需要17GB左右的磁盘空间,而常规的开启多台虚拟机搭建的方法,可能搭建一台Hadoop服务器就需要将近20GB的磁盘空间。
2、稳定性
docker搭建的Hadoop集群不容易宕机,用常规的方法搭建的话,可能会有一台或者多台虚拟机宕机,稳定性较差。
准备:下载VMware、VMwareTools(或Xftp、Xshell)、Ubuntu或者CentOS映像文件、Hadoop和jdk压缩包
给大家准备了Ubuntu映像文件、Hadoop和jdk压缩包,点击链接下载即可。没有Xftp和Xshell的同学可以用VMwareTools替代,只要把压缩包添加到虚拟机主机上即可。
链接:Ubuntu、jdk、Hadoop
提取码:2v56
一、创建虚拟机
用VMware创建一台新的虚拟机(CentOS或Ubuntu都可以)
(1)点击新建虚拟机
(2)下一步
(3)下一步
(4)选择映像文件
选择自己的映像文件(CentOS或者Ubuntu都可以),后面第11步开启虚拟机时可能要加载20分钟左右,不想等待加载的话,可以选择稍后安装操作系统,自定义安装可以快一点,不过很多东西得自己配置和下载,后续使用可能麻烦一点。
(5)自定义信息
(6)自定义信息,位置最好放在非C盘
(7)设置处理器内核总数
处理器数量 x 每个处理器的内核数量 = 处理器内核总数,依据自己电脑的配置设定,在任务管理器的性能页面中可以查看自己电脑的处理器数量,我的是8个,直接设置最大值,防止后续使用虚拟机时卡顿。
(8) 后面五步都选下一步即可。
(9)设置磁盘大小
设置磁盘大小为50GB,只搭建Hadoop集群的话20GB就足够了,但后面还需要搭建其他集群所以设置磁盘大小为50GB,可以根据自己的需求设定。将虚拟磁盘拆分成多个文件。
(10)点击下一步,再点击完成
(11)自动加载默认配置
这个过程可能需要二十分钟左右。如果不想等待加载,可以在第4步选择自己的映像文件那里选择稍后安装操作系统,不过很多东西得自己配置和下载,后续使用可能麻烦一点。成功开启虚拟机页面如下所示:
二、安装docker并生成相关的镜像
(1)安装docker
CentOS:在 CentOS | 上安装 Docker 引擎码头工人文档
Ubuntu: 在 Ubuntu | 上安装 Docker 引擎码头工人文档
只要在终端输入:sudo docker run hello-world,后出现如下图的内容就证明安装docker成功了
(2)拉取CentOS镜像(Ubuntu镜像也行)
在终端输入:sudo docker pull centos
在终端输入:sudo docker images,可以看到刚刚拉取的两个镜像
每次执行docker语句都要在前面加sudo,比较麻烦,直接将hadoop用户加入docker用户组,就不用再输入sudo了。
sudo gpasswd -a $USER docker #将当前用户加入到docker用户组中
newgrp docker #重新加载docker用户组
一般安装时会自动创建docker用户组,如果docker用户组不存在的话,在终端输入:
sudo groupadd docker #创建docker用户组
注意,此时只有执行上述两条命令行的终端可以不用输入sudo,其他终端仍要输入,得重启虚拟机后所有终端才不用输入sudo。
(3)通过build Dockfile生成带ssh功能的centos镜像
先创建Dockfile文件,在终端输入:
vi Dockerfile
在Dockfile文件中添加以下内容:
<