单机安装Hadoop

单机安装hadoop


------------------------------------------------------------------

 

操作系统:centos7 64 位


hadoop :2.6.5

 

jdk

我们之前安装了 官方的jdk 1.8 不是centos自带的jdk

 


------查看环境变量配置文件是否包含jdk环境变量

cat /etc/profile ---查看全局环境变量配置文件


su hadoop
cat ~/.bash_profile ---查看局部环境变量配置文件


---查看当前linux系统所安装的java 来源哪个版本

rpm -qa | grep java

---卸载包命令

rpm -e 包名


---安装原厂oracle jdk


rpm -ivh jdk-7u80-linux-x64.rpm

 

-----配置环境变量------------
vi /etc/profile


JAVA_HOME=/usr/java/jdk1.7.0_80
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASS_PATH PATH

 


---- 是全局变量生效---


source /etc/profile

 


---验证一下java 是否安装成功


java -version

如果正常显示是如下结果:

java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

这样,Hadoop 所需的 Java 运行环境就好了。


--------------------------------演示从哪儿下载hadoop 然后下载之后上传到centos服务器---------------


然后解压缩hadoop

tar -zxf hadoop-2.6.5.tar.gz

 

我们选择将 Hadoop 安装至 /usr/local/ 中:

tar -zxf /tmp/hadoop-2.6.5.tar.gz -C /usr/local # 解压到/usr/local中

cd /usr/local/

mv ./hadoop-2.6.5/ ./hadoop # 将文件夹名改为hadoop


----创建hadoop用户--------------

useradd hadoop
----创建hadoop组 --------------

groupadd hadoop


chown -R hadoop:hadoop /usr/local/hadoop # 修改文件权限


Hadoop 解压后就能使用了。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

cd /usr/local/hadoop/bin

./hadoop version


-----------如果显示下面的结果 证明安装成功

Hadoop 2.7.1
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 15ecc87ccf4a0228f35af08fc56de536e6ce657a
Compiled by jenkins on 2015-06-29T06:04Z
Compiled with protoc 2.5.0
From source with checksum fc0a1a23fc1868e4d5ee7fa2b28a58a
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.1.jar

 


------------修改centos7 主机名为n1----------


hostnamectl set-hostname --static n1

----修改hosts表----


vi /etc/hosts

192.168.146.128 n1

 

---------------------------------------演示hadoop自带的mapredue例子中的grep或者wordcount--------------------

Hadoop 默认模式为非分布式模式,无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。

现在我们可以执行例子来感受下 Hadoop 的运行。Hadoop 附带了丰富的例子

(运行 ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar 可以看到所有例子),

包括 wordcount、terasort、join、grep 等。

在此我们选择运行 grep 例子,我们将 input 文件夹中的所有文件作为输入,

筛选当中符合正则表达式 dfs[a-z.]+ 的单词并统计出现的次数,最后输出结果到 output 文件夹中。


cd /usr/local/hadoop

mkdir ./input

cp ./etc/hadoop/*.xml ./input # 将配置文件作为输入文件

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'

cat ./output/* # 查看运行结果

 


---使用hadoop的例子hadoop-examples-2.6.5.jar里边的程序grep来执行查询dfs开头后面是包含从a到z的字符串的单词

-----进入到bin文件夹下

cd /usr/local/hadoop/bin

 

./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep /usr/local/hadoop/input /usr/local/hadoop/output 'dfs[a-z.]+'

 

执行成功后如下所示,输出了作业的相关信息,输出的结果是符合正则的单词 dfsadmin 出现了1次

---查看执行结果
cd /usr/local/hadoop/output

cat *

---------查看执行结果

cd /usr/local/hadoop

cat ./output/* # 查看运行结果

--------------------------------------------------


./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar

./hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount ./input ./output333

./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /usr/local/hadoop/input /usr/local/hadoop/output333


1.


cd /usr/local/hadoop

 

mkdir input


cd input

vi test.txt

 

hello world


hello lisan


hello sangyang


hello wanghong


hello meimei


-


cat ./output/* # 查看运行结果

 


执行成功后如下所示,输出了作业的相关信息,输出的结果是符合正则的单词hello出现了5次

 

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar wordcount ./input ./output

 


注意,Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 ./output 删除。



rm -rf ./output


---------------------------------------


单机模式
(不需要做任何配置,但不启动任何dfs和mapreduce daemon进程)

 

-----------讲解hadoop的常用配置文件core-site.xml,hdfs-site.xml,mapred-site.xml

 

 


获取默认配置

配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,默认下来,


这些配置文件都是空的,所以很难知道这些配置文件有哪些配置可以生效,上网找的配置可能因为各个hadoop版本不同,
导致无法生效。浏览更多的配置,有两个方法:

1.选择相应版本的hadoop,下载解压后,搜索*.xml,找到core-default.xml,hdfs-default.xml,mapred-default.xml,

这些就是默认配置,可以参考这些配置的说明和key,配置hadoop集群。

 

2.浏览apache官网,三个配置文件链接如下:

http://hadoop.apache.org/common/docs/current/core-default.html
http://hadoop.apache.org/common/docs/current/hdfs-default.html
http://hadoop.apache.org/common/docs/current/mapred-default.html


这里是浏览hadoop当前版本号的默认配置文件,其他版本号,要另外去官网找。其中第一个方法找到默认的配置是最好的,

因为每个属性都有说明,可以直接使用。另外,core-site.xml是全局配置,hdfs-site.xml和mapred-site.xml分别是hdfs和mapred的局部配置。




 

posted @ 2018-08-20 15:49  BoomOoO  阅读(134)  评论(0编辑  收藏  举报