我PC上是win10和Ubuntu18.0.4双系统
hadoop 2.8.5
jdk 1.8
1.安装配置jdk
从orcle官网上下载jdk,解压复制到/usr/local/下
/usr/local/jdk1.8中的文件
2018-11-20 15-48-11屏幕截图.png
修改配置文件 ~/.bashrc或 /etc/profile,添加环境变量
添加以下内容:
2018-11-20 16-01-37屏幕截图.png
报找不到路径的错误,就看看JAVE_HOME,这个一定是jdk的绝对路径。
配置完成过后,source /etc/profile,可以使修改立即生效,不用重启。
命令java -version查看是否修改成功
2018-11-20 15-56-28屏幕截图.png
2.安装配置hadoop
(1)
去Apache官网下载hadoop 2.8.5
2018-11-20 16-06-28屏幕截图.png
下载tar文件,解压后复制到/usr/local/下,改名为hadoop,目录中文件
2018-11-20 16-09-56屏幕截图.png添加环境变量,
2018-11-20 16-13-18屏幕截图.png
注意:sbin目录下有运行hadoop守护进程的脚本,因此如果计划在本地机器上运行守护进程的话,需要将该目录包含进命令行路径中。
HADOOP_HOME一定是hadoop的绝对路径,
HADOOP_CONF_DIR指向/usr/local/hadoop/etc/hadoop
其他暂时不明,好像不写也没关系。
进入/usr/local/hadoop/etc/hadoop
sudo vim hadoop-env.sh 添加jdk路径和HADOOP_CON_DIR
输入 hadoop version来判断Hadoop是否工作
如果报错Could not find or load main class org.apache.hadoop.util.VersionInfo
试试在配置文件中添加
export HADOOP_CLASSPATH= 2018-11-20 16-28-41屏幕截图.png
core-site.xml中添加
2018-11-20 16-32-08屏幕截图.png
hdfs-site.xml中添加
2018-11-20 16-33-24屏幕截图.png
yarn-site.xml
2018-11-20 16-34-13屏幕截图.png
(3)
配置ssh无密码登陆
安装 ssh,之前请确保apt已更新
$ sudo apt-get install ssh
基于空口令生成一个新SSH密钥,以实现无密码登陆
$ ssh-keygen -t rsa -P ' ' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
测试是否连接
$ ssh localhost
如果成功则不需要输入密码
(4)
在首次使用hadoop前,必须格式化文件系统。
先修改用户的权限 chown -R 用户名 /usr/local/hadoop
hdfs namenode -format
启动HDFS、YARN和MapReduce守护进程
start-dfs.sh
2018-11-20 16-52-48屏幕截图.png
start-yarn.sh
2018-11-20 16-53-04屏幕截图.png
mr-jobhistory-daemon.sh start historyserver
2018-11-20 16-53-26屏幕截图.png
本地计算机将启动以下守护进程:一个namenode、一个辅助namenode、一个datanode(HDFS)、一个资源管理器、一个节点管理器(YARN)和一个历史服务器(MapReduce)
Hadoop安装目录下logs目录中日志文件可以检查守护进程是否成功启动
Web界面:http://localhost:50070/ 查看namenode
http://localhost:8088/ 查看资源管理器
2018-11-20 17-05-50屏幕截图.png
http://localhost:19888/ 查看历史服务器
还可以通过Java的jps命令,
2018-11-20 17-08-32屏幕截图.png
创建一个主目录
$ hadoop fs -mkdir -p /user/tce
3.Hadoop自带wordcount测试
进入/usr/local/hadoop/bin,创建目录input
寻找一组英文网页,这里我选择github的主页https://github.com/
查看源代码,拷贝到input目录下的github.html
在编写text1.txt:hello excuse me fine thank you,text2.txt:hello how do you do thank you
把input目录下文件添加到hadoop输入
cd /usr/local/hadoop/bin
hadoop dfs -put input in
确认一下
hadoop dfs -ls ./in/*
2018-11-20 17-36-12屏幕截图.png
运行wordcount
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.5.jar wordcount in output
2018-11-20 17-38-26屏幕截图.png
hadoop-mapreduce-examples-2.8.5.jar这个jar包在/usr/local/hadoop/share/hadoop/mapreduce/
登陆http://localhost:50070/ 查看namenode
2018-11-20 17-42-05屏幕截图.png
键入 hadoop dfs -cat ./output/* 查看输出结果
2018-11-20 17-44-44屏幕截图.png
参考资料:
《Hadoop权威指南》大数据的存储与分析 第四版
http://www.cnblogs.com/aijianiula/p/3850002.html
https://blog.csdn.net/t555222/article/details/77882747
网友评论