本人目前大三春期,就读于软件工程专业,因为本学期选了大数据分析与处理这门课,了解了一下Hadoop,基于课程需要,也介绍了再云服务器上装hadoop,在网上检索Linux装hadoop就找到了阿里云的高校计划,可以免费申领及续领2个月云服务器,正好符合8周的选修课,于是选择了阿里云,当然在课上老师讲的东西非常有限,今天终于把伪分布式的Hadoop装好。
hadoop是一由Apache基金会所开发分布式系统基础架构。它可使用户在不了解分布式底层细节的情况。开发分布式程序,充分利用集群来进行高速运算和存储。HDFS和MapReduce就是hadoop的框架最核心的设计,HDFS,为海量数据提供了存储,MapReduce则是为海量数据提供了计算。
在零几年,谷歌就发表了著名三篇论文。包括了Mapreduce编程模型、和文件系统GFS还有列式存储BigTable,虽然谷歌没有开源,但是,在其论文中介绍了相关技术。所以说Apache开源了的Hadoop和Hbase中,Hadoop的Mapreduce和HDFS的思想,是来源于谷歌的两篇mapreduce和GFS著名论文,而hbase则是来源于谷歌的另一篇Bigtable论文。
一、实验步骤:
(1)、获取Linux环境
租用高校计划的阿里云服务器
安装完成后就可以使用Putty(在windows下)来远程登录
Putty的下载地址
(2)、安装JDK
1 .jdk安装
① 下载jdk的安装包,并上传/usr/java目录
jdk的下载地址1 到oracle去找
② 一般来说使用wget就可以正常下载了,但是Oracle官网会限制我们的使用
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" (相应版本的下载地址) (复制之后,右键直接粘贴)
③解压安装JDK
tar -zxvf jdk-8u40-linux-x64.tar.gz(gz包是linux用的) -C /usr/local/src/
④ 配置jdk环境变量
一.修改profile 文件文本
vim /etc/profile
在文件的末尾添加如下
export JAVA_HOME=/usr/local/src/jdk1.8.0_74(jdk路径)
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
注意!!
JAVA_HOME =后的内容是你的 JDK 安装目录
Linux 下用冒号“:”来分隔路径
$PATH / $CLASSPATH / $JAVA_HOME 用以引用原来的环境变量值
export 则是把这三个变量导出,变成全局变量。
按i进入编辑模式,esc退出
:wq退出当前
使用source /etc/profile指令 使配置生效
使用java -version指令 查看是否配置成功
(3)、配置Hadoop
1 下载Hadoop1.2.1
(wget命令)+下载地址
ls 查看当前目录下文件,可以看到hadoop的安装包
可以mv到/opt/目录下
2.解压缩 tar -zxvf hadoop-1.2.1.tar.gz
解压缩后多了一个文件夹,cd命令进入
3配置第一个vim hadoop-env.sh
1.2.1在conf文件夹下
4 然后改三个XML文件
hadoop有很多配置文件,很大部分我们可以使用默认值,slave是集群需要配置的文件。伪分布式有以下几个我们需要配置
vim core-site.xml
打开后是个空配置文件
hadoop.tmp.dir
/hadoop
dfs.name.dir
/hadoop/name
fs.default.name
localhost:9000
直接粘贴会出错,需要修改
修改第二个文件vim hdfs-site.xml。
配置文件的系统数据存放目录
dfs.data.dir
/hadoop/data
(粘贴不完整,可以对照图片,图在文章末尾自行修改)
配置第三个文件
vim mapred-site.xml
配置任务调度器如何去访问
mapred.job.tracker
localhost:9001
接下来需要告诉系统hadoop放在哪
vim /etc/profile(同前面配置jdk,此处不能写成vim etc/…)
如何配置,详情见图片
source /etc/profile
这时可以使用hadoop这个命令了
我们来找到hadoop的执行程序
在执行之前,需要对namenode进行格式化
见图片
start-all.sh 启动
启动正常后输入jps命令,
显示Jps、SecondaryNameNode、NameNode。则启动成功。
二、结果分析
Jdk配置成功,hadoop配置成功,把jdk关联到hadoop后
所以hadoop得以正常启动。
三、存在的问题
Vim 和 Source 命令后面的路径少了/,无法正常进入环境配置和环境变量配置应用。
完整路径是:/etc/profile
环境变量配置不对,搞错jdk路径导致Java_home配置失败,解压的时候应记录路径。
Path配置错误导致hadoop启动后jps命令只显示有jps
正确配置为$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
四、结论
本次实验是为学习大数据分析做的实验环境建立,hadoop安装文档有些不完善,需要搭配视频使用,但还是有问题需要解决,花费了不少时间,环境变量的配置总是不对,花费不少时间修改。不过也学到了一些使用putty控制云服务器的命令,我认为对学习大数据是很重要的经验积累。