#hadoop#單機(僞分佈)安裝及測試


tips:這個部署徹底在以root用戶操做,系統爲ubuntu14.04,使用了Oracle JDK7_u55替換原來的OpenJDKhtml


安裝過程:java


安裝Java:node

從本身的宿主機ftp服務器下載包:linux

cd /usr/lib/jvm
wget ftp://192.168.42.110/jdk-7u55-linux-x64.tar.gz 
tar xvf jdk-7u55-linux-x64.tar.gz
mv jdk1.7.0_55/ java-7-sun


編輯bashrc:web

vi ~/.bashrc
#添加如下內容
export JAVA_HOME=/usr/lib/jvm/java-7-sun
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#source一下
source ~/.bashrc


由於還有一個默認的OpenJDK,須要進行設置,修改默認JDK爲剛剛安裝的Oracle JDK:docker

update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-sun/bin/java 300
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-sun/bin/javac 300
update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java-7-sun/bin/jar 300 
update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/java-7-sun/bin/javah 300 
update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/java-7-sun/bin/javap 300


執行:shell

update-alternatives --config java

出現如下提示:ubuntu

root@docker:/usr/lib/jvm# update-alternatives --config java 
There are 2 choices for the alternative java (providing /usr/bin/java).
  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
  1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
* 2            /usr/lib/jvm/java-755-sun/bin/java               300       manual mode
Press enter to keep the current choice[*], or type selection number:

根據本身的狀況選擇,輸入相應的數字便可。bash


測試成功:服務器

root@docker:/usr/lib/jvm# java -version
java version "1.7.0_55"
Java(TM) SE Runtime Environment (build 1.7.0_55-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)


安裝SSH:

apt-get install ssh

嘗試ssh本地,若是須要密碼,則要設置對本地的無密碼登錄:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys


安裝rsync:

apt-get install rsync


配置Hadoop:

tar -xvf  hadoop-1.0.3.tar.gz
cd hadoop-1.0.3


編輯conf/hadoop-env.sh文件,修改這個export的內容:

# export JAVA_HOME=/usr/lib/j2sdk1.5-sun(原內容)
export JAVA_HOME=/usr/lib/jvm/java-7-sun


修改conf/core-site.xml:

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>


修改conf/hdfs-site.xml:

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/work/hadoop_tmp</value>
</property>
</configuration>


修改conf/mapred-site.xml:

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>


格式化namenode:

bin/hadoop namenode –format


啓動並檢查運行情況:

#運行
bin/start-all.sh
#檢查狀態
jps
#輸出     
5146 Jps
4538 TaskTracker
4312 JobTracker
4015 DataNode
4228 SecondaryNameNode
3789 NameNode

若能正確顯示狀態,即運行正確。


測試使用:


【1】web接口:

http://localhost:50030 

能夠查看JobTracker的運行狀態


http://localhost:50060 

能夠查看TaskTracker的運行狀態


http://localhost:50070 

能夠查看NameNode以及整個分佈式文件系統的狀態,瀏覽分佈式文件系統中的文件以及log等。


【2】使用附帶hadoop1.0.3目錄裏的wordcount程序測試下:

先在本地磁盤創建兩個輸入文件file01 和 file02: 

echo "Hello World Bye World" > file01  
echo "Hello Hadoop Goodbye Hadoop" > file02

在hdfs 中創建一個input目錄:

hadoop fs –mkdir input

將file01 和 file02 拷貝到hdfs中:  

hadoop fs –copyFromLocal file0* input

執行wordcount:  

hadoop jar hadoop-examples-1.0.3.jar wordcount input output

完成以後,查看結果:

bin/hadoop fs -ls        #查看已有的文件列表

hadoop fs -cat output/part-r-00000      #查看結果

結果爲:可見把單詞都統計了

Bye 1  
Goodbye 1 
Hadoop 2 
Hello 2 
World 2



參考資料:

Hadoop僞分佈安裝過程:Hadoop單機環境搭建指南(ubuntu)

http://www.aboutyun.com/thread-6487-1-1.html


集羣安裝完畢,該如何測試和使用集羣-hadoop單機(僞分佈) 

http://www.aboutyun.com/thread-6777-1-1.html


雲技術基礎:集羣搭建SSH的做用及這些命令的含義

http://www.aboutyun.com/thread-6977-1-1.html


Linux系統下位(Ubuntu 11.04) 下安裝配置 JDK 7安裝步驟指導

http://www.aboutyun.com/thread-6750-1-1.html

相關文章
相關標籤/搜索