一、環(huán)境說明:
VmWare兩臺虛擬機蕴坪,各安裝CentOS6.5锦庸,部署單Master單Slave結(jié)構(gòu)的Hadoop集群。
二闰非、下載JDK與hadoop安裝包
jdk-8u92-linux-x64.gz
hadoop-2.7.4.tar.gz
三膘格、修改系統(tǒng)hosts文件(兩臺機器):
使用管理員執(zhí)行編輯
sudo vi /etc/hosts
添加以下內(nèi)容
192.168.76.128? hd01
192.168.76.129? hd02
保存退出
修改系統(tǒng)hostname,以root身份
vi /etc/sysconfig/network
將兩臺虛機hostname分別改為hd01财松、hd02后保存瘪贱。
重啟虛機使hostname生效∮卧溃或者不重啟使用hostname hd01政敢、hostname hd02設(shè)置其徙。
四胚迫、設(shè)置SSH互信
在每臺服務(wù)器上執(zhí)行:
創(chuàng)建hadoop用戶
useradd hadoop
在每臺機器上切換到hadoop用戶執(zhí)行以下命令
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa (一路回車)
ssh-keygen -t dsa(一路回車)
cd /home/hadoop/.ssh
cat *.pub >authorized_keys
在hd02上執(zhí)行:
cd ~/.ssh
scp authorized_keys hd01:/home/hadoop/.ssh/hd02_keys
chmod 644 authorized_keys
在hd01上執(zhí)行:
cd /home/hadoop/.ssh
cat hd02_keys >> authorized_keys
再將認證文件拷貝到hd02機器上:
scp ./authorized_keys hd02:/home/hadoop/.ssh/
chmod 644 authorized_keys
測試免密登錄是否設(shè)置成功:
在hd01執(zhí)行ssh hd02
在hd02執(zhí)行ssh hd01
五、安裝JDK
將jdk安裝包上傳至服務(wù)器hd01唾那、hd02访锻,在每臺服務(wù)器上解壓。
本人解壓位置/data/jdk.18
切換到hadoop用戶闹获,編輯用戶文件
vi ~/.bash_profile,修改內(nèi)容如下:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
JAVA_HOME=/data/jdk1.8
PATH=$JAVA_HOME/bin:$PATH:$HOME/bin
export PATH JAVA_HOME
保存退出期犬。
source ~/.bash_profile 使配置生效
java -version 查看jdk版本是否正確
六、解壓Hadoop安裝包
將Hadoop安裝包解壓到/data/hadoop/hadoop-2.7.4目錄下
將/data/hadoop目錄的擁有者改為hadoop
進入hadoop目錄避诽,cd /data/hadoop/hadoop-2.7.4
之后龟虎,依次執(zhí)行以下命令
mkdir tmp
mkdir hdfs
cd hdfs
mkdir data
mkdir name
七、修改etc/hadoop下的core-site.xml內(nèi)容如下:
fs.defaultFS
hdfs://hd01:9000
hadoop.tmp.dir
file:/data/hadoop/hadoop-2.7.4/tmp
io.file.buffer.size
131702
八沙庐、修改etc/hadoop下的hdfs-site.xml內(nèi)容如下
最后一個配置項關(guān)閉了hdfs的權(quán)限鲤妥,開發(fā)環(huán)境可以佳吞,生產(chǎn)環(huán)境務(wù)必要使用權(quán)限體系。
dfs.namenode.name.dir
file:/data/hadoop/hadoop-2.7.4/hdfs/name
dfs.datanode.data.dir
file:/data/hadoop/hadoop-2.7.4/hdfs/data
dfs.replication
2
dfs.namenode.secondary.http-address
hd02:9001
dfs.webhdfs.enabled
true
dfs.permissions.enabled
false
九棉安、etc/hadoop下復(fù)制一份mr配置文件mv mapred-site.xml.templatemapred-site.xml
修改mapred-site.xml內(nèi)容如下:
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
hd01:10020
mapreduce.jobhistory.webapp.address
hd01:19888
十底扳、修改etc/hadoop下的yarn-site.xml文件內(nèi)容如下:
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.address
hd01:8032
yarn.resourcemanager.scheduler.address
hd01:8030
yarn.resourcemanager.resource-tracker.address
hd01:8031
yarn.resourcemanager.admin.address
hd01:8033
yarn.resourcemanager.webapp.address
hd01:8088
十一、修改etc/hadoop下的slaves文件贡耽。刪除localhost行衷模。添加:
192.168.76.129
十二、修改etc/hadoop目錄下hadoop-env.sh蒲赂、yarn-env.sh的JAVA_HOME
export JAVA_HOME=/data/jdk1.8
十三阱冶、將hd01上配置好的hadoop傳輸?shù)剿衧lave節(jié)點上:
scp -r /data/hadoop/hadoop-2.7.4 hd02:/data/hadoop
十四、格式化hadoop
切換到hadoop用戶滥嘴,執(zhí)行命令前熙揍,確保jdk已經(jīng)正確配置到系統(tǒng)path中。
切換到/data/hadoop/hadoop-2.7.4目錄氏涩,執(zhí)行命令
bin/hdfs namenode -format
十五届囚、啟動hadoop
cd /data/hadoop/hadoop-2.7.4/sbin
./start-all.sh 啟動全部服務(wù),當然是尖,也可以使用獨立的shell命令啟動單獨的服務(wù)意系。
啟動完畢后,使用jps命令查看啟動的hadoop服務(wù)
另外饺汹,停止命令:
./stop-all.sh
十六蛔添、官方控制臺: