Hadoop三種模的安裝配置過程

JDK+Hadoop安裝配置、單機模式配置

如下操做在SecureCRT裏面完成

1.關閉防火牆java

firewall-cmd --state 顯示防火牆狀態running/not runningnode

systemctl stop firewalld 臨時關閉防火牆,每次開機從新開啓防火牆linux

systemctl disable firewalld 禁止防火牆服務。web

2.傳輸JDK和HADOOP壓縮包框架

SecureCRT 【File】→【Connect SFTP Session】開啓sftp操做ssh

put  jdk-8u121-linux-x64.tar.gz 分佈式

put  hadoop-2.7.3.tar.gzoop

傳輸文件從本地當前路徑(Windows)到當前路徑(Linux)學習

 

3.解壓JDK、HADOOPspa

tar  -zxvf  jdk-8u121-linux-x64.tar.gz  -C  /opt/module  解壓安裝

tar  -zxvf  hadoop-2.7.3.tar.gz  -C  /opt/module  解壓安裝

mkdir module

4.配置JDK並生效

vi /etc/profile文件添加:

export JAVA_HOME=/opt/module/jdk1.8.0_121

export PATH=$JAVA_HOME/bin:$PATH

Esc :wq!保存並退出。不須要配置CLASSPATH。

source /etc/profile配置生效

運行命令javac,檢驗是否成功。

5.配置HADOOP並生效

vi /etc/profile文件添加:

export HADOOP_HOME=/opt/module/hadoop-2.7.3

export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

Esc :wq!保存並退出。

source /etc/profile配置生效

運行命令hadoop,檢驗是否成功。

5.單機模式配置hadoop -env.sh

vi /opt/module/hadoop-2.7.3/etc/hadoop/hadoop-env.sh文件修改

顯示行號 Esc :set number    取消行號Esc :set nonumber

修改第25行export JAVA_HOME=/opt/module/jdk1.8.0_121

Esc :wq!保存並退出

本地模式沒有HDFS和Yarn,配置JDK後MapReduce可以運行java程序。

6.運行自帶程序wordcount

cd /opt/module/hadoop-2.7.3/share/hadoop/mapreduce 轉入wordcount所在路徑。

建立adir文件夾:

hadoop fs -mkdir /adir

查看所建立的文件:

hadoop fs -ls /

運行touch in.txt,建立In.txt文件,做爲輸入文件。

(若是in.txt是空文件,運行vi in.txt,輸入內容做爲被統計詞頻的輸入文件)

傳輸in.txt文件到adir

hadoop fs -put in.txt /adir

查看in.txt是否傳到adir裏:

hadoop fs -ls /adir

輸出目錄/output必須不存在,程序運行後自動建立。

運行wordcount:

hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/

運行成功以後,進入/output目錄,打開文件part-r-00000查看計數結果。

hadoop fs -cat /user/root/output/part-r-00000

Hadoop僞分佈式模式配置

只有一臺虛擬機bigdata128,既是namenode又是datanode。

1、基礎安裝配置

完成上述1-5安裝配置。

2、修改如下5個配置文件

在<configuration>與</configuration>之間添加以下property:

①core-site.xml

<!--配置HDFS主節點,namenode的地址,9000是RPC通訊端口-->

<property>

        <name>fs.defaultFS</name>

        <value>hdfs://bigdata128:9000</value>

</property>

<!--配置HDFS數據塊和元數據保存的目錄,必定要修改-->

<property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/module/hadoop-2.7.3/tmp</value>

</property>

②hdfs-site.xml

<!--註釋配置數據塊的冗餘度,默認是3-->                          

<property>               

              <name>dfs.replication</name>            

              <value>1</value>          

</property>              

<!--secondaryNameNode的主機地址-->

<property>

         <name>dfs.namenode.secondary.http-address</name>

         <value>bigdata128:50090</value>

</property>

③mapred-site.xml(該配置文件不存在,先複製)

cp  mapred-site.xml.template  mapred-site.xml                          

<!--配置MR程序運行的框架-->                     

<property>                         

           <name>mapreduce.framework.name</name>

           <value>yarn</value>

</property>    

④yarn-site.xml

<!--配置Yarn的節點-->                   

<property>                         

           <name>yarn.resourcemanager.hostname</name>

           <value>bigdata128</value>

</property>    

<!--NodeManager執行MR任務的方式是Shuffle洗牌-->                    

<property>      

           <name>yarn.nodemanager.aux-services</name>

           <value>mapreduce_shuffle</value>

</property>    

⑤Slaves文件裏使用默認localhost,或者添加 bigdata128(既是NameNode又是DataNode)

注:若是Slaves文件爲空,就沒有DataNode和NodeManager。

⑥修改\etc\hosts配置文件

運行命令  vi  \etc  hosts

註釋掉已有內容,添加虛擬機的ip及對應主機名:

192.168.163.128  bigdata128

⑦修改\etc\hostname配置文件

運行命令  vi  \etc  hostname

添加虛擬機的主機名:

bigdata128

重啓虛擬機,主機名生效。

3、格式化

hdfs namenode -format (若是不是第一次格式化,格式化以前先刪除/opt/module/hadoop-2.7.3/下面的tmp、logs兩個目錄)

4、啓動

start-all.sh (若是啓動以前已經啓動過,啓動以前先中止stop-all.sh(啓動記得關閉防火牆)

查看僞分佈式配置是否成功:

①執行ll,查看/opt/module/hadoop-2.7.3/tmp/dfs目錄,以下圖所示,則正確。

②執行jps,以下圖所示,NameNode、DataNode、SecondaryNameNode、ResourceManager、NodeManager若是所有啓動,僞分佈式配置成功。

 

③web控制檯訪問:http://192.168.163.132:50070http://192.168.163.132:8088

頁面正常顯示,則成功。

5、運行wordcount

hdfs dfs -put in.txt /adir 上傳本地當前路徑下的in.txt文件 到hdfs的/adir目錄下。

運行hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/。

http://192.168.163.132:50070 查看/user/root/output/part-r-00000文件裏的詞頻統計結果。

6、SSH免密碼登錄(解決每次啓動hadoop輸入用戶密碼問題)

生成公、私密鑰對:ssh-keygen -t rsa  按3次回車鍵

查看:cd ~/.ssh路徑下面的id_rsa和id_rsa.pub

複製:ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata128

查看生成authorized_keys。

Hadoop徹底分佈式模式配置

1、新建另外兩臺Linux虛擬機

徹底分佈式模式共三臺虛擬機,前述僞分佈式的虛擬機(bigdata128)做爲master主節點,克隆另外兩個虛擬機(bigdata12九、bigdata131)做爲slaves子節點,克隆機自帶安裝JDK、Hadoop及配置文件。

注:此配置是爲學習所用,且電腦資源有限,所以照搬僞分佈式配置,將NameNode、SecondaryNameNode、ResourceManager所有配置在主節點bigdata128上面,實際狀況則相反,應該分別配置在不一樣的節點上面。

2、修改如下配置文件

①slaves配置文件

三臺虛擬機分別都運行命令  vi  /opt/module/hadoop-2.7.3/etc/hadoop  slaves

修改slaves爲:

bigdata129

bigdata131

②修改\etc\hosts配置文件

三臺虛擬機分別都運行命令  vi  \etc  hosts

註釋已有內容,添加集羣三臺虛擬機的ip及對應主機名:

192.168.163.128  bigdata128

192.168.163.129  bigdata129

192.168.163.131  bigdata131

③修改\etc\hostname配置文件

三臺虛擬機分別都運行命令  vi  \etc  hostname

添加各自的主機名bigdata128或者bigdata129或者bigdata131。

重啓所有虛擬機,主機名生效。

3、格式化

在主節點bigdata128上面輸入格式化命令(hdfs namenode -format),格式化集羣。

注:若是不是第一次格式化,三臺虛擬機都刪除\opt\module\hadoop-2.7.3\下面的tmp、logs目錄:rm –rf \opt\module\hadoop-2.7.3\tmp    rm –rf \opt\module\hadoop-2.7.3\logs

注:若是格式化以前啓動過集羣,先在主節點bigdata128上面中止集羣(stop-all.sh),再格式化。

4、啓動集羣

在主節點bigdata128上面輸入啓動命令(start-all.sh),啓動集羣。   

注:若是啓動以前啓動過集羣,先在主節點bigdata128上面中止集羣(stop-all.sh),再啓動。

啓動正常,輸入jps命令,顯示以下:

 

啓動正常jps顯示3臺主機如上以下

 

啓動正常目錄顯示以下:

 

web控制檯訪問:http://192.168.163.132:50070 、http://192.168.163.132:8088

頁面正常顯示,則成功。

5、運行wordcount

hdfs dfs -put in.txt /adir 上傳本地當前路徑下的in.txt文件 到hdfs的/adir目錄下。

運行hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/。

在http://192.168.163.132:50070 查看/user/root/output/part-r-00000文件裏的詞頻統計結果。

以下圖所示:

相關文章
相關標籤/搜索