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安裝步驟指導