++++++++++++++++++ | 1 hadoop 单 机 配 置 | ++——>> 配置两个参数!!
• Hadoop 的单机模式安装非常简单
– 1、获取软件
http://hadoop.apache.org
– 2、安装配置 java 环境,安装 jps 工具
安装 Openjdk 和 openjdk-devel
[root@localhost ~]# ls
[root@localhost ~]# vim /etc/hostname
node20
[root@localhost ~]# vim /etc/hosts
192.168.1.20 node20
[root@localhost ~]# logout
[root@room9pc01 ~]# ssh 192.168.1.20
[root@node20 ~]#
[root@node20 ~]# yum install java-1.8.0-openjdk-devel
(只装了openjdk-devel 会根据依赖关系自动安装Openjdk) 注意:!! java兼容不太好最好把之前的版本卸载掉!
[root@node20 ~]# java -version ## 可以查看安装的java
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)
[root@node20 ~]#
[root@node20 ~]#
[root@node20 ~]# jps (装的过程中 装了一个开发工具,这个工具是查看角色用的)
1420 Jps
-3 安装hadoop 软件!
找到软件,或者下载到机器上 (本次实验之前我的把下载的hadoop软件放到另外一台机器上了)
[root@node20 ~]# lftp 192.168.1.254
lftp 192.168.1.254:/> cd elk/hadoop/
lftp 192.168.1.254:/elk/hadoop> get hadoop-2.7.6.tar.gz
[root@node20 ~]# ls
hadoop-2.7.6.tar.gz
[root@node20 ~]#
[root@node20 ~]# tar zxf hadoop-2.7.6.tar.gz
[root@node20 ~]# ls
hadoop-2.7.6 hadoop-2.7.6.tar.gz
[root@node20 ~]# mv hadoop-2.7.6 /usr/local/hadoop
[root@node20 ~]#
[root@node20 ~]# cd /usr/local/hadoop/
[root@node20 hadoop]# ls
bin include libexec NOTICE.txt sbin
etc lib LICENSE.txt README.txt share
『bin里面放的可以执行的命令文件; sbin也是命令 服务相关的; include放的是引用的类库 libexec执行的一些类库
etc配置文件所在的路径; lib动态连接库 share 编写的一些文档,案例,代码!』
[root@node20 hadoop]# ls bin/
container-executor hdfs mapred.cmd yarn
hadoop hdfs.cmd rcc yarn.cmd
hadoop.cmd mapred test-container-executor
[root@node20 hadoop]#
[root@node20 hadoop]# ./bin/hadoop ## — — — —>> 运行一下hadoop
Error: JAVA_HOME is not set and could not be found. ##报错!
[root@node20 hadoop]#
[root@node20 hadoop]# rpm -ql java-1.8.0-openjdk ##查找一下java的安装的家目录路径
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/bin/policytool
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/lib/amd64/libawt_xawt.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/lib/amd64/libjawt.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/lib/amd64/libjsoundalsa.so
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/lib/amd64/libsplashscreen.so
/usr/share/applications/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64-policytool.desktop
..... ..... .... ....
可以看到家目录,共有的目录到/jre 之前都相同
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre
[root@node20 hadoop]# ls
[root@node20 hadoop]# cd etc/
[root@node20 etc]# ls
hadoop
[root@node20 hadoop]# ls
[root@node20 hadoop]# pwd
/usr/local/hadoop/etc/hadoop ##----->> hadoop 配置文件的路径!
[root@node20 hadoop]# pwd
/usr/local/hadoop/etc/hadoop
[root@node20 hadoop]# vim hadoop-env.sh #(这其实是个脚本,修改这个脚本, 非注释的 前两行!)
修改前
export JAVA_HOME=${JAVA_HOME}
与 后
export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre"
修改前
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"} ##// hadoop配置文件路径!
【解释: ${HADOOP_CONF_DIR:-"/etc/hadoop"} 前面是个变量 HADOOP_CONF_DIR这是变量的主题,后面/etc/hadoop是个字符串; 其中 :- 表示 前面变量为空或没有设置的时候,由后面字符串代替 】
修改后
export HADOOP_CONF_DIR="/usr/local/hadoop/etc/hadoop"
[root@node20 hadoop]# cd /usr/local/hadoop/
[root@node20 hadoop]# ./bin/hadoop ##此时就不会报错了!显示出信息了!
验证安装是否完成!
[root@node20 hadoop]# ./bin/hadoop version ## 查看一下版本 这时候安装完成!
Hadoop 2.7.6
Subversion https://shv@git-wip-us.apache.org/repos/asf/hadoop.git -r 085099c66cf28be31604560c376fa282e69282b8
Compiled by kshvachk on 2018-04-18T01:33Z
Compiled with protoc 2.5.0
From source with checksum 71e2695531cb3360ab74598755d036
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.6.jar
[root@node20 hadoop]#
------____________________——————
##hadoop 应用!
Hadoop 单机模式安装配置
• Hadoop 的单机模式安装非常简单,只需要配置好
环境变量即可运行,这个模式一般用来学习和测试
hadoop 的功能
– 测试 --- 统计词频
cd /usr/local/hadoop
mkdir input
cp *.txt input/
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-
mapreduce-examples-2.7.3.jar wordcount input output
hadoop 用来分析大数据, 例如热词,像百度,可以通过用户的日志,提出热词 大家的关注点。
没有大数据,那么我们就分析个小数据!
[root@node20 hadoop]# ls
bin etc include lib libexec LICENSE.txt NOTICE.txt README.txt sbin share
[root@node20 hadoop]# mkdir oo
[root@node20 hadoop]#
[root@node20 hadoop]# cp *.txt oo/ ## 把当前的txt文件放到一个文件里
[root@node20 hadoop]# cd oo
[root@node20 oo]# ls
LICENSE.txt NOTICE.txt README.txt ## 搜索这三个文件里面的热词,每个词的出现的次数!
[root@node20 oo]#
『如果不用hadoop 用awk grep 这类比较复杂困难』
[root@node20 hadoop]# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount oo xx
## 调用 bin/hadoop ; jar 表示我要用hadoop执行一个java脚本(java的打包后的扩展名是jar); “share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar” 是这个java脚本的路径 是个文件; wordcount 调用java的方法 意思是单词出现频率的总和的统计, 统计oo这个文件; 把结果放到xx文件里面
解释:: oo 是要分析的数据, xx 是分析结果放的文件夹 注意这个文件夹名只能用一次,再次使用就会报错!防止就是数据覆盖!
[root@node20 hadoop]# cat xx/*
.......
.......
text 8
than 12
that 119
that: 1
the 701
their 7
them, 1
then 9
theory, 1
thereof 3
thereof), 4
......
......
分析统计 the 出现次数最多 ! (之后还可以用其它的命令,进行排序。。。。)
[root@node20 hadoop]# pwd
/usr/local/hadoop
[root@node20 hadoop]# bin/hadoop ## 查看一下hadoop常用的参数!
Usage: hadoop [--config confdir] [COMMAND | CLASSNAME]
CLASSNAME run the class named CLASSNAME
or
where COMMAND is one of:
fs run a generic filesystem user client
version print the version
jar <jar> run a jar file ## jar
note: please use "yarn jar" to launch
YARN applications, not this command.
checknative [-a|-h] check native hadoop and compression libraries availability
distcp <srcurl> <desturl> copy file or directories recursively
archive -archiveName NAME -p <parent path> <src>* <dest> create a hadoop archive
classpath prints the class path needed to get the
credential interact with credential providers
Hadoop jar and the required libraries
daemonlog get/set the log level for each daemon
trace view and modify Hadoop tracing settings
Most commands print help when invoked w/o parameters.
[root@node20 hadoop]# file share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar ##//可以看到这个jar的路径
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar: Zip archive data, at least v1.0 to extract
[root@node20 hadoop]#
[root@node20 hadoop]# ./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar ##回车 可以看到 有好多参数,可以选择使用!
本文详细介绍了在Linux环境下配置Hadoop单机模式的步骤,包括安装Java环境,下载并解压Hadoop软件,配置环境变量,解决JAVA_HOME问题,并通过执行hadoop命令验证安装。此外,还展示了如何使用Hadoop进行简单的词频统计测试。
1701

被折叠的 条评论
为什么被折叠?



