hadoop集群搭建(docker)
背景
目前在一家快递公司工作,因项目需要,对大数据平台做个深入的了解。工欲利其器必先利其器,在网上找了许多教程,然后自己搭建一个本地的环境并记录下来,增加一些印象。
环境搭建
1)Ubuntu
docker pull ubuntu:16.04
docker images
docker run -ti ubuntu:16.04
系统运行后,安装一些小工具
# apt update
//weget
# apt-get install wget
//ifconfig
# apt-get install net-tools
//ping
# apt-get install iputils-ping
//vim
# apt-get install vim
# exit
# docker commit -m “wget net-tools iputils-ping vim install” 864c90fe3ebb ubutun:tools
2)Java
apt-get install software-properties-common python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get install oracle-java8-installer
vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
# source ~/.bashrc
# java -version
使用docker commit保存一个副本
3)Hadoop
# cd ~
# mkdir soft
# cd soft
# mkdir apache
# cd apache
# wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz
# tar -zxvf hadoop-2.7.6.tar.gz
配置hadoop环境变量
# vim ~/.bashrc
export HADOOP_HOME=/root/soft/apache/hadoop/hadoop-2.7. export HADOOP_CONFIG_HOME=$HADOOP_HOME/etc/hadoop export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/bin
创建tmp、NameNode、DataNode目录
tmp是hadoop的临时存储目录
NameNode是文件系统的管理节点
DataNode是提供真实文件数据的存储服务
# cd $HADOOP_HOME/
# mkdir tmp
# mkdir namenode
# mkdir datanode
# cd $HADOOP_CONFIG_HOME/
# cp mapred-site.xml.template mapred-site.xml
# vim mapred-site.xml
<configuration> <property> <name>mapred.job.tracker</name> <value>master:9001</value> <description>The host and port that the MapReduce job tracker runs at. If "local", then jobs are run in-process as a single map and reduce task. </description> </property> </configuration>
# vim core-site.xml
<configuration> <property> <name>hadoop.tmp.dir</name> <value>/root/soft/apache/hadoop/hadoop-2.7.6/tmp</value> <description>A base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://master:9000</value> <final>true</final> <description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri's scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri's authority is used to determine the host, port, etc. for a filesystem.</description> </property> </configuration>
# vim hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>2</value> <final>true</final> <description>Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time. </description> </property> <property> <name>dfs.namenode.name.dir</name> <value>/root/soft/apache/hadoop/hadoop-2.7.6/namenode</value> <final>true</final> </property> <property> <name>dfs.datanode.data.dir</name> <value>/root/soft/apache/hadoop/hadoop-2.7.6/datanode</value> <final>true</final> </property> </configuration>
#vim hadoop-en.sh
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
#exit
docker commit -m “hadoop install” xxxxx ubuntu:hadoop
4)ssh配置
# apt-get install ssh
# cd ~/
# ssh-keygen -t rsa -P ‘’ -f ‘~/.ssh/id-rsa’
# cd .ssh
# cat is-rsa.pub >> authorized_keys
# service ssh start
#ssh localhost
#exit
docker commit -m “hadoop install” xxxxx ubuntu:hadoop
5)启动配置
配置好环境,接下来开始启动
master
#docker run -ti -h master -p 50070:50070 -p 8088:8088 ubuntu:hadoop
配置slaves
# cd $HADOOP_CONFIG_HOME/
# vim slaves
slave1
slave2
slave
#docker run -ti -h slave1
#docker run -ti -h slave2
三个节点都启动好了,利用ifconfig查看master、slave1、slave2的ip
#vim/etc/hosts
ip(master) master
ip(slave1) slave1
ip(slave2) slave2
一切都准备好了的时候,就可以切换到hadoop/sbin,开启hadoop集群啦
#cd $HADOOP_HOME/sbin/
#./start-all.sh
稍等片刻之后,可以通过http://localhost:50070/,查看hadoop集群
下面是导出的docker系统文件,ubuntu:hadoop,https://pan.baidu.com/s/1GSfZbwJxlTk18YGPqNFwew uhmh
hadoop集群搭建(docker)的更多相关文章
- 大数据初级笔记二:Hadoop入门之Hadoop集群搭建
Hadoop集群搭建 把环境全部准备好,包括编程环境. JDK安装 版本要求: 强烈建议使用64位的JDK版本,这样的优势在于JVM的能够访问到的最大内存就不受限制,基于后期可能会学习到Spark技术 ...
- Hadoop 集群搭建
Hadoop 集群搭建 2016-09-24 杜亦舒 目标 在3台服务器上搭建 Hadoop2.7.3 集群,然后测试验证,要能够向 HDFS 上传文件,并成功运行 mapreduce 示例程序 搭建 ...
- Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...
- Hadoop集群搭建安装过程(二)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(二)(配置SSH免密登录)(图文详解---尽情点击!!!) 一.配置ssh无密码访问 ®生成公钥密钥对 1.在每个节点上分别执行: ssh-keygen -t rsa(一 ...
- Hadoop集群搭建安装过程(一)(图文详解---尽情点击!!!)
Hadoop集群搭建(一)(上篇中讲到了Linux虚拟机的安装) 一.安装所需插件(以hadoop2.6.4为例,如果需要可以到官方网站进行下载:http://hadoop.apache.org) h ...
- 大数据 --> Hadoop集群搭建
Hadoop集群搭建 1.修改/etc/hosts文件 在每台linux机器上,sudo vim /etc/hosts 编写hosts文件.将主机名和ip地址的映射填写进去.编辑完后,结果如下: 2. ...
- Linux环境下Hadoop集群搭建
Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...
- Hadoop(二) HADOOP集群搭建
一.HADOOP集群搭建 1.集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有 Na ...
- 1.Hadoop集群搭建之Linux主机环境准备
Hadoop集群搭建之Linux主机环境 创建虚拟机包含1个主节点master,2个从节点slave1,slave2 虚拟机网络连接模式为host-only(非虚拟机环境可跳过) 集群规划如下表: 主 ...
- Hadoop 集群搭建 mark
Hadoop 集群搭建 原创 2016-09-24 杜亦舒 性能与架构 性能与架构 性能与架构 微信号 yogoup 功能介绍 网站性能提升与架构设计 目标 在3台服务器上搭建 Hadoop2.7.3 ...
随机推荐
- Java学习十六
学习内容: 1.做毕设 2.Java异常类 3.Java包装类 1.System.exit(1):终止程序运行,终止final执行方法 2.throws抛出异常类型,throw抛出异常对象 用法:th ...
- 用Axure画原型图有感
感觉前端做UE非常有优势啊- 但是在制作的时候,似乎陷入了误区: (1)只求原型图的漂亮,色彩丰富,忽略了其本质作用,是用来整理逻辑,画出逻辑流程的. (2)一开始就追求交互,高保真的原型,忽视了细节 ...
- Thread--线程间通信--管道
在Java语言中提供了各种各样的输入/输出流Stream,使我们能够方便的对数据进行操作,其中管道流是一种特殊的流,用于在不同线程间直接传送数据.一个线程发送数据到输出管道,另一个线程从输入管道中读数 ...
- python字典常用方法
字典(Dictionary) 字典是一个无序.可变和有索引的集合.在 Python 中,字典用花括号编写,拥有键和值. 实例 创建并打印字典: thisdict = { "brand&quo ...
- 刷题41. First Missing Positive
一.题目说明 题目是41. First Missing Positive,求一个未排序队列中缺失的最小正整数.时间复杂度要求是O(n).难度是Hard,确实难. 二.我的解答 不考虑时间复杂度,首先对 ...
- javascript获取数组最后一个元素(三种方法)
JavaScript 获取Array末尾元素 一.JavaScript pop() 方法 pop() 方法用于删除并返回数组的最后一个元素. 注意:pop() 方法将删除 arrayObject 的最 ...
- python之web自动化测试框架
梳理下搭建web自动化框架的流程: 创建目录: cases:存放测试用例,unittest框架要求用例名必须以test开头,所以命名test_case.py test_case.py代码如下:继承un ...
- python学习笔记(27)-unittest单元测试-测试用例
单元测试 #单元测试 #unittest+接口 unittest python自带 pytest+jenkins+allure #接口测试的本质 就是测试类里面的函数 #单元测试的本质 测试函数 代码 ...
- Python数据分析与展示第3周学习笔记(北京理工大学 嵩天等)
入门学习马上结束辽. 1.Pandas库 import pandas as pd 两个数据类型:Series,DataFrame Series类型:数据+索引 自定义索引 b = pd.Series( ...
- 基于rtmp的移动端推流解决方案
因工作需要,及考虑成本因素,需要探索一套免费的移动端基于rtmp推流的直播解决方案,过程虽稍显曲折,但最终还是完成了目标.在这里将记录下来,以便日后查阅. 总体思路 移动端推流(RTMP) ---&g ...