- 前言:搭建期間各種踩坑,本教程基本上能解決Hadoop偽分布式集群搭建以及Hadoop-eclipse-plugin插件使用的各種坑
- 歡迎帶原文鏈接進(jìn)行轉(zhuǎn)載:http://www.lxweimin.com/p/59fe6cdba293
搭建環(huán)境
- 系統(tǒng):Centos7.5
- Hadoop版本:Hadoop-2.8.5
- JDK版本:jkd1.8
- Eclipse版本:Version: 2018-09 (4.9.0)
- Hadoop-eclipse-plugin插件版本:2.8.5
- 插件額外需要的文件:hadoopbin_for_hadoop2.8.5.zip
所有資源下載鏈接:https://download.csdn.net/download/qq_40702317/10780754
一:關(guān)閉系統(tǒng)防火墻以及開放安全組端口(云服務(wù)器必須)
- 1.關(guān)閉防火墻
Centos6下:
service iptables stop;#立即關(guān)閉防火墻,但是重啟后失效。
service iptables start;#立即開啟防火墻,但是重啟后失效。
chkconfig iptables on;#開啟防火墻,重啟后生效
chkconfig iptables off;#關(guān)閉防火墻,重啟后生效Centos7下:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機(jī)啟動
- 2.開放安全組,網(wǎng)上教程非常多
貼心小提示:
用云服務(wù)器搭建的話,很容易遭到黑客攻擊,利用Hadoop的漏洞攻擊服務(wù)器,讓我們的服務(wù)器給他們挖礦,建議配置安全組時,僅允許自己的ip進(jìn)行訪問,當(dāng)然在搭建Hadoop集群時,就需要單獨(dú)配置給每臺服務(wù)器公網(wǎng)ip訪問的權(quán)限
二:配置主機(jī)名
Centos6下:
vim /etc/sysconfig/network 修改文件內(nèi)容
source /etc/sysconfig/network 使修改生效
- 修改內(nèi)容如下:
NETWORKING=yes
HOSTNAME=hadoop01
Centos7下:
vim /etc/hostname
修改內(nèi)容為主機(jī)名,修改后重啟系統(tǒng)(可以等下面講解的配置全部修改完成之后進(jìn)行重啟)
三:修改hosts
vim /etc/hosts
以云服務(wù)器為例
增加內(nèi)容為:本機(jī)私網(wǎng)ip 主機(jī)名
- 特別注意:如果是本機(jī)映射,只能填本機(jī)私網(wǎng)ip,如果是其他云服務(wù)器,則填寫其他云服務(wù)器的公網(wǎng)ip地址加主機(jī)名,不然無法啟動namenode
四:配置免密登錄
ssh-keygen
ssh-copy-id [user]@[host]
五:安裝jdk以及Hadoop
tar -xf hadoop-2.8.5.tar.gz -C /home/software
tar -xf jdk-8u181-linux-x64.tar.gz -C /home/software
六:配置環(huán)境變量
vim /etc/profile
- 增加內(nèi)容:
export JAVA_HOME=/home/software/jdk1.8.0_181
export HADOOP_HOME=/home/software/hadoop-2.8.5
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin- source /etc/profile 使配置生效
七:配置Hadoop
- ①.進(jìn)入配置文件目錄
cd /home/software/hadoop-2.8.5/etc/hadoop
- ②.修改Hadoop啟動所需的jdk環(huán)境目錄
vim hadoop-env.sh
修改內(nèi)容為:export JAVA_HOME=/home/software/jdk1.8.0_181
- ③vim core-site.xml 修改內(nèi)容如下
<configuration> <property> <!--用來指定hdfs的老大,namenode的地址--> <name>fs.defaultFS</name> <value>hdfs://miracle01:9000</value> </property> <property> <!--用來指定hadoop運(yùn)行時產(chǎn)生文件的存放目錄--> <!--如果不配置,默認(rèn)放在/tmp目錄下,這是一個臨時目錄,數(shù)據(jù)>可能會被系統(tǒng)清除--> <name>hadoop.tmp.dir</name> <value>/home/software/hadoop-2.8.5/tmp</value> </property> </configuration> 歡迎帶原文鏈接進(jìn)行轉(zhuǎn)載:http://www.lxweimin.com/p/59fe6cdba293
④vim hdfs-site.xml 修改內(nèi)容如下
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.client.use.datanode.hostname</name> <value>true</value> </property> <property> <name>dfs.datanode.use.datanode.hostname</name> <value>true</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration> 歡迎帶原文鏈接進(jìn)行轉(zhuǎn)載:http://www.lxweimin.com/p/59fe6cdba293
⑤vim mapred-site.xml 修改內(nèi)容如下
- 注意:在/etc/hadoop的目錄下,只有一個mapred-site.xml.template文件,復(fù)制一個
cp mapred-site.xml.template mapred-site.xml<configuration> <property> <!--指定mapreduce運(yùn)行在yarn上--> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> 歡迎帶原文鏈接進(jìn)行轉(zhuǎn)載:http://www.lxweimin.com/p/59fe6cdba293
⑥vim yarn-site.xml 修改內(nèi)容如下
<configuration> <property> <!--指定yarn的老大resourcemanager的地址--> <name>yarn.resourcemanager.hostname</name> <value>miracle01</value> </property> <property> <!--NodeManager獲取數(shù)據(jù)的方式--> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> 歡迎帶原文鏈接進(jìn)行轉(zhuǎn)載:http://www.lxweimin.com/p/59fe6cdba293
⑦vim slaves 配置主從節(jié)點(diǎn),因?yàn)槭莻畏植际?只需要配置當(dāng)前主機(jī)名
miracle01
⑧reboot 重啟
⑨hadoop namenode -format 格式化namenode存儲路徑
本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
⑩start-all.sh 啟動Hadoop
1.查看是否啟動成功
本文鏈接:http://www.lxweimin.com/p/59fe6cdba293- 2.如果啟動失敗,查看Hadoop安裝目錄下的logs目錄中的報錯信息,根據(jù)報錯信息排錯
3.如果啟動成功,瀏覽器訪問,出現(xiàn)如下界面代表成功
訪問地址 : 云服務(wù)器公網(wǎng)ip:50070端口
本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
七:使用Hadoop-eclipse-plugin插件
1.下載Hadoop-eclipse-plugin.jar,把jar包放到Eclipse安裝目錄下的plugins下,然后重啟Eclipse
2.解壓Hadoop-2.8.5.tar.gz到本機(jī)電腦
本人目錄:D:\Java\eclipsejee201809\Needs\hadoop-2.8.5
- 3.配置本機(jī)電腦的環(huán)境變量:
HADOOP_USER_NAME=root
HADOOP_HOME=D:\Java\eclipsejee201809\Needs\hadoop-2.8.5
PATH=%HADOOP_HOME%\bin
- 4.云服務(wù)修改hdfs存儲文件的權(quán)限
hadoop fs -chmod 777 /
- 5.開啟Eclipse,配置插件,詳細(xì)看圖
第一步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
第二步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
第三步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
第四步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
第五步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
第六步:本文鏈接:http://www.lxweimin.com/p/59fe6cdba293
- 6.導(dǎo)入插件額外需要的文件,解壓hadoopbin_for_hadoop2.8.5.zip,導(dǎo)入到本機(jī)Hadoop根目錄的bin目錄下,有的電腦還需要把hadoop.dll放到系統(tǒng)盤下的C:\Windows\System32目錄下
插件所需文件
- 7.修改本機(jī)電腦的hosts文件
云服務(wù)器公網(wǎng)ip 云主機(jī)名
188.131.147.117 miracle01
- 巨坑解釋:因?yàn)槲覀兡脭?shù)據(jù)時,先請求到namenode中,namenode返回的是datanode的地址,但是datanode注冊的地址是服務(wù)器的私網(wǎng)ip,我們本身電腦是無法訪問私網(wǎng)ip的,就算是返回的是注冊時使用的是主機(jī)名,在我們電腦里也沒有進(jìn)行映射,所以我們需要在自己電腦的hosts文件下進(jìn)行映射
- 8.如果提示權(quán)限問題
在云服務(wù)器執(zhí)行命令:hadoop fs -chmod 777 /
- 9.連接成功后就可以用插件進(jìn)行操作了
本文鏈接:http://www.lxweimin.com/p/59fe6cdba293