天天看點

fedora18安裝hadoop配置僞分布模式

一、安裝配置java

1.下載下傳rpmd對應版本

2.安裝sudo yum 安裝檔案路徑,安裝後在fedora18下安裝後路徑在/usr/java下,目前sun的java最高版本1.7.0_21

3.配置環境變量

打開檔案sudo gedit /etc/profile

4.添加内容,在unset i一句話上面,注意裡面的配置需要和系統中實際路徑配合,是以有時候按照網上方法就會配置失敗

export JAVA_HOME=/usr/java/default

export JRE_HOME=/user/java/latest

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

5.注意一點,這個配置隻對目前使用者起效

二、配置SSH

SSH簡介http://baike.baidu.com/view/16184.htm#sub5909252

1.确認是否已安裝ssh服務

rpm -qa | grep openssh-server

2.安裝sudo yum install openssh-server

3.啟動服務sudo service sshd status

4.停止服務sudo service sshd stop

5.設定系統啟動時開啟服務# systemctl enable sshd.service

6.開啟防火牆22端口(運作時配置和永久配置)

7.檢視使用者是否有ssh檔案夾

ls -a /home/使用者名

8.ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

~代表目前使用者檔案夾,ssh-keygen代表生成密鑰;-t(注意區分大小寫)表示指定生成的密鑰類型;dsa是dsa密鑰認證的意思,即密鑰類型;-P用于提供密語;-f指定生成的密鑰檔案。這個指令會在.ssh檔案夾下建立id_dsa及id_dsa.pub兩個檔案,這是SSH的一對私鑰和公鑰,類似于鑰匙和鎖.

9.把id_dsa.pub(公鑰)追加到授權的key中去

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

這條指令的功能是把公鑰加到用于認證的公鑰檔案中,這裡的authorized_keys是用于認證的公鑰檔案。

10.修改/etc/ssh/sshd_config

找到以下内容,并去掉注釋符"#"

    RSAAuthentication yes

    PubkeyAuthentication yes

    AuthorizedKeysFile .ssh/authorized_keys

然後重新開機服務

11.修改檔案authorized_keys的權限

chmod 600 /home/使用者名/.ssh/authorized_keys

12.驗證面密碼登入本機

ssh localhost

出現下面的語句就表示成功了

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'localhost' (RSA) to the list of known hosts.

在詢問時回答yes注意區分大小寫

如果曾經操作過此過程,但是沒有起到效果,可以将.ssh檔案夾清空再操作一次即可了

三、安裝hadoop

1.使用rpm安裝時會出現系統檔案沖突,是以下載下傳tar的版本

現在穩定版建議使用1.1.2作為生産環境搭建基礎

研究和學習新一代的技術建議使用2.0.4版本

2.0以上版本采用了新的并行計算架構yarn,性能以及功能都有極大提高.

3.通路網址http://hadoop.apache.org/

4.下載下傳

北京交通大學的鏡像站,開源軟體均可下載下傳

 http://mirror.bit.edu.cn/apache/hadoop/common/stable/hadoop-1.1.2-1.x86_64.rpm

 http://mirror.bit.edu.cn/apache/hadoop/common/stable/hadoop-1.1.2.tar.gz

5.解壓縮即可

四、hadoop配置

1.a. 單機模式. 單機模式是Hadoop的預設模。當配置檔案為空時,Hadoop完全運作在本地。因為不需要與其他節點互動,單機模式就不使用HDFS,也不加載任何Hadoop的守護程序。該模式主要用于開發調試MapReduce程式的應用邏輯。

b. 僞分布模式. Hadoop守護程序運作在本地機器上,模拟一個小規模的的叢集。該模式在單機模式之上增加了代碼調試功能,允許你檢查記憶體使用情況,HDFS輸入輸出,以及其他的守護程序互動。

c. 全分布模式. Hadoop守護程序運作在一個叢集上。

2.單機模式無需配置

3.僞分布模式配置

(1)修改hadoop-env.sh的如下内容:

             export JAVA_HOME=/usr/java/jdk1.7.0_21

(2)配置的是HDFS(Hadoop的分布式檔案系統)的位址及端口号。注意更改防火牆

conf/core-site.xml:

<configuration>

     <property>

         <name>fs.default.name</name>

         <value>hdfs://localhost:9000</value>

     </property>

<property>        如果不配置的話每次重新開機電腦都需要格式化

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

         <value>/home/wind/hadooptemp</value>

     </property>

</configuration>

(3)Hadoop中HDFS的配置,配置的備份方式預設為3,在單機版的Hadoop中,需要将其改為1

conf/hdfs-site.xml:

<configuration>

     <property>

         <name>dfs.replication</name>

         <value>1</value>

     </property>

</configuration>

(4)Hadoop中MapReduce的配置檔案,配置JobTracker的位址及端口。注意更改防火牆

conf/mapred-site.xml:

<configuration>

     <property>

         <name>mapred.job.tracker</name>

         <value>localhost:9001</value>

     </property>

</configuration>

4.在啟動Hadoop前,需要格式化Hadoop的檔案系統HDFS。注意帶有bin/意味着在指令端下處于hadoop根目錄下

bin/Hadoop namenode –format

5.啟動hadoop服務程序

bin/start-all.sh

停用hadoop服務程序

bin/stop-all.sh

檢視程序狀态

jps

會列出啟動的服務以及程序id

6.驗證Hadoop是否安裝成功,都能檢視,說明Hadoop已經安裝成功

http://localhost:50030 (MapReduce的Web頁面)

http://localhost:50070 (HDFS的Web頁面)

7.單獨啟動服務

DFS(start-dfs.sh)

MapReduce(start-mapred.sh)

8.運作測試程式

(0)echo “Hello world hadoop” >>~/file1

(1)bin/hadoop fs -mkdir /tmp/input                   建立目錄

(2)bin/hadoop fs –put ~/file1 /tmp/input        将檔案輸出到建立目錄下

(3)bin/hadoop jar hadoop-examples-1.1.2.jar wordcount /tmp/input /tmp/out      注意輸出路徑不能已經存在,否則報錯

(4)http://localhost:50030檢視已經運作的任務

9.重新開機伺服器後處理,(未作随機啟動)

(1)啟動ssh:service sshd start

(2)啟動hadoop服務:bin/start-all.sh