【Hadoop 分布式部署 五:分布式部署之分發、基本測試及監控】
1.對 hadoop 進行格式化
到 /opt/app/hadoop-2.5.0 目錄下 執行命令: bin/hdfs namenode -format
執行的效果圖如下 ( 下圖成功 格式化 不要沒事格式化 )
2.啟動dfs
執行命令(在 /opt/app/hadoop-2.5.0/目錄下): sbin/start-dfs.sh
執行之後的效果就如下圖 (可以看到 3個DataNode已經啟動起來了,NameNode 和 secondarynamenode 也已經啟動起來了)
然後在分別上這三臺機器上查看一下啟動情況
節點一(hadoop-senior.zuoayn.com)
節點二 (hadoop-senior02.zuoyan.com)
節點三(Hadoop-senior03.zuoyan.com)
可以看到 每個節點上執行的任務 都是我們當時設計的,我的這種情況是比較幸運的沒有出現什麽錯誤,都啟動起來了,但是有的時候會出現
:Temporary failure in name resolutionop-senior02.zuoyan.com
:Temporary failure in name resolutionop-senior.zuoyan.com
出現這個原因是因為 拷貝虛擬機出現的問題 出現這種情況的原因 就是域名解析問題 機器重啟 ,還有另一種方式解決
就是到每個機器上單獨去啟動 使用命令 :sbin/hadoop-daemon.sh start datanode
通過瀏覽器打開查看一下啟動情況:
輸入網址:http://hadoop-senior.zuoyan.com:50070(這裏也就是第一個主機的ip地址,因為我映射到了windows的hosts中,所以也能通過這個主機名訪問)
點擊主頁的 LiveNodes 就可以看見如下的界面
這個界面上顯示的就是我們的節點
使用一些命令進行測試一下
創建目錄命令: bin/hdfs dfs -mkdir -p /user/beifeng/tmp/conf
上傳文件命令: bin/hdfs dfs -put /etc/hadoop/*.-site.xml /user/beifeng/tmp/conf
讀取文件命令: bin/hdfs dfs -text /user/beifeng/tmp/conf/core-site.xml (下圖就是成功的讀取出來了)
3.啟動yarn
(在/opt/app/hadoop-2.5.0 的目錄下 ) 使用命令: sbin/start-yarn.sh
在啟動yarn的時候我的出先了一個問題 就是resourcemanager 啟動不起來 不論是在 第一個節點上看,還是在第二個節點上看 都沒有resourcemanager
日誌信息如下
最終在開源中國上查找到了解決方案
Namenode和ResourceManger如果不是同一臺機器,不能在NameNode上啟動 yarn,應該在ResouceManager所在的機器上啟動yarn。
4.測試Mapreduce程序
首先創建一個目錄用來存放輸入數據 命令: bin/hdfs dfs -mkdir -p /user/beifeng/mapreduce/wordcount/input
上傳文件到文件系統上去 命令:bin/hdfs dfs -put /opt/modules/hadoop-2.5.0/wc.input /user/beifeng/mapreduce/wordcount/input
使用命令查看一下文件是否上傳成功 命令:bin/hdfs dfs -ls /user/beifeng/mapreduce/wordcount/input (可以看到wc.input 已經在這個目錄下)
完成準備工作之後 就開始使用 yarn 來運行wordcount 程序
命令: bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar wordcount /user/beifeng/mapreduce/wordcount/input /user/beifeng/mapreduce/wordcount/output
程序已經開始在機器上運行了
從WEB頁面上看到的效果
最後在使用hdfs 的命令來查看一下 wordcount 統計的結果 命令 :bin/hdfs -dfs -text /user/beifeng/mapreduce/wordcount/output/part*
到此 配置結束,但是剩下的還有 環境問題解決 和 集群基礎測試
【Hadoop 分布式部署 五:分布式部署之分發、基本測試及監控】