Hadoop僞分布式安裝
- 版本選擇2.7.X,我選擇的是2.7.3
- 安裝過程
- 安裝前準備
(1)上傳解壓
(2)檢視目錄結構(删除以下檔案)
bin/*.cmd
sbin/*.cmd
share/doc
(3)修改3個子產品的環境變量,修改JAVA_HOME的值為jdk的安裝路徑
hadoop-env.sh(23行)
yarn-env.sh(26行)
mapred-env.sh(16行,需要先取消注釋再修改)
給三個檔案增加執行權限
chmod u+x hadoop-env.sh yarn-env.sh mapred-env.sh
-
按照子產品來進行配置
Hadoop官網有部配置設定置資訊,但是不全http://hadoop.apache.org/docs/r2.7.6/hadoop-project-dist/hadoop-common/SingleCluster.html#Pseudo-Distributed_Operation
(1)common(在Hadoop安裝目錄的/etc/hadoop下)
修改core-site.xml檔案
可以将原有的注釋都删掉,配置如下圖,将local更改為自己的主機名,在Hadoop目錄下建立自己的臨時目錄
Hadoop安裝配置之僞分布式安裝 (2)HDFS
修改hdfs-site.xml檔案
Hadoop安裝配置之僞分布式安裝 slaves
修改slaves檔案
Hadoop安裝配置之僞分布式安裝 啟動HDFS:
第一次使用檔案系統需要格式化
->格式化檔案系統
先切換到Hadoop安裝的根目錄下
bin/hdfs namenode -format
->啟動主節點Hadoop安裝配置之僞分布式安裝
->啟動從節點sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
檢查成功的兩種方式
a、Hadoop安裝目錄下輸入jps(或 ps -ef|grep java)
Hadoop安裝配置之僞分布式安裝 b、通過webUI界面檢視(看到以下界面為成功)
hostname:50070
Hadoop安裝配置之僞分布式安裝 (3)配置YARN
修改yarn-site.xml
->啟動主節點Hadoop安裝配置之僞分布式安裝
->啟動從節點sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager
檢查成功的兩種方式
a、jps(ps -ef|grep java)
Hadoop安裝配置之僞分布式安裝 b、webUI界面檢視
hostname.8088
Hadoop安裝配置之僞分布式安裝 (4)配置MapReduce
etc目錄下沒有mapred-site.xml檔案,但是有mapred-site.xml.template檔案,需要将mapred-site.xml.template檔案指派一份到目前檔案夾,且檔案名為mapred-site.xml
先切換到Hadoop安裝目錄下的etc/hadoop下
然後:cp mapred-site.xml.template mapred-site.xml
修改mapred-site.xml檔案
Hadoop安裝配置之僞分布式安裝 測試HDFS
幫助文檔
bin/hdfs dfs
HDFS檔案系統目錄和Linux目錄結構類似,
指令也類似
建立目錄:
檢視目錄:bin/hdfs dfs -mkdir /datas
上傳檔案:bin/hdfs dfs -ls /datas
檢視檔案内容:bin/hdfs dfs -put /opt/datas/input.data /datas/
下載下傳檔案:bin/hdfs dfs -text /datas/input.data bin/hdfs dfs -cat /datas/input.data
删除檔案bin/hdfs dfs -get /datas/input.data ./
bin/hdfs dfs -rm -r /datas/input.data
MapReduce
并行資料處理架構
spark
基于記憶體分布式處理架構
storm/flink
實時流式處理架構
TeZ
分析資料,比MapReduce速度快
mapreduce程式運作在YARN上
通過經典程式案例,wordcount,
Hadoop提到測試案例在share/mapreduce目錄下
/opt/modules/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar
-》準備資料,資料是放到hdfs上
在HDFS系統下建立一個datas目錄
bin/hdfs dfs -mkdir /datas
準備一個檔案,檔案内容可以随意添加單詞或字元,完了儲存,将該檔案上傳到HDFS上
切換到Hadoop的安裝目錄下上傳檔案
bin/hdfs dfs -put /opt/datas/input.data /datas/
在http://bigdata-hpsk02.huadian.com:50070下檢視結果
-》送出運作Hadoop安裝配置之僞分布式安裝
hostname.8088能夠看到結果bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /datas/input.data /output1
Hadoop安裝配置之僞分布式安裝 Hadoop安裝配置之僞分布式安裝 點選上圖的history後會找不到頁面,需要配置曆史伺服器Hadoop安裝配置之僞分布式安裝 進行運算的是mapred-site.xml,是以曆史伺服器在mapred-site.xml中進行配置,增加以下的配置
單擊上圖中标出的1,會報錯,還應該配置日志内聚功能,因為m、MapReduce運作在YARN之上,是以日志内聚應該在yarn-site.xml檔案中進行配置
啟動曆史伺服器<property> <name>mapreduce.jobhistory.address</name> <value>bigdata-hpsk02.huadian.com:10020</value> </property>
sbin/mr-jobhistory-daemon.sh start historyserver
Hadoop安裝配置之僞分布式安裝 注意:在啟動historyServer服務之前運作的job相關資訊已經沒了,隻有後面運作的才有。
成功後再執行一次詞頻統計測試,單擊history能夠進入以下頁面,端口号為19888
Hadoop安裝配置之僞分布式安裝 當MapReduce程式在YARN上運作完成之後,将産生日志檔案上傳到HDFS目錄中,以便後續檢視。
這樣,整個僞分布式Hadoop環境就搭建好了
·<!--日志集聚功能--> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property>
<!--日志存儲的時間1周 60minutes*60seconds*24hours*7days=604800--> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property>