繼 Hadoop2安裝——單機模式 http://my.oschina.net/mynote/blog/93340 java
首先須要安裝ssh 安裝略 node
ssh-keygen -t rsa一直按<Enter> 因爲不設置密碼,因此就一直回車就行。
測試: web
ssh localhost實際上是否必須使用ssh密碼設置?我也不太清楚,不少帖子都須要這步,但官方網上沒有這步。若是你有興趣能夠不操着這步試試,可能僞分佈模式不須要ssh密碼驗證。呵呵我也是菜鳥,也不太清楚。但ssh必定是要安的。
修改的文件都在/usr/local/hadoop-2.0.2-alpha/etc/hadoop下:
core-site.xml、hdfs-site.xml、yarn-site.xml 、mapred-site.xml. 四個文件
文件說明(略)
配置文件的添加和修改都在<configuration></configuration> 中 app
<property> <name>fs.defaultFS</name> <value>hdfs://127.0.0.1:9000</value> </property>
添加hdfs的指定URL路徑,因爲是僞分佈模式,因此配置的是本機IP ,可爲真實Ip、localhost。
官網上還提到io.file.buffer.size配置,因爲默認的比較小隻有4096,因此能夠安裝本身的需求改 131072(官方提供)。因爲我這裏只是作測試,配置越簡單越好。呵呵。 ssh
<property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop-2.0.2-alpha/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop-2.0.2-alpha/dfs/data</value> </property>主要是對namenode 和 datanode 存儲路徑的設置。其實默認是存儲在file://${hadoop.tmp.dir}/dfs/name和data 下的。因此這裏也不需配置的。但默認的是臨時文件,重啓就沒有了,因此我這裏仍是設置了專門的路徑保存。
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
好像hadoop2有了yarn因此原來的mapred配置都轉向yarn-site.xml文件中了,這裏也就指定yarn。同時這裏也能夠配置一些mapreduce.map.java.opts、mapreduce.reduce.java.opts等不少,固然我這裏仍是使用默認的。 webapp
爲了簡單,快速作測試,我仍是使用默認的。 分佈式
啓動的文件都是 sbin下,bin下的都是命令。若是你爲了方即可以把這兩個目錄添加到環境變量中去,這樣就能夠直接運行命令,而不用運行絕對路徑。配置環境變量略(我這裏仍是用絕對路徑)。 oop
切換到該安裝目錄下
首先格式化 namenode 測試
bin/hdfs namenode -format肯定不報錯,且出現
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at startos/192.168.0.101
************************************************************/
startos/192.168.0.101是個人計算機名和Ip spa
啓動namenode
sbin/hadoop-daemon.sh start namenode sbin/hadoop-daemon.sh start datanode運行測試
jps出現:
證實啓動成功,若是沒有出現DataNode或者NameNode,證實啓動沒有成功,能夠查看hadoop安裝目錄下的logs下的日誌記錄。
能夠使用sbin/hadoop-daemon.sh stop datanode(datanode)來關閉。
啓動Manage管理
sbin/yarn-daemon.sh start resourcemanager sbin/yarn-daemon.sh start nodemanager
運行測試
jps出現:
證實啓動成功 同時也能夠使用yarn-daemon.sh stop resourcemanager(nodemanager)來關閉。
若是沒有單獨配置yarn-site.xml中的yarn.resourcemanager.webapp.address,默認的端口8088 訪問
http://127.0.0.1:8088/ 就能夠訪問hadoop管理頁面
若是沒有單獨配置 hdfs-site.xml中的dfs.namenode.http-address,默認端口50070
http://127.0.0.1:50070 就能夠訪問namenode節點信息。
注:網上不少地方都說用start-dfs.sh、 start-yarn.sh能夠簡略上面的步驟,但我還想沒有成功,因此仍是老實點,strat-all.sh stop-all.sh都沒戲。
仍是同單機模式測試同樣建立要上傳的文件
mkdir input cd input echo "hello world" > test1.txt echo "hello hadoop" > test2.txt cd ..
把input目錄中的文件拷貝到dnfs上,並保存在in目錄中
bin/hadoop dfs -put input/ /in其中/in 中的/ 是hdfs下的目錄,好像不加/ 不能上傳。
|
|
bin/hadoop dfs -ls /in
就能夠查看到in文件夾下的兩個文件,同時也能夠經過http://127.0.0.1:50070 查看節點下的文件。
Ok 僞分佈式模式就在這裏,祝你好運。