CentOS上Hadoop環(huán)境的搭建與管理
我們擁有十余年網(wǎng)頁設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、微信開發(fā)、小程序制作、手機(jī)網(wǎng)站制作、H5開發(fā)、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。please down load the p_w_upload
編輯日期:2015年9月1日
實(shí)驗(yàn)要求:
完成Hadoop平臺(tái)安裝部署、測(cè)試Hadoop平臺(tái)功能和性能,記錄實(shí)驗(yàn)過程,提交實(shí)驗(yàn)報(bào)告。
1) 掌握Hadoop安裝過程
2) 理解Hadoop工作原理
3) 測(cè)試Hadoop系統(tǒng)的可擴(kuò)展性
4) 測(cè)試Hadoop系統(tǒng)的穩(wěn)定性
一、先決條件
確保在集群中的每個(gè)節(jié)點(diǎn)上都安裝所有必需軟件:JDK ,ssh,Hadoop (2.6.0)。
1)JDK,必須安裝(版本1.7以上),建議選擇Sun公司發(fā)行的Java版本。
2)ssh 必須安裝并且保證 sshd一直運(yùn)行,以便用Hadoop 腳本管理遠(yuǎn)端Hadoop守護(hù)進(jìn)程。
二、Hadoop的安裝與配置
HDFS在Master節(jié)點(diǎn)啟動(dòng)dfs和yarn服務(wù)時(shí),需要自動(dòng)啟動(dòng)Slave節(jié)點(diǎn)服務(wù),HDFS需要通過ssh訪問Slave節(jié)點(diǎn)機(jī)。HDFS需要搭建多臺(tái)服務(wù)器組成分布式系統(tǒng),節(jié)點(diǎn)機(jī)間需要無密碼訪問。本節(jié)任務(wù)是進(jìn)行ssh的設(shè)置、用戶的創(chuàng)建、hadoop參數(shù)的設(shè)置,完成HDFS分布式環(huán)境的搭建。
任務(wù)實(shí)施:
本節(jié)任務(wù)需要四臺(tái)節(jié)點(diǎn)機(jī)組成集群,每個(gè)節(jié)點(diǎn)機(jī)上安裝CentOS-6.5-x86_64系統(tǒng)。四臺(tái)節(jié)點(diǎn)機(jī)使用的IP地址分別為:192.168.23.111、192.168.23.112、192.168.23.113、192.168.23.114,對(duì)應(yīng)節(jié)點(diǎn)主機(jī)名為:node1、node2、node3、node4。節(jié)點(diǎn)機(jī)node1作為NameNode,其他作為DataNode。
在node1主機(jī)上,
編輯 vi /etc/hosts,添加如下內(nèi)容:
192.168.23.111 node1
192.168.23.112 node2
192.168.23.113 node3
192.168.23.114 node4
編輯 vi /etc/sysconfig/network,修改
HOSTNAME=node1
關(guān)閉防火墻
chkconfig iptables off
service iptables stop
在其他節(jié)點(diǎn)主機(jī)上進(jìn)行類似的操作,但需要將HOSTNAME的值分別修改為對(duì)應(yīng)的主機(jī)名。
步驟1
創(chuàng)建hadoop用戶,分別在四臺(tái)節(jié)點(diǎn)機(jī)上創(chuàng)建用戶hadoop,uid=660,密碼分別為h2111, h3222, h4333, h5444。登錄node1節(jié)點(diǎn)機(jī),創(chuàng)建hadoop用戶和設(shè)置密碼。操作命令如下。
[root@node1 ~]# useradd -u 660 hadoop
[root@node1 ~]# passwd hadoop
其他節(jié)點(diǎn)機(jī)的操作相同。
步驟2
設(shè)置master節(jié)點(diǎn)機(jī)ssh無密碼登錄slave節(jié)點(diǎn)機(jī)。
(1)在node1節(jié)點(diǎn)機(jī)上,以用戶hadoop用戶登錄或者使用su – hadoop切換到hadoop用戶。操作命令如下。
[root@node1 ~]# su - hadoop
(2)使用ssh-keygen生成證書密鑰,操作命令如下。
[hadoop@node1 ~]$ssh-keygen -t dsa
(3)使用ssh-copy-id分別拷貝證書公鑰到node1,node2,node3,node4節(jié)點(diǎn)機(jī)上,操作命令如下。
[hadoop@node1 ~]$ cd ~
hadoop@node1 ~]$ ssh-copy-id -i .ssh/id_dsa.pub node1
[hadoop@node1 ~]$ ssh-copy-id -i .ssh/id_dsa.pub node2
[hadoop@node1 ~]$ ssh-copy-id -i .ssh/id_dsa.pub node3
[hadoop@node1 ~]$ ssh-copy-id -i .ssh/id_dsa.pub node4
(4)在node1節(jié)點(diǎn)機(jī)上使用ssh測(cè)試無密碼登錄node1節(jié)點(diǎn)機(jī),操作命令如下。
[hadoop@node1 ~]$ ssh node1
Last Login: Mon Dec 22 08:42:38 2014 from node1
[hadoop@node1 ~]$ exit
Logout
Connection to node1 closed.
以上表示操作成功。
在node1節(jié)點(diǎn)機(jī)上繼續(xù)使用ssh測(cè)試無密碼登錄node2、node3和node4節(jié)點(diǎn)機(jī),操作命令如下。
[hadoop@node1 ~]$ ssh node2
[hadoop@node1 ~]$ ssh node3
[hadoop@node1 ~]$ ssh node4
測(cè)試登錄每個(gè)節(jié)點(diǎn)機(jī)后,輸入exit退出。
步驟3
上傳或下載hadoop-2.6.0.tar.gz軟件包到node1節(jié)點(diǎn)機(jī)的root目錄下。如果hadoop軟件包在node1節(jié)點(diǎn)機(jī)上編譯,則把編譯好的包拷貝到root目錄下即可。首先找到所需軟件包的地址http://mirror.bit.edu.cn/apache/hadoop/common/,如圖所示。
然后使用wget命令或其他命令下載所需的軟件包,操作示例如:
wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz
步驟4
解壓文件,安裝文件。操作命令如下。
[root@node1 ~]# cd
[root@node1 ~]# tar xvzf hadoop-2.6.0.tar.gz
[root@node1 ~]# cd hadoop-2.6.0
[root@node1 hadoop-2.6.0]# mv * /home/hadoop/
步驟5
修改hadoop配置文件。Hadoop配置文件主要有:hadoop-env.sh、yarn-env.sh、slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml。配置文件在/home/hadoop/etc/hadoop/目錄下,可進(jìn)入該目錄進(jìn)行配置。操作命令如下。
[root@node1 hadoop-2.6.0]# cd /home/hadoop/etc/hadoop/
(1)修改hadoop-env.sh,
如果還沒有安裝java,先安裝java
yum -y install java-1.7.0-openjdk*
安裝出現(xiàn)問題可以參考以下網(wǎng)址教程進(jìn)行處理.
http://jingyan.baidu.com/article/4853e1e51d0c101909f72607.html
檢查各主機(jī)的/etc/profile是否有JAVA_HOME變量,沒有就在末尾添加:
JAVA_HOME=/usr/lib/jvm/java-1.7.0
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH
export CLASSPATH
export HADOOP_HOME=/home/hadoop/
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存退出后執(zhí)行 source /etc/profile
將hadoop-env.sh文件中的export JAVA_HOME=${JAVA_HOME}修改為
export JAVA_HOME=/usr/lib/jvm/java-1.7.0
(2)修改slaves,該文件登記DataNode節(jié)點(diǎn)主機(jī)名,本處添加node2,node3,node4三臺(tái)節(jié)點(diǎn)主機(jī)名。如下所示。
[root@node1 hadoop]# vi slaves
node2
node3
node4
(3)修改core-site.xml,將文件中的<configuration></configuration>修改為如下內(nèi)容。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
</configuration>
其中node1為集群的NameNode(Master)節(jié)點(diǎn)機(jī),node1可以使用IP地址表示。
(4)修改hdfs-site.xml,將文件中的<configuration></configuration>修改為如下內(nèi)容。
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node1:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
其中為了便于教學(xué),第二個(gè)NameNode也使用node1節(jié)點(diǎn)機(jī),NameNode產(chǎn)生的數(shù)據(jù)存放在/home/hadoop/dfs/name目錄下,DataNode產(chǎn)生的數(shù)據(jù)存放在/home/hadoop/dfs/data目錄下,設(shè)置3份備份。
(5)將文件mapred-site.xml.template改名為mapred-site.xml。操作如下。
[root@node1 hadoop]# mv mapred-site.xml.template mapred-site.xml
將文件中的<configuration></configuration>修改為如下內(nèi)容。
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>node1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node1:19888</value>
</property>
</configuration>
(6)修改yarn-site.xml,將文件中的<configuration></configuration>修改為如下內(nèi)容。
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>192.168.23.111</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>node1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>node1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>node1:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>node1:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>node1:8088</value>
</property>
</configuration>
步驟6
修改“/home/hadoop/”文件用戶主/組屬性,操作如下。
[root@node1 hadoop]# chown -R hadoop:hadoop /home/hadoop
步驟7
將配置好的hadoop系統(tǒng)復(fù)制到其他節(jié)點(diǎn)機(jī)上,操作如下。
[root@node1 hadoop]# cd /home/hadoop
[root@node1 hadoop]# scp -r hadoop-2.6.0 hadoop@node2:/home/hadoop
[root@node1 hadoop]# scp -r hadoop-2.6.0 hadoop@node3:/home/hadoop
[root@node1 hadoop]# scp -r hadoop-2.6.0 hadoop@node4:/home/hadoop
步驟8
分別登錄node2,node3,node4節(jié)點(diǎn)機(jī),修改 “/home/hadoop/”文件用戶主/組屬性。
[root@node2~]# chown -R hadoop:hadoop /home/hadoop
[root@node3~]# chown -R hadoop:hadoop /home/hadoop
[root@node4~]# chown -R hadoop:hadoop /home/hadoop
至此,整個(gè)hadoop分布式系統(tǒng)搭建完成。
三、Hadoop的管理
1.格式化一個(gè)新的分布式文件系統(tǒng)
先格式化一個(gè)新的分布式文件系統(tǒng)
$ cd /home/hadoop
$ bin/hadoop namenode -format
成功情況下系統(tǒng)輸出:
/opt/hadoop/hadoopfs/name has been successfully formatted.
查看輸出保證分布式文件系統(tǒng)格式化成功
執(zhí)行完后可以到master機(jī)器上看到/home/hadoop/name目錄。
2.啟動(dòng)分布式文件服務(wù)
sbin/start-all.sh
或
sbin/start-dfs.sh
sbin/start-yarn.sh
使用瀏覽器瀏覽Master節(jié)點(diǎn)機(jī) http://192.168.23.111:50070,查看NameNode節(jié)點(diǎn)狀態(tài)和瀏覽Datanodes數(shù)據(jù)節(jié)點(diǎn)。
使用瀏覽器瀏覽Master節(jié)點(diǎn)機(jī) http://192.168.23.111:8088查看所有應(yīng)用。
3.關(guān)閉分布式文件服務(wù)
sbin/stop-all.sh
4.文件管理
在hdfs創(chuàng)建swvtc目錄,操作命令如下。
[hadoop@node1 ~]$ hdfs dfs -mkdir /swvtc #類似 mkdir /swvtc
在hdfs查看當(dāng)前目錄,操作命令如下。
[hadoop@node1 ~]$ hdfs dfs -ls / #類似 ls /
Found 1 items
drwxr-xr-x - hadoop supergroup 0 2014-12-23 10:07 /swvtc
在本地系統(tǒng)編輯文件jie.txt,操作命令如下。
[hadoop@node1 ~]$ vi jie.txt
添加內(nèi)容:
Hi,Hadoop!
上傳文件jie.txt到hdfs的/swvtc目錄中,操作命令如下。
[hadoop@node1 ~]$ hdfs dfs -put jie.txt /swvtc
從hdfs中下載文件。操作命令:
[hadoop@node1 ~]$ hdfs dfs -get /swvtc/jie.txt
查看hdfs中/swvtc/jie.txt的內(nèi)容,操作命令:
[hadoop@node1 ~]$ hdfs dfs -text /swvtc/jie.txt
Hi,Hadoop!
hadoop dfs -get in getin 從HDFS獲取文件并且重新命名為getin,同put一樣可操作文件也可操作目錄
hadoop dfs -rmr out 刪除指定文件從HDFS上
hadoop dfs -cat in/* 查看HDFS上in目錄的內(nèi)容
hadoop dfsadmin -report 查看HDFS的基本統(tǒng)計(jì)信息,結(jié)果如下
hadoop dfsadmin -safemode leave 退出安全模式
hadoop dfsadmin -safemode enter 進(jìn)入安全模式
5.添加節(jié)點(diǎn)
可擴(kuò)展性是HDFS的一個(gè)重要特性,首先在新加的節(jié)點(diǎn)上安裝hadoop,然后修改$HADOOP_HOME/conf /master文件,加入 NameNode主機(jī)名,然后在NameNode節(jié)點(diǎn)上修改$HADOOP_HOME/conf/slaves文件,加入新加節(jié)點(diǎn)主機(jī)名,再建立到新加節(jié)點(diǎn)無密碼的SSH連接。
運(yùn)行啟動(dòng)命令:
./start-all.sh
然后可以通過http://(Masternode的主機(jī)名):50070查看新添加的DataNode
6.負(fù)載均衡
運(yùn)行命令:
./start-balancer.sh
可以使DataNode節(jié)點(diǎn)上選擇策略重新平衡DataNode上的數(shù)據(jù)塊的分布。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
本文題目:CentOS上Hadoop環(huán)境的搭建與管理-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://aaarwkj.com/article0/gdsio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、移動(dòng)網(wǎng)站建設(shè)、企業(yè)建站、網(wǎng)站設(shè)計(jì)、建站公司、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容