標籤:hadoop 檔案系統 namenode ssh jdk
轉載請註明出處:http://blog.csdn.net/l1028386804/article/details/45771619
1、安裝JDK(此處以安裝JDK1.6為例,具體安裝JDK的版本不限) (1)下載安裝JDK:確保電腦連網之後命令列輸入下面命令安裝JDK
sudo apt-get install sun-java6-jdk
(2)配置電腦Java環境:開啟/etc/profile,在檔案最後輸入下面內容
export JAVA_HOME = (Java安裝目錄)
export CLASSPATH = ".:$JAVA_HOME/lib:$CLASSPATH"
export PATH = "$JAVA_HOME/:PATH"
(3)驗證Java是否安裝成功
輸入 java -version ,輸出Java版本資訊即為安裝成功。
2、安裝配置SSH (1)下載安裝SSH:同樣在命令列輸入下面命令安裝SSH
sudo apt-get install ssh
(2)配置無密碼登入本機:在命令列輸入下面兩條命令
$ ssh-keygen -t rsa -P ‘‘ -f ~/.ssh/id_rsa
直接斷行符號,完成後會在~/.ssh/產生兩個檔案:id_rsa和id_rsa.pub;這兩個成對出現,類似鑰匙和鎖。
再把id_rsa.pub追加到授權key裡面(當前並沒有authorized_keys檔案)
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
(3)驗證SSH是否安裝成功
輸入 ssh localhost 。如果顯示本機登入成功就表明安裝成功。
3、關閉防火牆 $sudo ufw disable
注意:這步非常重要,如果不關閉,會出現找不到datanode的問題
4、安裝運行Hadoop(以0.20.2版本為例) (1)下載Hadoop:在http://www.apache.org/dyn/closer.cgi/hadoop/core/頁面上下載Hadoop。
(2)安裝配置Hadoop
單節點配置:
安裝單節點的Hadoop無需配置,在這種方式下,Hadoop被認作為一個單獨的Java進程。
偽分布配置:
偽分布的Hadoop是只有一個節點的叢集。在這個叢集中,電腦既是master也是slave,
即使 namenode也是datanode,既是jobtracker也是tasktracker。
配置的過程如下:
a、進入conf檔案夾修改下面的檔案。
Hadoop-env.sh中加入下面內容:
export JAVA_HOME = (JAVA安裝目錄)
core-site.xml檔案內容修改為下面內容:
<configuration> <!-- global properties --> <property> <name>hadoop.tmp.dir</name> <value>/home/liuyazhuang/tmp</value> </property> <!-- file system properties --> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> </configuration>
hdfs-site.xml檔案內容修改為下面內容:(replication預設為3,如果不修改,datanode少於三台就會報錯)
<configuration> <property> <name>fs.replication</name> <value>1</value> </property> </configuration>
mapred-site.xml檔案內容修改為下面內容:
<pre name="code" class="html"> <configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>
b、格式化Hadoop檔案系統,在命令列輸入命令: bin/hadoop namenode -format
多次格式化先刪除 /home/liuyazhuang/tmp(此目錄與core-site.xml中配置的目錄相同)這個檔案夾後在執行格式化操作,
c、啟動Hadoop,在命令列輸入命令: bin/start-all.sh
d、驗證Hadoop是否安裝成功,在瀏覽器中輸入下面網址,如果正常開啟說明安裝成功。
http://localhost:50030 (mapreduce的web頁面) http://localhost:50070 (hdfs的web頁面)
5、運行執行個體
(1)先在本地磁碟建立兩個輸入檔案 file01和file02 $echo "Hello World Bye World" > file01 $echo "Hello Hadoop Goodbye Hadoop" > file02
(2)在hdfs中建立一個input目錄:$hadoop fs -mkdir input
(3)將file01和file02拷貝到hdfs中: $hadoop fs -copyFromLocal /home/liuyazhuang/file0* input
(4)執行wordcount: $hadoop jar hadoop-0.20.2-examples.jar wordcount input output
(5)完成之後,查看結果 $hadoop fs -cat output/part-r-00000
export JAVA_HOME = /home/chuanqing/profile/jdk-6u13-linux-i586.zip_FILES/jdk1.6.0_13export CLASSPATH = ".:$JAVA_HOME/lib:$CLASSPATH"export PATH = "$JAVA_HOME/:PATH"export HADOOP_INSTALL=/home/chuanqing/profile/hadoop-0.20.203.0export PATH=$PATH:$HADOOP_INSTALL/binexport HADOOP_INSTALL=/home/zhoulai/profile/hadoop-0.20.203.0export PATH=$PATH:$HADOOP_INSTALL/bin
Hadoop之—— Linux搭建hadoop環境(簡化篇)