search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

[Hadoop]Hadoop安裝

安裝必要的套件(ssh、rsync、jdk)

sudo apt-get install openssh-server rsync sun-java6-jdk

設定 SSH 可以透過公鑰認證的方式來連線

ssh-keygen -t rsa
cd /home/使用者/.ssh/
cat id_rsa.pub >> authorized_keys

#測試ssh(需更改 /etc/hostname /etc/hosts)
ssh pc1#(hostname)

cd /home/使用者/.ssh/

#將建好的key移到其他子節點(子節點主機也要做ssh-keygen -t rsa來產生.ssh資料夾)
scp authorized_keys pc2:/home/使用者/.ssh/

下載Hadoop,並切換到Hadoop目錄

cd /home/使用者
wget http://apache.stu.edu.tw/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz
tar -zxvf hadoop-0.20.2.tar.gz
cd hadoop-0.20.2/

接下進行修改 Hadoop 的相關設定,首先修改 conf/masters(主要)

pc1

再來設定 conf/slaves(次要)

pc1
pc2

修改 conf/hadoop-env.sh 來設定 Hadoop 環境變數

export JAVA_HOME="/usr/lib/jvm/java-6-openjdk/"
export HADOOP_HOME="/home/johnson4932/hadoop/"
#如果要加入hbase的話需要加入相關設定
export HBASE_HOME="/home/johnson4932/hbase/"
export HADOOP_CLASSPATH="$HBASE_HOME/lib/:$HBASE_HOME/hbase-0.90.6.jar:$HADOOP_HOME/lib/"

接下來修改相關參數

conf/core-site.xml:


	
		hadoop.tmp.dir
		/home/johnson4932/hadoop/hadoop-${user.name}
		A base for other temporary directories.
	

	
		fs.default.name
		hdfs://pc1:9000
	

conf/hdfs-site.xml:


	
		dfs.replication
		1
		複本備份細數
	

conf/mapred-site.xml:


        
                mapred.job.tracker
                pc1:9001
        
        
                mapred.map.tasks
                3
                定義map會把任務分派給幾個節點
        

將Hadoop複製到其他子節點上

scp -r /home/使用者/hadoop-0.20.1 pc2:/home/使用者/

格式化一個新的分散式的檔案系統 HDFS

bin/hadoop namenode -format

啟動 Hadoop

bin/start-all.sh

接下來就打開網頁就會看到了「http://pc1:50070/」

由於 Hadoop 0.20.2 的 HDFS 檢查比較嚴謹,因此單機狀態下,會看到 http://pc1:50070 顯示Safe Mode is ON,代表 HDFS 目前是被封鎖住寫入權限,需等待至少 30 秒以後才會恢復正常。

測試:

移動到hadoop資料夾下

javac -classpath hadoop-0.20.2-core.jar -d MyJava WordCount.java #將WordCount.java編譯存到MyJava資料夾

jar -cvf wordcount.jar -C MyJava . #將MyJava包成jar,注意最後有一個 點 代表目前路徑

mkdir test_input #新建一個測資資料夾

echo "I like Cloud Course." > test_input/input1 #新增測資

bin/hadoop fs -put test_input input_hdfs #將測資丟進HDFS資料夾,input_hdfs自行命名

bin/hadoop fs -mkdir test #建立資料夾在HDFS裡

bin/hadoop fs -ls input_hdfs #確認有沒有成功放進HDFS裡

bin/hadoop jar wordcount.jar WordCount input_hdfs out/ #將jar檔裡的WordCount執行測資並把結果輸出到out資料夾裡

bin/hadoop fs -cat out/part-00000 #查看輸出,part從00000開始累加

bin/hadoop fs -rmr out (刪除out輸出資料夾)
Categories: HadoopLinux



熱門推薦

本文由 blogjohnsonluorg 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦