使用Docker搭建大数据Hadoop环境
使用Docker搭建大数据Hadoop环境
一、安装Docker
原文地址:https://www.imooc.com/article/48676、http://www.runoob.com/docker/centos-docker-install.html
这是本人第一次用Docker搭建大数据Hadoop环境的步骤,记录在这里:
1. 对于CenterOS7系统,内置Docker,可以直接安装
yum install -y docker
2、启动docker
service docker start
可能会有相关报错:
service docker startRedirecting to /bin/systemctl start docker.serviceJob for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
第一,firewalld.service没有关闭。
systemctl disable firewalld
systemctl stop firewalld
第二,selinux没有关闭。请查看本机并关闭
vi /etc/selinux/config
修改SELINUX=disabled,如下
3、reboot重启并查看状态,使用命令:sestatus
启动Docker,很可能需要卸载重装Docker才能启动
yum remove docker
yum install docker
service docker start
测试运行 hello-world
docker run hello-world
这一步可选的:
4、利用Docker获取CentOS镜像,并建立一个容器
1.下载CentOS
docker pull centos #该命令会自动下载最新版本docker官方的centos,目前是7.5
2. 查看镜像
docker images
3.创建容器并启动
docker run --privileged=true -it --name=hadoop centos /bin/bash
#注意,此时你已经进入容器,你会发root@cf869bdd4561的主机名发生变化
二、镜像加速
鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址:http://hub-mirror.c.163.com。
新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 来配置 Daemon。
vi /etc/docker/daemon.json
请在该配置文件中加入(没有该文件的话,请先建一个):
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
或者:
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
#Docker 官方中国区: https://registry.docker-cn.com
#网易: http://hub-mirror.c.163.com
#ustc: https://docker.mirrors.ustc.edu.cn
systemctl restart docker
修改保存后重启 Docker 以使配置生效。
三、搭建hadoop:
原文地址:https://kiwenlau.com/2016/06/12/160612-hadoop-cluster-docker-update/
基于Docker搭建Hadoop集群之升级版
摘要: kiwenlau/hadoop-cluster-docker是去年参加Docker巨好玩比赛开发的,得了二等奖并赢了一块苹果手表,目前这个项目已经在GitHub上获得了236个Star,DockerHub的镜像下载次数2000+。总之,项目还算很受欢迎吧,这篇博客将介绍项目的升级版。
- 作者: KiwenLau
- 日期: 2016-06-12
一. 项目介绍
将Hadoop打包到Docker镜像中,就可以快速地在单个机器上搭建Hadoop集群,这样可以方便新手测试和学习。
如下图所示,Hadoop的master和slave分别运行在不同的Docker容器中,其中hadoop-master容器中运行NameNode和ResourceManager,hadoop-slave容器中运行DataNode和NodeManager。NameNode和DataNode是Hadoop分布式文件系统HDFS的组件,负责储存输入以及输出数据,而ResourceManager和NodeManager是Hadoop集群资源管理系统YARN的组件,负责CPU和内存资源的调度。
之前的版本使用serf/dnsmasq为Hadoop集群提供DNS服务,由于Docker网络功能更新,现在并不需要了。更新的版本中,使用以下命令为Hadoop集群创建单独的网络:
|
然后在运行Hadoop容器时,使用”–net=hadoop”选项,这时所有容器将运行在hadoop网络中,它们可以通过容器名称进行通信。
项目更新要点:
- 去除serf/dnsmasq
- 合并Master和Slave镜像
- 使用kiwenlau/compile-hadoop项目编译的Hadoo进行安装
- 优化Hadoop配置
二. 3节点Hadoop集群搭建步骤
1. 下载Docker镜像
|
2. 下载GitHub仓库
|
3. 创建Hadoop网络
|
4. 运行Docker容器
|
运行结果
|
- 启动了3个容器,1个master, 2个slave
- 运行后就进入了hadoop-master容器的/root目录
5. 启动hadoop
|
6. 运行wordcount
|
运行结果
|
Hadoop网页管理地址:
- NameNode: http://192.168.59.1:50070/
- ResourceManager: http://192.168.59.1:8088/
192.168.59.1为运行容器的主机的IP。
注意:
如果报错,可能是主机名配置错误,参考文章:https://blog.csdn.net/shirdrn/article/details/6562292,
三. N节点Hadoop集群搭建步骤
1. 准备
- 参考第二部分1~3:下载Docker镜像,下载GitHub仓库,以及创建Hadoop网络
2. 重新构建Docker镜像
|
- 可以指定任意N(N>1)
3. 启动Docker容器
|
- 与第2步中的N保持一致。
4. 运行Hadoop
- 参考第二部分5~6:启动Hadoop,并运行wordcount。
使用Docker搭建大数据Hadoop环境相关推荐
- 搭建大数据运行环境之二
前言 上篇文章咱们将大数据相关的一些组件都集成安装在了一个docker中 搭建大数据运行环境之一 这篇文章咱们继续 启动下该docker中的大数据相关的组件 将大数据运行环境跑起来 上篇文章的几个注意 ...
- 5分钟搭建大数据学习环境
想学大数据,先搭个环境再说,要准备多少台服务器,每台服务器的基础环境设置,各个服务器的网络互联,真是很麻烦的一件事 第一座山先把想入门的学习者挡在门外,别放弃,这里又一个即全面又快捷的搭建大数据环境的 ...
- 在阿里云中搭建大数据实验环境
云计算是和自来水一样的商业模式.有了自来水,我们可以不用自己挖井,就可以快速.便捷.廉价地获得水资源.而有了云计算,我们就可以不用自己建机房.买设备.维护系统,就可以快速.便捷.廉价地获得IT资源(C ...
- 大数据hadoop环境部署
大数据hadoop在linux环境下的部署安装,包括单节点模式.伪分布模式以及完全分布式模式
- 搭建大数据运行环境之一
前言 一键搭建 zookeeper/hadoop/hive/hbase/sqoop/kafka/spark/kylin 服务器资源 本地Mac有3个虚拟机 server1 192.168.84.128 ...
- 在家搭建大数据分布式计算环境!
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:牧小熊,华中农业大学,Datawhale原创作者 0. 前言 分布 ...
- 大数据Hadoop环境安装
前言 工作场景的需要,最近开始学习起了大数据相关的东西.对于我这个初学者,大数据入门就是首先得学会Hadoop环境的安装,按照步骤如遇相关问题,请指正. Hadoop环境的安装,我是用自己电脑借助VM ...
- 大数据架构师:如何从零基础搭建大数据hadoop生态圈
从年初起,几家国际大厂的开发者大会,无论是微软Build.Facebook F8还是稍后的Google I/O,莫不把"AI优先"的大旗扯上云霄.如果这一波AI大潮只是空喊几句口号 ...
- 搭建大数据开发环境-Hadoop篇
前期准备 操作系统 hadoop目前对linux操作系统支持是最好的,可以部署2000个节点的服务器集群:在hadoop2.2以后,开始支持windows操作系统,但是兼容性没有linux好.因此,建 ...
最新文章
- 杭电1019 Least Common Multiple(已解决)
- javascript 之 this 用法
- 提取文件出错_提取中文、英文和数字,其实很简单
- 强化学习(八)价值函数的近似表示与Deep Q-Learning
- 前端设置画布的高度_Table问题,设置了一个手机页面的Table高度问题
- Quantitative Researcher Summer Internship (for Overseas Schools)
- three.js 几何体-组合网格_3dmax利用优化和多边形倒角制作饰品组合1
- 基于Matlab的跨孔电磁波\跨孔雷达的胖射线追踪(一)
- 分解得到的时频域特征_AI大语音(四)| MFCC特征提取(深度解析)
- 月球探测器中的计算机技术,月球探测器自主视觉导航技术的研究
- games101-789-shading
- 数据库原理实验六——ODBC/JDBC数据库编程
- 窗户控制app开发day1(机智云的二次开发之换皮肤)
- Joplin 的思维导图 Mindmap(脑图)插件
- php新年计划,New Year’s Resolution |给20出头的你19条最赞的新年计划
- Ubuntu 好用的BT下载工具qBittorrent
- 拯救者笔记本ubuntu亮度调节
- Deep Graph Kernels
- kali 2019安装8812bu无线网卡驱动
- js 删除list中的某个元素 向list中添加某个元素
热门文章
- 【已解决】第一次遇到无法新建APP问题
- c语言浮点数无效,深入C++浮点数无效值定义与判定的解决办法
- 页面跳转传参,A 页面跳转到B页面,把A页面获取的值传到B页面
- ASO优化之如何正确筛选关键词
- 正则表达式“\\s+“ 匹配任意空白字符
- springboot 系列教程四:springboot thymeleaf配置
- 路由追踪命令Tracert
- php调用会员刷卡,dedecms模板中调用会员信息标签的方法
- java 输出素数_java 素数(按要求输出)
- VMware创建Linux虚拟机之(三)Hadoop安装与配置及搭建集群