僞分佈式模式下,Hadoop將全部進程運行於同一臺主機上,但此時Hadoop將使用分佈式文件系統,並且各jobs也是由JobTracker服務管理的獨立進程。同時,因爲僞分佈式的Hadoop集羣只有一個節點,所以HDFS的塊複製將限制爲單個副本,其secondary-master和slave也都將運行於本地主機。此種模式除了並不是真正意義的分佈式以外,其程序執行邏輯徹底相似於徹底分佈式,所以,經常使用於開發人員測試程序執行。html
hadoop的配置共有四種級別:集羣、進程、做業和單獨操做,前兩類由集羣管理員負責配置,後面的兩類則屬於程序員的工做範疇。java
hadoop的配置文件位於conf目錄中,其中的core-site.xml、mapred-site.xml和hdfs-site.xml三個配置文件最爲關鍵。core-site.xml用於配置hadoop集羣的特性,它做用於所有進程及客戶端,mapred-site.xml配置mapreduce集羣的工做屬性,hdfs-site.xml配置hdfs集羣的工做屬性。node
另外還有三個配置文件須要留意。hadoop-env.sh是Hadoop的多個腳本執行時source的配置信息,其用於爲Hadoop指定運行時使用的JDK、各進程的JDK屬性、PID文件及日誌文件的保存目錄等。masters則用於指定輔助名稱節點(SecondaryNameNode)的主機名或主機地址,slaves用於指定各從服務器(TaskTracker或DataNode)的主機名或主機地址。對僞分佈式的Hadoop集羣來說,這些節點均爲本機。程序員
1、JDK安裝與配置apache
詳情請見:http://www.cnblogs.com/zhangwenjing/p/3580726.html服務器
2、Hadoop安裝與配置ssh
一、Hadoop下載與安裝分佈式
地址:http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gzoop
使用wget命令下載:wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gz測試
解壓縮:tar -zxvf hadoop-2.3.0.tar.gz
重命名:mv hadoop-2.3.0 hadoop
#vi ect/profile
HADOOP_PREFIX=/opt/hadoop
PATH=$HADOOP_PREFIX/bin:$PATH
export HADOOP_PREFIX PATH
執行環境配置:source /etc/profile
驗證:hadoop -version
二、Hadoop配置
Hadoop配置在hadoop/etc/hadoop下,做以下修改:
hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.7.0_51(JDK安裝目錄)
修改內存大小:export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS"
core-site.xml,作以下配置:
<configuration>
<!--NameNode的IP地址和端口-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
</property>
</configuration>
hdfs-site.xml,作以下配置(系統默認文件保存3份,因僞分佈模式,故改成1份):
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/datanode</value>
</property>
</configuration>
mapred-site.xml,作以下配置:
<configuration>
<property>
<name>mapreduce.jobtracker.address</name>
<value>localhost:9001</value>
</property>
</configuration>
hadoop2.0有了yarn因此原來的mapred配置都轉向yarn-site.xml文件中了,這裏也就指定yarn。
yarn-site.xml,爲方便,未進行配置。
core-site.xml配置參考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-common/core-default.xml
hdfs-site.xml配置參考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
mapred-site.xml配置參考:http://hadoop.apache.org/docs/r2.3.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml
yarn-site.xml配置參考:http://hadoop.apache.org/docs/r2.3.0/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
執行hadoop環境配置:source /opt/hadoop/etc/hadoop/hadoop-env.sh
因爲啓動hadoop需一遍遍輸入密碼,不方便,故設置ssh免密登錄本機
ssh-keygen -t rsa -P "" 輸入這個命令後一直回車就能夠了
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
切換到安裝目錄
格式化namenode:./bin/hadoop namenode –format
啓動hadoop:./sbin/start-all.sh設置ssh免密登錄本機
檢查進程是否啓動:jps
有以上內容說明已經啓動
hadoop資源管理頁面:http://localhost:8088
namenode節點信息:http://localhost:50070