前言:本文主要介紹如何在阿里云平臺(tái)上搭建偽分布式集群并在本地使用eclipse對(duì)分布式集群(HDFS)進(jìn)行連接浙值。
搭建環(huán)境
CentOS Linux release 7.3
JDK:JDK 1.8
Hadoop 版本 : 2.7.3
hadoop-eclipse-plugin版本 :2.7.0
另外在本地eclipse上還需將Hadoop壓縮包解壓到本地后將其中/bin目錄下內(nèi)容替換添加資源鏈接為:winutils下載鏈接地址
一跨扮、關(guān)閉云服務(wù)器防火墻并開放安全組
1.關(guān)閉防火墻
Centos7下:
systemctl stop firewalld.service #停止
firewallsystemctl disable firewalld.service #禁止firewall開機(jī)啟動(dòng)
2.開放安全組
不同云平臺(tái)管理安全組的方法略有不同去云平臺(tái)上找一下就能找到希坚,根據(jù)自己的需要設(shè)置自己的安全組试幽。
二氏义、更新apt
用戶登錄后,我們先更新一下 apt窗慎,后續(xù)我們使用 apt 安裝軟件物喷,如果沒更新可能有一些軟件安裝不了。在命令行界面中執(zhí)行如下命令:
sudo apt-get update
三遮斥、安裝配置SSH免密鑰登陸
Hadoop集群峦失、單節(jié)點(diǎn)模式都需要用到 SSH 登陸(類似于遠(yuǎn)程登陸,你可以登錄某臺(tái) Linux 主機(jī)术吗,并且在上面運(yùn)行命令)殷勘,Ubuntu 默認(rèn)已安裝了 SSH client畔乙,此外還需要安裝 SSH server:
sudo apt-get install openssh-server
安裝后就可以使用ssh命令連接了但是每次連接都需要密碼因此我們需要設(shè)置免密鑰登陸川尖。使用如下命令就可設(shè)置免密鑰登陸筋岛。
cd ~/.ssh/? ? ? ? ? ? ? ? ? ? ? ?# 若沒有該目錄,請(qǐng)先執(zhí)行一次ssh localhost
ssh-keygen -t rsa? ? ? ? ? ? ? ?# 會(huì)有提示隘蝎,都按回車就可以
cat ./id_rsa.pub >> ./authorized_keys? ? ?# 加入授權(quán)
現(xiàn)在再使用ssh命令就不需要密碼了购啄。
四、安裝Java
這個(gè)網(wǎng)上資料很多就不再贅述了嘱么。
五狮含、修改hostname配置文件
sudo vim /etc/hosts? ? ? ?#打開hosts文件
打開以后向文件中新增如下內(nèi)容:
172.19.164.141 iZuf5rg9howgicjgr5o4vfZ? #私有IP? ? 主機(jī)名
注意:在云上需要使用私有IP否則Hadoop啟動(dòng)后找不到namenode
六、安裝Hadoop
在將Hadoop安裝包傳送到服務(wù)器上后使用如下命令:
cd ~
sudo tar -zxf ~/Downloads/hadoop-2.7.1.tar.gz -C /usr/local? ?# 解壓到/usr/local中
cd /usr/local/
sudo mv ./hadoop-2.7.1/ ./hadoop? ? ? ? ? ? ? ? ? ? ?# 將文件夾名改為hadoop
sudo chown -R usrname:usrname ./hadoop? ? ? # 修改文件權(quán)限
Hadoop 解壓后可以使用如下命令檢測(cè)其是否可用
cd /usr/local/hadoop
./bin/hadoop version
可以看到Hadoop版本則說(shuō)明安裝成果
七、配置偽分布式集群
修改配置文件?core-site.xml
vim /usr/local/hadoop/etc/hadoop/core-site.xml
添加如下內(nèi)容:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://172.19.164.141:9000</value>
</property>
</configuration>
其中IP地址依舊為云服務(wù)器的私網(wǎng)地址几迄。
修改配置文件?hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name> <value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
配置完成后需要對(duì)namenode進(jìn)行初始化
cd /usr/local/hadoop
./bin/hdfs namenode -format
但需要注意若一次配置沒配置好修改配置文件內(nèi)容后再次配置時(shí)可能會(huì)出現(xiàn)namenode或datanode等無(wú)法啟動(dòng)的問(wèn)題蔚龙。直接重新安裝配置Hadoop就好了(最暴力的解決方法也可根據(jù)具體問(wèn)題去修改配置文件)。
接下來(lái)啟動(dòng)下Hadoop服務(wù)看看是否安裝成果:
cd /usr/local/hadoop
./sbin/start-dfs.sh
八映胁、安裝 Hadoop-eclipse-plugin插件
1.下載Hadoop-eclipse-plugin.jar,把jar包放到Eclipse安裝目錄下的plugins下,然后重啟Eclipse木羹。
2.解壓Hadoop-2.7.3.tar.gz到本機(jī)電腦(這里建議路徑越簡(jiǎn)單越好)
3.將我們文章開頭提到的鏈接中的hadoop.dll和winutile.exe等文件放到解壓后Hadoop目錄的/bin目錄下。
4.右擊我的電腦-->屬性-->高級(jí)系統(tǒng)設(shè)置里面要配置三個(gè)屬性
(1)變量名:HADOOP_HOME?? 變量值:hadoop解壓后的路徑?
(2)變量名:HADOOP_USER_NAME? 變量值:hadoop(這個(gè)根據(jù)你云服務(wù)器上的用戶名而定)
(3)path屬性里添加一個(gè):%HADOOP_HOME%\bin
5.配置eclipse
完成以上操作后打開或重啟eclipse屿愚。點(diǎn)擊右上方標(biāo)志處選擇map/reduce汇跨。
然后點(diǎn)擊下方小象位置新建mapreduce鏈接务荆。
具體配置內(nèi)容如下圖所示妆距。
最后啟動(dòng)集群后我們就可以在eclipse中查看到HDFS上的文件了。
到這里我們就可以成功的連接上云端的HDFS了函匕。
最后分享一個(gè)編程環(huán)境配置的視頻: