參考官網(wǎng)說明
可以點(diǎn)擊getting started看最新版本
也可以看歷史版本瘦馍,比如2.9.2
步驟0,關(guān)防火墻
systemctl disable firewalld.service
重啟
注意,單機(jī)模式(不是偽分布式)也需要關(guān)防火墻,不然會(huì)卡住2分多鐘驶乾,顯示:
INFO jvm.JvmMetrics: Initializing JVM Metrics with processName=JobTracker, sessionId=
步驟1,配置ssh認(rèn)證
首先配置ssh的key認(rèn)證方式登錄(國內(nèi)喜歡叫作免密碼登錄):
ssh-keygen循签,然后一堆回車
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
ssh localhost
如果顯示命令提示符级乐,即成功,Ctrl+D退出即可
如果要求輸入密碼县匠,就沒有成功
步驟2风科,配置環(huán)境變量
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
可以把配置文件放入單獨(dú)的文件夾,比如在用戶目錄創(chuàng)建文件夾乞旦,然后讓hadoop認(rèn)識(shí)它:
export HADOOP_CONF_DIR=`pwd`
把hadoop文件夾中的默認(rèn)配置文件(etc/hadoop/*)復(fù)制過來
下面修改配置xml文件就可以在這文件夾中修改了贼穆,也可以保留多個(gè)不同文件夾的配置文件
步驟3,單機(jī)(standalone)運(yùn)行
先創(chuàng)建個(gè)文本文件兰粉,用于wordcount輸入:
vim input
然后運(yùn)行
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-x.y.z.jar wordcount input output
可以使用 cat output/* 看結(jié)果故痊,也可以用hadoop fs -cat output/*
最后三個(gè)參數(shù)不寫,就能顯示其他示例的名字
最后兩個(gè)參數(shù)不寫玖姑,就能顯示這個(gè)示例需要的參數(shù)
運(yùn)行前要?jiǎng)h除output文件夾愕秫,否則報(bào)錯(cuò)慨菱、停止,不會(huì)覆蓋的(保護(hù)計(jì)算結(jié)果)
步驟4戴甩,偽分布式(pseudo)運(yùn)行dfs分布式文件系統(tǒng)
修改core-site.xml和hdfs-site.xml符喝,參照官網(wǎng)
hadoop namenode -format
$HADOOP_HOME/sbin/start-dfs.sh
可以使用jps命令查看java進(jìn)程列表:
可以使用命令查看網(wǎng)頁是否準(zhǔn)備好:curl localhost:50070,沒報(bào)錯(cuò)就行
使用ifconfig查看ip地址等恐,可以使用同一臺(tái)或另一臺(tái)電腦打開http://<ip地址>:50070
可以在網(wǎng)頁上看到datanode正常運(yùn)行洲劣,可以看文件系統(tǒng)中的文件
為了運(yùn)行word count程序,先創(chuàng)建用戶目錄课蔬,上傳input文件
hadoop fs -mkdir -p .
hadoop fs -put input input
然后運(yùn)行
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-x.y.z.jar wordcount input output
查看結(jié)果:
hadoop fs -cat output/*
刪除結(jié)果:
hadoop fs -rm -r -f output
步驟5囱稽,偽分布式(pseudo)運(yùn)行yarn程序調(diào)度系統(tǒng)
從mapred-site.xml.template復(fù)制到mapred-site.xml
修改mapred-site.xml和yarn-site.xml
使用jps查看java進(jìn)程
使用本機(jī)或另一臺(tái)機(jī)器的瀏覽器查看http://<ip地址>:8088,就是yarn的管理主頁面
運(yùn)行程序:
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-x.y.z.jar wordcount input output
查看結(jié)果和刪除結(jié)果與之前命令也都一樣
步驟6二跋,關(guān)閉之前打開的服務(wù)
$HADOOP_HOME/stop-yarn.sh
$HADOOP_HOME/stop-dfs.sh
好了战惊,現(xiàn)在你已經(jīng)成功地運(yùn)行(并關(guān)閉)了hadoop環(huán)境!
備注扎即,沒有特別配置的情況下吞获,namenode和datanode等數(shù)據(jù)文件夾會(huì)放在/tmp/hadoop-<username>文件夾下,如果重啟系統(tǒng)之后谚鄙,/tmp文件夾沒有了各拷,就需要重新格式化namenode
如果namenode中有記錄的文件,就需要等待datanode匯報(bào)自己持有的文件闷营,所有文件準(zhǔn)備好烤黍,才會(huì)退出safemode,集群才可以使用傻盟,這種小測試環(huán)境可能需要半分鐘到兩分鐘速蕊,也可以嘗試使用命令強(qiáng)制退出safemode,hdfs dfsadmin -safemode leave娘赴,不過文件找不全就可能報(bào)錯(cuò)规哲;也可以使用hdfs dfsadmin -safemode get查看狀態(tài)
在namenode的頁面中可以查看startup情況,顯示safemode持續(xù)的時(shí)間