Linux中安裝配置hadoop集群詳細(xì)步驟
一. 簡(jiǎn)介
參考了網(wǎng)上許多教程,最終把hadoop在ubuntu14.04中安裝配置成功。下面就把詳細(xì)的安裝步驟敘述一下。我所使用的環(huán)境:兩臺(tái)ubuntu 14.04 64位的臺(tái)式機(jī),hadoop選擇2.7.1版本。(前邊主要介紹單機(jī)版的配置,集群版是在單機(jī)版的基礎(chǔ)上,主要是配置文件有所不同,后邊會(huì)有詳細(xì)說(shuō)明)
二. 準(zhǔn)備工作
2.1 創(chuàng)建用戶
創(chuàng)建用戶,并為其添加root權(quán)限,經(jīng)過(guò)親自驗(yàn)證下面這種方法比較好。
sudo adduser hadoop sudo vim /etc/sudoers # 修改內(nèi)容如下: root ALL = (ALL)ALL hadoop ALL = (ALL)ALL
給hadoop用戶創(chuàng)建目錄,并添加到sudo用戶組中,命令如下:
sudo chown hadoop /home/hadoop # 添加到sudo用戶組 sudo adduser hadoop sudo
最后注銷當(dāng)前用戶,使用新創(chuàng)建的hadoop用戶登陸。
2.2 安裝ssh服務(wù)
ubuntu中默認(rèn)是沒(méi)有裝ssh server的(只有ssh client),所以先運(yùn)行以下命令安裝openssh-server。安裝過(guò)程輕松加愉快~
sudo apt-get install ssh openssh-server
2.3 配置ssh無(wú)密碼登陸
直接上代碼:執(zhí)行完下邊的代碼就可以直接登陸了(可以運(yùn)行ssh localhost進(jìn)行驗(yàn)證)
cd ~/.ssh # 如果找不到這個(gè)文件夾,先執(zhí)行一下 "ssh localhost" ssh-keygen -t rsa cp id_rsa.pub authorized_keys
注意:
這里實(shí)現(xiàn)的是無(wú)密登陸自己,只適用與hadoop單機(jī)環(huán)境。如果配置Hadoop集群設(shè)置Master與Slave的SSH無(wú)密登陸可以參考我的另一篇博文:http://m.fzitv.net/article/105483.htm
三. 安裝過(guò)程
3.1 下載hadoop安裝包
有兩種下載方式:
1. 直接去官網(wǎng)下載:
http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz
2. 使用wget命令下載:
3.2 配置hadoop
1. 解壓下載的hadoop安裝包,并修改配置文件。我的解壓目錄是(/home/hadoop/hadoop-2.7.1),即進(jìn)入/home/hadoop/文件夾下執(zhí)行下面的解壓縮命令。
tar -zxvf hadoop-2.7.1.tar.gz
2. 修改配置文件:(hadoop2.7.1/etc/hadoop/)目錄下,hadoop-env.sh,core-site.xml,mapred-site.xml.template,hdfs-site.xml。
(1). core-site.xml 配置:其中的hadoop.tmp.dir的路徑可以根據(jù)自己的習(xí)慣進(jìn)行設(shè)置。
<configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/home/hadoop/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
(2). mapred-site.xml.template配置:
<configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>
(3). hdfs-site.xml配置: 其中dfs.namenode.name.dir和dfs.datanode.data.dir的路徑可以自由設(shè)置,最好在hadoop.tmp.dir的目錄下面。
注意:如果運(yùn)行Hadoop的時(shí)候發(fā)現(xiàn)找不到j(luò)dk,可以直接將jdk的路徑放置在hadoop-env.sh里面,具體如下:
export JAVA_HOME="/opt/java_file/jdk1.7.0_79",即安裝java時(shí)的路徑。
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/home/hadoop/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/home/hadoop/hadoop/tmp/dfs/data</value> </property> </configuration>
配置完成后運(yùn)行hadoop。
四. 運(yùn)行hadoop
4.1 初始化HDFS系統(tǒng)
在hadop2.7.1目錄下執(zhí)行命令:
bin/hdfs namenode -format
出現(xiàn)如下結(jié)果說(shuō)明初始化成功。

4.2 開啟 NameNode 和 DataNode 守護(hù)進(jìn)程
在hadop2.7.1目錄下執(zhí)行命令:
sbin/start-dfs.sh
成功的截圖如下:

4.3 使用jps命令查看進(jìn)程信息:

若出現(xiàn)如圖所示結(jié)果,則說(shuō)明DataNode和NameNode都已經(jīng)開啟。
4.4 查看web界面
在瀏覽器中輸入 http://localhost:50070 ,即可查看相關(guān)信息,截圖如下

至此,hadoop的環(huán)境就已經(jīng)搭建好了。
五. 運(yùn)行wordcount demo
1. 在本地新建一個(gè)文件,里面內(nèi)容隨便填:例如我在home/hadoop目錄下新建了一個(gè)haha.txt文件,里面的內(nèi)容為" hello world! "。
2. 然后在分布式文件系統(tǒng)(hdfs)中新建一個(gè)test文件夾,用于上傳我們的測(cè)試文件haha.txt。在hadoop-2.7.1目錄下運(yùn)行命令:
# 在hdfs的根目錄下建立了一個(gè)test目錄 bin/hdfs dfs -mkdir /test # 查看HDFS根目錄下的目錄結(jié)構(gòu) bin/hdfs dfs -ls /
結(jié)果如下:

3. 將本地haha.txt文件上傳到test目錄中;
# 上傳 bin/hdfs dfs -put /home/hadoop/haha.txt /test/ # 查看 bin/hdfs dfs -ls /test/
結(jié)果如下:

4. 運(yùn)行wordcount demo;
# 將運(yùn)行結(jié)果保存在/test/out目錄下 bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /test/haha.txt /test/out # 查看/test/out目錄下的文件 bin/hdfs dfs -ls /test/out
結(jié)果如下:

運(yùn)行結(jié)果表示:運(yùn)行成功,結(jié)果保存在part-r-00000中。
5. 查看運(yùn)行結(jié)果;
# 查看part-r-00000中的運(yùn)行結(jié)果 bin/hadoop fs -cat /test/out/part-r-00000
結(jié)果如下:

至此,wordcount demo 運(yùn)行結(jié)束。
六. 總結(jié)
配置過(guò)程遇到了很多問(wèn)題,最后都一一解決,收獲很多,特此把這次配置的經(jīng)驗(yàn)分享出來(lái),方便想要配置hadoop環(huán)境的各位朋友~
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Linux 6 修改ssh默認(rèn)遠(yuǎn)程端口號(hào)的操作步驟
這篇文章主要介紹了Linux 6 修改ssh默認(rèn)遠(yuǎn)程端口號(hào)的操作步驟,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
centos最小化安裝系統(tǒng)后的基本調(diào)優(yōu)及安全設(shè)置
這篇文章主要介紹了centos最小化安裝系統(tǒng)后的一些基本調(diào)優(yōu)及安全設(shè)置,需要的朋友可以參考下2013-04-04
CentOS6.5環(huán)境安裝nginx服務(wù)器及負(fù)載均衡配置操作詳解
這篇文章主要介紹了CentOS6.5環(huán)境安裝nginx服務(wù)器及負(fù)載均衡配置操作,結(jié)合實(shí)例形式較為詳細(xì)的分析了CentOS6.5環(huán)境安裝nginx服務(wù)器及負(fù)載均衡配置具體步驟、命令與相關(guān)問(wèn)題解決方法,需要的朋友可以參考下2018-04-04
Ubuntu徹底卸載MySQL、Apache2和Php的方法教程
這篇文章主要給大家介紹了關(guān)于在Ubuntu系統(tǒng)下徹底卸載MySQL、Apache2和Php的方法教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起看看吧。2017-08-08
配置Linux服務(wù)器SSH 安全訪問(wèn)的四個(gè)小技巧
越來(lái)越多的站長(zhǎng),開始使用獨(dú)立主機(jī)(Dedicated Host)和 VPS。而為了節(jié)省成本或提高性能,不少人的獨(dú)機(jī)和 VPS,都是基于 unmanaged 的裸機(jī),一切都要自己 DIY。這時(shí)候,安全策略的實(shí)施,就猶為重要。2010-12-12
CentOS7 修改網(wǎng)卡名稱為eth0&在VMWare中添加多網(wǎng)卡配置
這篇文章主要介紹了CentOS7 修改網(wǎng)卡名稱為eth0&在VMWare中添加多網(wǎng)卡配置,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03

