阿里云esc服务器上装hadoop
- hadoop是一由Apache基金会所开发分布式系统基础架构。它可使用户在不了解分布式底层细节的情况。开发分布式程序,充分利用集群来进行高速运算和存储。HDFS和MapReduce就是hadoop的框架最核心的设计,HDFS,为海量数据提供了存储,MapReduce则是为海量数据提供了计算。
- 谷歌就发表了著名三篇论文。包括了Mapreduce编程模型、和文件系统GFS还有列式存储BigTable,虽然谷歌没有开源,但是,在其论文中介绍了相关技术。所以说Apache开源了的Hadoop和Hbase中,Hadoop的Mapreduce和HDFS的思想,是来源于谷歌的两篇mapreduce和GFS著名论文,而hbase则是来源于谷歌的另一篇Bigtable论文。
安装使用过程
获取linux环境
- 租用高校计划的阿里云服务器
- 安装完成后就可以使用Putty(在windows下)来远程登录
安装JDK
- 下载jdk的安装包,并上传/usr/java目录
- 一般来说使用wget就可以正常下载了,但是Oracle官网会限制我们的使用
- 解压安装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指令 查看是否配置成功
配置Hadoop
-
下载Hadoop1.2.1 (wget命令)+下载地址
-
ls 查看当前目录下文件,可以看到hadoop的安装包,可以mv到/opt/目录下
-
解压缩 tar -zxvf hadoop-1.2.1.tar.gz ,解压缩后多了一个文件夹,cd命令进入
-
配置第一个vim hadoop-env.sh , 1.2.1在conf文件夹下
-
然后改三个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