在大数据领域,Hadoop生态系统是目前最受欢迎的大数据处理框架,它包括Hadoop、Hive、HBase、Spark、Flink等多个关键组件,这些组件可以协同工作,建立出一个全面的大数据处理系统。 但是,这些组件的安装和配置(完全分布式集群)是一件非常繁琐的事情。对于想入门大数据,创建一个学习用的大数据环境的同学来说,无疑是一道难以逾越的鸿沟。 本文将介绍如何使用Docker和Ambari,在一台主机上快速搭建Hadoop生态集群。
本环境搭建下的hadoop生态集群供学习使用,为降低搭建难度,作者刻意弱化了集群安全性部署,故该集群不适用于生产环境。
一台Ubuntu系统的Linux宿主机(支持虚拟机)
- 最低内存 6 G。
- 最低存储 50 G。
- 已经安装并配置好 docker。
- 已经安装并配置好git。
- 已配置好静态IP。
- 可联网(最好可连外网)。
克隆Github仓库到Linux宿主机
- 这里提供github仓库地址:https://github.com/jarlor/hadoop_on_docker.git
- 下文的一切操作都将基于克隆下来的仓库所在目录
下载相关离线软件(资源比较多)
- 这里提供百度网盘链接:https://pan.baidu.com/s/1gTkuPH_IdcZBvwzAK4Ew-A?pwd=here
- 请将文件下载到上一步克隆下来的仓库目录下的software/文件夹下。举例如下图:
本小节的目的是配置脚本运行环境必要的参数,涉及到的文件是 hadoop_on_docker/cluster_config。
请根据注释填写相关配置项。
#集群参数配置
#本机ip
export host_ip='192.168.100.100'
#网卡名
export netcard_name='ens33'
#网关
export host_gateway='192.168.100.2'
#网段
export host_subnet='192.168.100.0/24'
#自定义节点ip
export ip_hadoop1='192.168.100.101'
export ip_hadoop2='192.168.100.102'
export ip_hadoop3='192.168.100.103'
#jdk文件路径
export jdk_file_path='./software/jdk-8u212-linux-x64.tar.gz'
export jdk_file_name='jdk-8u212-linux-x64.tar.gz'
注:jdk文件路径
参数暂不支持修改(当前版本暂不支持自定义jdk路径,后期计划支持)
本小节的目的是赋予脚本hadoop_on_docker/cluster-control可执行权限。相关操作如下:
chmod +x ./cluster-control
本小节的目的是开始部署hadoop生态集群,将执行脚本hadoop_on_docker/cluster-control。相关操作如下:
./cluster-control build
注:该脚本支持多种操作,baokuo
出现以下截图内容视为启动成功:
注:如果找不到截图中的内容,大概率是日志输出太多被刷上去了。脚本未报错退出也可视为部署成功。
本小节的目的是配置Ambari-大数据集群管理系统,后续的大数据组件(DHFS,Zookeeper等)都可经Ambari一键安装。
1.打开浏览器,进入ambari web
端页面(如下图所示)。地址格式为http://<Linux宿主机本机ip地址>:8080。
例:我的Linux宿主机本机ip地址为
192.168.100.100
,即地址为 http://192.168.100.100:8080
2.登录ambari
(登录成功后页面如下图所示),username
和password
如下:
username:admin
password:admin
3.点击LAUNCH INSTALL WIZARD
并配置集群名称,此处名称可自定义(如下图所示)。
4.配置自定义软件源.并在下图红框标识处填下以下信息:
http://httpd:18080/HDP/centos7/3.1.5.0-152/
http://httpd:18080/HDP-GPL/centos7/3.1.5.0-152/
http://httpd:18080/HDP-UTILS/centos7/1.1.0.22/
5.在指定位置填写集群节点目标主机(如下图红框所示).填写内容如下:
hadoop1
hadoop2
hadoop3
注:此处填写内容为一行一个主机名,注意换行,注意空格。
6.还是在这个页面,填写ambari-server的ssh私钥.请重写打开一个终端,并输入以下命令获取ambari-server私钥:
docker exec -it ambari-server cat ~/.ssh/id_rsa
将上方命令返回的结果完整复制并完整粘贴到下图所示位置:
*注释:此处粘贴内容依旧要注意换行,注意空格。
7.点击下一步,若弹出Warning
则选择 CONTINUE
。
8.进入集群节点的ambari-agent安装界面,等待安装成功即可点击NEXT
(成功界面入下图所示)。
弹出Host Check Warning
选择OK
。
前一章已经完成ambari-server和ambari-agent的配置与安装,为本章安装大数据组件提供了十分高效的环境。
本章将承接上一章的安装进度,继续安装常用的大数据组件:HDFS、YARN、MapReduce等。
本小节的目的是选择我们要安装的大数据组件,如下图所示:
勾选完成后点击NEXT
。弹出Limited Functionality Warning
请选择PROCEED ANYWAY
。
本小节的目的是在集群节点间分配组件,此处取ambari默认给出的分配结果即可(如下图所示)。
点击NEXT
。
本小节的目的是在集群节点间配置部分组件的主从关系。此处不取ambari默认给出的配置结果。调整配置结果如下图所示:
点击NEXT
。
本小节的目的在于配置Grafana
和HDFS
管理员账号和密码(如下图所示)。建议密码都设置成admin,方便记忆及后续管理。
输入完成后点击NEXT
。
本小节的目的在于配置集群的数据持久化目录。此处取ambari默认给出的目录地址即可(如下图所示)。
点击NEXT
。
本小节的目的在于配置集群各组件的账号。此处取ambari默认给出的结果即可(如下图所示)。
点击NEXT
。
本小节的目的在于配置集群各组件的资源消耗管理。此处取ambari默认给出的结果即可(如下图所示)。
点击NEXT
。
本小节开始部署各组件。
在部署前ambari要求确认部署配置信息(如下图所示)。读者确认无误后可点击DEPLOY
。
点击DEPLOY
后进入正式安装界面(如下图所示)。部署耗时很长,等着吧。
出现以下界面视为部署成功:
点击NEXT
,获取集群节点间组件分配概述(如下图所示)。
点击COMPLETE
,跳转至Ambari资源看板(如下图所示)。
至此,COMPLETE!