大数据时代之hadoop(一):hadoop安装
1、hadoop版本介绍
0.20.2版本以前(不含该版本)的配置文件都在default.xml中。
0.20.x以后的版本不含有eclipse插件的jar包,由于eclipse的版本不一,所以就需要自己编译源码生成对应的插件。
0.20.2——0.22.x版本的配置文件集中在conf/core-site.xml、 conf/hdfs-site.xml 和 conf/mapred-site.xml. 中。
0.23.x 版本有添加了yarn技术,配置文件集中在 conf/core-site.xml, conf/hdfs-site.xml, conf/yarn-site.xml and conf/mapred-site.xml.这4个文件上。
由于0.23.x版本的变化比较大,添加了新的技术,让很多基于hadoop的一些插件难以兼容,如hive、hbase、pig等都基于0.23.x以前的版本。
所以apache就开始统一版本号,这样从版本号就可以区分hadoop的功能。
0.22.x 直接升级到1.0.0
0.23.x 直接升级到2.0.0
这样就把hadoop分为两个版本 1和2
1版本:主要基于原来的技术的升级和发展,同时支持其它技术的支持。如果想用hbase、hive等技术就只有选择 版本1
2版本:主要基于新技术的推广和发展,如果只是基于hadoop开发,这个是一个很好的选择。
目前官网上下载hadoop处描述:
Download
- 1.2.X - current stable version, 1.2 release
- 2.4.X - current stable 2.x version
- 0.23.X - similar to 2.X.X but missing NN HA.
2、hadoop安装及模式
目前,我在实验环境中使用的是hadoop-0.20.2,所以以后我都是基于这个版本进行描述。
Hadoop各个组件的配置在文件夹conf下。早期的hadoop采用一个配置文件hadoop-site.xml来配置Common,HDFS和MapReduce组件,从0.20.0版本开始,分为三个文件。
core-site.xml:配置Common组件的属性。
hdfs-site.xml:配置HDFS属性。
mapred-sit.xml:配置MapReduce属性。
2.1、Hadoop运行模式
Hadoop的运行模式有以下三种:
独立模式(standalone或local mode):无需任何守护进程(daemon),所有程序都在单个JVM上执行。主要用在开发阶段。默认属性就是为本模式所设,所以不需要额外的配置。
伪分布式模式(pseudo-distributed model):Hadoop守护进程运行在本地机器上,模拟一个小规模的集群。
全分布模式(full distributed model):Hadoop守护进程运行在一个集群上。
不同模式关键配置属性
|
组件名称 |
属性名称 |
独立模式 |
伪分布模式 |
全分布模式 |
|
Common |
fs.default.name |
file:/// (默认) |
hdfs://localhost:9000 |
hdfs://namenode:9000 |
|
HDFS |
dfs.replication |
N/A |
1 |
3 (默认) |
|
MapReduce |
mapred.job.tracker |
local (默认) |
localhost:9001 |
jobtracker:9001 |
2.2、本机模式安装
由于默认属性专为本模式所设定,且无需运行任何守护进程,因此本模式除了把dfs.replication值设为1外,无需任何别的操作。
测试:
进入$HADOOP_HOME目录下执行以下命令来测试安装是否成功
- $ mkdir input
- $ cp conf/*.xml input
- $ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'
- $ cat output/*
输出:
1 dfsadmin
经过上面的步骤,如果没有出现错误就算安装成功了。
2.3、伪分布式模式安装步骤
安装步骤:
1、设置环境变量(JAVA_HOME,path,HADOOP_HOME,CLASSPATH)
2、修改hadoop配置文件(core-site.xml,hdfs-site.xml,mapred-site.xml)
3、设置ssh无密码登陆
4、格式化文件系统 hadoop namenode -format
5、启动守护进程 start-all.sh
6、停止守护进程
其中第二步实例:
- <configuration>
- <property>
- <name>fs.default.name</name>
- <value>localhost:9000</value>
- </property>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- </configuration>
启动后可以通过网页方式查看NameNode和JobTracker状态
NameNode - http://localhost:50070/
JobTracker - http://localhost:50030/
测试:
复制文件到分布式文件系统上
- $ bin/hadoop fs -put conf input
运行测试
- $ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'
获取测试程序的执行结果
- $ bin/hadoop fs -cat output/*
输出:
- 3 dfs.class
- 2 dfs.period
- 1 dfs.file
- 1 dfs.replication
- 1 dfs.servers
- 1 dfsadmin
- 1 dfsmetrics.log
经过上面的步骤,如果没有出现错误就算安装成功了。
2.4、全分布模式安装步骤
安装步骤:
1、设置环境变量(JAVA_HOME,path,HADOOP_HOME,CLASSPATH)
2、修改hadoop配置文件(core-site.xml,hdfs-site.xml,mapred-site.xml,masters,slaves)
3、设置ssh无密码登陆
4、格式化文件系统 hadoop namenode -format
5、启动守护进程 start-all.sh
6、停止守护进程
启动后可以通过网页方式查看NameNode和JobTracker状态
NameNode - http://namenode:50070/
JobTracker - http://jobtracker:50030/
注意:
在每个机器上的相同位置分别安装hadoop,且用户名相同。
3、eclipse插件安装
eclipse hadoop插件,是为了快速开发mapreduce程序,提供了
mapreduce location视图,用于设置mapreduce变量;
windows->preferences 增加了设置hadoop安装位置设置栏;
在Project Explore视图里面增加了DFS Locations项目,能够查看hdfs文件系统的内容,并能够上传下载文件;
new project 里面增加了mapreduce project;
增加了run on hadoop平台功能。
需要注意的是hadoop自带的contrib\eclipse-plugin\hadoop-0.20.2-eclipse-plugin.jar过时了,需要从网上下载一个新的,否则在运行mapreduce程序时没有反应。
大数据时代之hadoop(一):hadoop安装的更多相关文章
- 大数据时代快速SQL引擎-Impala
背景 随着大数据时代的到来,Hadoop在过去几年以接近统治性的方式包揽的ETL和数据分析查询的工作,大家也无意间的想往大数据方向靠拢,即使每天数据也就几十.几百M也要放到Hadoop上作分析,只会适 ...
- 转:大数据时代快速SQL引擎-Impala
本文来自:http://blog.csdn.net/yu616568/article/details/52431835 如有侵权 可立即删除 背景 随着大数据时代的到来,Hadoop在过去几年以接近统 ...
- 大数据时代之hadoop(五):hadoop 分布式计算框架(MapReduce)
大数据时代之hadoop(一):hadoop安装 大数据时代之hadoop(二):hadoop脚本解析 大数据时代之hadoop(三):hadoop数据流(生命周期) 大数据时代之hadoop(四): ...
- 大数据系列(5)——Hadoop集群MYSQL的安装
前言 有一段时间没写文章了,最近事情挺多的,现在咱们回归正题,经过前面四篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,相关的两款软件VSFTP和SecureCRT也已经正常安装了. ...
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...
- 大数据系列(2)——Hadoop集群坏境CentOS安装
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...
- 大数据时代,我们为什么使用hadoop
大数据时代,我们为什么使用hadoop 我们先来看看大数据时代, 什么叫大数据,“大”,说的并不仅是数据的“多”!不能用数据到了多少TB ,多少PB 来说. 对于大数据,可以用四个词来表示:大量,多样 ...
- 【Hadoop】大数据时代,我们为什么使用hadoop
博客已转移,请借一步说话.http://www.daniubiji.cn/archives/538 我们先来看看大数据时代, 什么叫大数据,“大”,说的并不仅是数据的“多”!不能用数据到了多少TB , ...
- 大数据项目实践:基于hadoop+spark+mongodb+mysql+c#开发医院临床知识库系统
一.前言 从20世纪90年代数字化医院概念提出到至今的20多年时间,数字化医院(Digital Hospital)在国内各大医院飞速的普及推广发展,并取得骄人成绩.不但有数字化医院管理信息系统(HIS ...
- 大数据框架:Spark vs Hadoop vs Storm
大数据时代,TB级甚至PB级数据已经超过单机尺度的数据处理,分布式处理系统应运而生. 知识预热 「专治不明觉厉」之“大数据”: 大数据生态圈及其技术栈: 关于大数据的四大特征(4V) 海量的数据规模( ...
随机推荐
- 微信小程序-scroll-view隐藏滚动条
在书写网页的时候,往往会为了页面的美观,而选择去掉滚动区域默认的滚动条,而在这里,就是为小程序去掉滚动条的其中的一种方法: scroll-view.wxml: scroll-view.wxss scr ...
- Ubuntu 16.04 搭建Android开发环境
1.Installing Java sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get inst ...
- Android 6.0 M userdebug版本执行adb remount失败
[FAQ18076]Android 6.0 M版本默认会打开system verified boot,即在userdebug和user版本会把system映射到dm-0设备,然后再挂载.挂载前会检查s ...
- Help improve Android Studio by sending usage statistics to Google
Please press I agree if you want to help make Android Studio better or I don't agree otherwise. more ...
- 2.开启TFTP,NFS,SAMBA,SSH服务
一.TFTP (1)dpkg -s tftp-hpa查看服务器端是否安装 (2)如果没安装 sudo apt-get install tftpd-hpa sudo apt-get install tf ...
- Kafka单机版安装(CentOS 7环境下)
一.环境操作系统和软件版本介绍 1.环境操作系统为CentOS Linux release 7.2.1511 (Core) 可用cat /etc/redhat-release查询 2.软件版本 Kaf ...
- Junit4单元测试之高级用法
Junit单元测试框架是Java程序开发必备的测试利器,现在最常用的就是Junit4了,在Junit4中所有的测试用例都使用了注解的形式,这比Junit3更加灵活与方便.之前在公司的关于单元测试的培训 ...
- Python学习笔记——基础篇【第五周】——算法(4*4的2维数组和冒泡排序)、时间复杂度
目录 1.算法基础 2.冒泡排序 3.时间复杂度 (1)时间频度 (2)时间复杂度 4.指数时间 5.常数时间 6.对数时间 7.线性时间 1.算法基础 要求:生成一个4*4的2维数组并将其顺时针旋 ...
- 修改LibreOffice Draw中定义的样式名称
目前我使用的是LibreOffice 4.2.4.2.经过以往的测试和使用经验,这是诸多版本中较为稳定和bug相对较少的.今天无意中发现该版本的LibreOffice Draw存在一个问题:样式名称修 ...
- 使用$_SERVER['HTTP_HOST']时需注意的
在php中,我们一般通过$_SERVER['HTTP_HOST']来活得URL中网站的域名或者ip地址. $_SERVER['HTTP_HOST']在客户的环境里,取得的值总是程序所在的服务器在其局域 ...