Hadoop2.X的環(huán)境怎么配置

本篇內(nèi)容主要講解“Hadoop2.X的環(huán)境怎么配置”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Hadoop2.X的環(huán)境怎么配置”吧!

創(chuàng)新互聯(lián)公司是一家專業(yè)提供嶗山企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站建設(shè)、網(wǎng)站制作HTML5、小程序制作等業(yè)務(wù)。10年已為嶗山眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進(jìn)行中。

一、安裝之前的準(zhǔn)備

1.1 修改主機(jī)名稱

進(jìn)入 Linux 系統(tǒng)查看本機(jī)的主機(jī)名。通過 hostname 命令查看。

[root@localhost ~]# hostname
localhost.localdomain

如果此時需要修改主機(jī)名則可以按照如下的方式進(jìn)行修改

范例一:臨時修改主機(jī)名稱為Hadoop01 hostname hadoop01 重啟之后失效

范例二:永久修改主機(jī)名稱為Hadoop01

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop01

在修改完主機(jī)名稱之后,需要編輯/etc/hosts 文件需要把主機(jī)名稱與IP地址進(jìn)行映射

vi /etc/hosts 在該文件下添加如下內(nèi)容

192.168.1.128 hadoop01 # 地址是自己主機(jī)名稱的ip

1.2 關(guān)閉防火墻

1)service iptables stop 關(guān)閉防火墻

2)chkconfig iptables off 永久關(guān)閉防火墻啟動

3)chkconfig iptables --list 查看防火墻開機(jī)啟動狀態(tài)

1.3 規(guī)劃軟件安裝目錄

1)創(chuàng)建安裝包的保存目錄,以及安裝目錄

mkdir -p /opt/software 保存軟件的安裝包

mkdir -p /opt/app 軟件的安裝路徑

1.4 創(chuàng)建Hadoop用戶,以及賦予sudo權(quán)限

1)創(chuàng)建Hadoop用戶,以后的操作都是在hadoop用戶下完成的

useradd hadoop 創(chuàng)建hadoop用戶

passwd hadoop 為hadoop用戶設(shè)置密碼

2)為hadoop用戶賦予sudo權(quán)限

在root用戶下,執(zhí)行visudo命令編輯如下內(nèi)容

Allow root to run any commands anywhere root ALL=(ALL) ALL

hadoop ALL=(ALL) ALL 為hadoop用戶設(shè)置sudo權(quán)限

Same thing without a password  %wheel ALL=(ALL) NOPASSWD: ALL  hadoop ALL=(ALL) NOPASSWD: ALL. 為hadoop用戶設(shè)置免密碼sudo權(quán)限

1.5 安裝JDK環(huán)境

首先先把jdk的安裝包上傳到software 文件夾下,之后對其安裝

1)解壓 sudo tar -zvxf jdk-8u181-linux-x64.tar.gz

2)配置JDK環(huán)境變量

首先獲取JDK的安裝路徑

[hadoop@hadoop01 jdk1.8.0_181]$ pwd
/opt/soft/jdk1.8.0_181

接下來打開 /etc/profile 文件進(jìn)行環(huán)境變量的設(shè)置

vi /etc/profile

在 profie 文件末尾添加 jdk 路徑:

#JAVA_HOME

export JAVA_HOME=/data/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH

保存后推出 :wq

完成以上的操作之后,配置文件并不能立即生效,需要使用到如下命令,使配置文件立即生效

[hadoop@hadoop01 jdk1.8.0_181]$ source /etc/profile

之后測試JDK環(huán)境變量是否配置成功,使用如下命令輸出JDK的版本信息

[hadoop@hadoop01 jdk1.8.0_181]$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

如果能看到如上的信息,說明JDK的環(huán)境變量已經(jīng)配置成功

1.6 安裝Hadoop環(huán)境

1)進(jìn)入到軟件包的安裝路徑下:

[hadoop@hadoop01 /]$ cd /opt/soft/

對hadoop安裝包進(jìn)行解壓

[hadoop@hadoop01 soft]$ sudo tar -zvxf hadoop-2.7.2.tar.gz

解壓成功之后,hadoop的安裝目錄結(jié)構(gòu)如下:

bin:Hadoop最基本的管理腳本和使用腳本所在目錄,這些腳本是sbin目錄下管理腳本的基礎(chǔ)實現(xiàn),用戶可以直接使用這些腳本管理和使用hadoop

etc:Hadoop配置文件所在目錄,包括core-site.xml, hdfs-site.xml, mapred-site.xml等從hadoop1.0繼承而來的配置文件和yarn-site.xml等hadoop 2.0新增的配置文件

include:對外提供的編程酷頭文件(具體動態(tài)庫和靜態(tài)庫在lib目錄中),這些頭文件均是用c++定義的,通常用于c++程序訪問hdfs或者編寫mapreduce程序

lib:該目錄包含了Hadoop對外提供的的編程動態(tài)庫和靜態(tài)庫,與include目錄中的頭文件結(jié)合使用。

libexec:各個服務(wù)對應(yīng)的shell配置文件所在目錄,可用于配置日志輸出目錄,啟動參數(shù)(比如JVM參數(shù))等基本信息。

sbin:Hadoop管理腳本所在目錄,主要包含HDFS和YARN中各類服務(wù)的啟動/關(guān)閉腳本

share:Hadoop各個模塊編譯后的jar包所在目錄

2) 配置hadoop環(huán)境

hadoop需要我們配置的相關(guān)文件都存放在$HADOOP_HOME/etc/hadoop目錄下面,首先進(jìn)入到該目錄

[hadoop@hadoop01 hadoop]$ cd etc/hadoop/

進(jìn)入到該目錄之后使用ls 命令查看該目錄下的文件信息

-rw-r--r--. 1 root root  4436 May 22  2017 capacity-scheduler.xml
-rw-r--r--. 1 root root  1335 May 22  2017 configuration.xsl
-rw-r--r--. 1 root root   318 May 22  2017 container-executor.cfg
-rw-r--r--. 1 root root   774 May 22  2017 core-site.xml
-rw-r--r--. 1 root root  3670 May 22  2017 hadoop-env.cmd
-rw-r--r--. 1 root root  4224 May 22  2017 hadoop-env.sh
-rw-r--r--. 1 root root  2598 May 22  2017 hadoop-metrics2.properties
-rw-r--r--. 1 root root  2490 May 22  2017 hadoop-metrics.properties
-rw-r--r--. 1 root root  9683 May 22  2017 hadoop-policy.xml
-rw-r--r--. 1 root root   775 May 22  2017 hdfs-site.xml
-rw-r--r--. 1 root root  1449 May 22  2017 httpfs-env.sh
-rw-r--r--. 1 root root  1657 May 22  2017 httpfs-log4j.properties
-rw-r--r--. 1 root root    21 May 22  2017 httpfs-signature.secret
-rw-r--r--. 1 root root   620 May 22  2017 httpfs-site.xml
-rw-r--r--. 1 root root  3518 May 22  2017 kms-acls.xml
-rw-r--r--. 1 root root  1527 May 22  2017 kms-env.sh
-rw-r--r--. 1 root root  1631 May 22  2017 kms-log4j.properties
-rw-r--r--. 1 root root  5511 May 22  2017 kms-site.xml
-rw-r--r--. 1 root root 11237 May 22  2017 log4j.properties
-rw-r--r--. 1 root root   951 May 22  2017 mapred-env.cmd
-rw-r--r--. 1 root root  1383 May 22  2017 mapred-env.sh
-rw-r--r--. 1 root root  4113 May 22  2017 mapred-queues.xml.template
-rw-r--r--. 1 root root   758 May 22  2017 mapred-site.xml.template
-rw-r--r--. 1 root root    10 May 22  2017 slaves
-rw-r--r--. 1 root root  2316 May 22  2017 ssl-client.xml.example
-rw-r--r--. 1 root root  2268 May 22  2017 ssl-server.xml.example
-rw-r--r--. 1 root root  2250 May 22  2017 yarn-env.cmd
-rw-r--r--. 1 root root  4567 May 22  2017 yarn-env.sh
-rw-r--r--. 1 root root   690 May 22  2017 yarn-site.xml

我們首先可以發(fā)現(xiàn),這些文件目前的權(quán)限都是基于root用戶的,但是我們現(xiàn)在使用的是hadoop用戶,hadoop用戶并沒有這些文件的權(quán)限,所以首先需要修改權(quán)限

使用chown 命令修改用戶與用戶組權(quán)限

sudo chown -R hadoop:hadoop /opt/soft/hadoop-2.7.2/

修改完成之后再次使用ls命令查看文件,查看是否修改成功 [hadoop@hadoop01 hadoop]$ ll

-rw-r--r--. 1 hadoop hadoop  4436 May 22  2017 capacity-scheduler.xml
-rw-r--r--. 1 hadoop hadoop  1335 May 22  2017 configuration.xsl
-rw-r--r--. 1 hadoop hadoop   318 May 22  2017 container-executor.cfg
-rw-r--r--. 1 hadoop hadoop   774 May 22  2017 core-site.xml
-rw-r--r--. 1 hadoop hadoop  3670 May 22  2017 hadoop-env.cmd
-rw-r--r--. 1 hadoop hadoop  4224 May 22  2017 hadoop-env.sh
-rw-r--r--. 1 hadoop hadoop  2598 May 22  2017 hadoop-metrics2.properties
-rw-r--r--. 1 hadoop hadoop  2490 May 22  2017 hadoop-metrics.properties
-rw-r--r--. 1 hadoop hadoop  9683 May 22  2017 hadoop-policy.xml
-rw-r--r--. 1 hadoop hadoop   775 May 22  2017 hdfs-site.xml
-rw-r--r--. 1 hadoop hadoop  1449 May 22  2017 httpfs-env.sh
-rw-r--r--. 1 hadoop hadoop  1657 May 22  2017 httpfs-log4j.properties
-rw-r--r--. 1 hadoop hadoop    21 May 22  2017 httpfs-signature.secret
-rw-r--r--. 1 hadoop hadoop   620 May 22  2017 httpfs-site.xml
-rw-r--r--. 1 hadoop hadoop  3518 May 22  2017 kms-acls.xml
-rw-r--r--. 1 hadoop hadoop  1527 May 22  2017 kms-env.sh
-rw-r--r--. 1 hadoop hadoop  1631 May 22  2017 kms-log4j.properties
-rw-r--r--. 1 hadoop hadoop  5511 May 22  2017 kms-site.xml
-rw-r--r--. 1 hadoop hadoop 11237 May 22  2017 log4j.properties
-rw-r--r--. 1 hadoop hadoop   951 May 22  2017 mapred-env.cmd
-rw-r--r--. 1 hadoop hadoop  1383 May 22  2017 mapred-env.sh
-rw-r--r--. 1 hadoop hadoop  4113 May 22  2017 mapred-queues.xml.template
-rw-r--r--. 1 hadoop hadoop   758 May 22  2017 mapred-site.xml.template
-rw-r--r--. 1 hadoop hadoop    10 May 22  2017 slaves
-rw-r--r--. 1 hadoop hadoop  2316 May 22  2017 ssl-client.xml.example
-rw-r--r--. 1 hadoop hadoop  2268 May 22  2017 ssl-server.xml.example
-rw-r--r--. 1 hadoop hadoop  2250 May 22  2017 yarn-env.cmd
-rw-r--r--. 1 hadoop hadoop  4567 May 22  2017 yarn-env.sh
-rw-r--r--. 1 hadoop hadoop   690 May 22  2017 yarn-site.xml

通過再次查看我們發(fā)現(xiàn),現(xiàn)在的權(quán)限已經(jīng)全部修改為hadoop ,這樣我們就可以在hadoop用戶下對這些文件進(jìn)行操作了

完成了以上的配置之后,我們接下來首先需要配置如下文件

 hadoop-env.sh: 用于hadoop的環(huán)境變量配置文件

 #The java implementation to use.
export JAVA_HOME=/opt/soft/jdk1.8.0_181

在該配置文件中,找到如上內(nèi)容,并且修改JAVA_HOME 為自己的JDK路徑 配置完成之后,可以在hadoop根路徑下,輸入如下命令

bin/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
                       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.

如果能看到如上的信息,說明基本的運行環(huán)境已經(jīng)搭建完成了

二、Hadoop運行模式

Hadoop的運行模式,分為以下幾種:

1) 本地模式(默認(rèn)模式)

不需要啟用單獨進(jìn)程,直接可以運行,測試和開發(fā)時使用。

2)偽分布模式

等同于完全分布式,只有一個節(jié)點。

3)完全分布式模式

多個節(jié)點一起運行。

2.1 本地運行Hadoop官方案例Grep

對于這個案例來說,主要的作用就是,在一堆文件中與規(guī)定的正則表達(dá)式進(jìn)行匹配,把匹配成功的單詞出現(xiàn)的次數(shù),進(jìn)行統(tǒng)計

  $ mkdir input
  $ cp etc/hadoop/*.xml input
  $ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'
  $ cat output/*

 以上為官網(wǎng)上給出的案例代碼

從以上的案例代碼可以得出,首先需要創(chuàng)建一個目錄,用于存放需要統(tǒng)計的文件,而對于統(tǒng)計結(jié)果的保存目錄則不用以前創(chuàng)建,注意:Hadoop中輸出結(jié)果的目錄是不能提前存在的

范例:運行g(shù)rep案例

1)在hadoop根目錄下創(chuàng)建一個文件夾input

[hadoop@hadoop01 hadoop-2.7.2]$ mkdir input

2) 將hadoop的xml配置文件復(fù)制到input

[hadoop@hadoop01 hadoop-2.7.2]$ cp etc/hadoop/*.xml input/

3) 執(zhí)行share目錄下的mapreduce程序

[hadoop@hadoop01 hadoop-2.7.2]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'

4) 查看輸出結(jié)果

[hadoop@hadoop01 hadoop-2.7.2]$ cat output/*
1       dfsadmin

2.2 運行官方wordcount案例

1) 在hadoop根目錄中創(chuàng)建用于保存統(tǒng)計文件的wcinput目錄

[hadoop@hadoop01 hadoop-2.7.2]$ mkdir wcinput

2) 在 wcinput 文件下創(chuàng)建一個 wordcount.txt 文件

[hadoop@hadoop01 wcinput]$ vi worldcount.txt

hello   java    world   input
hadoop  hive    zookeeper       java
world   input   hello   hadoop
hbase   zookeeper       sqoop

3) 執(zhí)行wordcount案例程序

[hadoop@hadoop01 hadoop-2.7.2]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput

4) 查看結(jié)果

[hadoop@hadoop01 hadoop-2.7.2]$ cat wcoutput/part-r-00000
hadoop  2
hbase   1
hello   2
hive    1
input   2
java    2
sqoop   1
world   2
zookeeper       2

通過以上的方式,就可以完成Hadoop的最基本的環(huán)境搭建,以及運行Hadoop的一些案例

到此,相信大家對“Hadoop2.X的環(huán)境怎么配置”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

當(dāng)前名稱:Hadoop2.X的環(huán)境怎么配置
URL地址:http://muchs.cn/article36/jpespg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、建站公司品牌網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、微信公眾號、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化