hadoop2.5.1集群部署(完全分布式)
hadoop2.5完全分布式
環(huán)境介紹:
環(huán)境介紹:3臺(tái)虛擬機(jī)安裝centos6.464位、jdk1.7 64位、hadoop2.5.1 64位
?
主機(jī)配置規(guī)劃
1. 修改主機(jī)名和/etc/hosts文件
1)修改主機(jī)名(非必要)
vi /etc/sysconfig/network HOSTNAME=m1重啟后生效。
2)/etc/hosts是ip地址和其對(duì)應(yīng)主機(jī)名文件,使機(jī)器知道ip和主機(jī)名對(duì)應(yīng)關(guān)系,格式如下:
修改/etc/hosts文件,增加如下地址映射:
192.168.0.108 m1 192.168.0.109 s1 192.168.0.110 s2
2.配置免密碼登陸SSH
1)生成密鑰:
ssh-keygen?-t?dsa?-P?''?-f?~/.ssh/id_dsa??
以上是兩個(gè)單引號(hào)。
2)將id_dsa.pub(公鑰)追加到授權(quán)的key中:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys3)將認(rèn)證文件復(fù)制到其它節(jié)點(diǎn)上:
scp ~/.ssh/authorized_keys 192.168.0.109:~/.ssh/ scp ~/.ssh/authorized_keys 192.168.0.110:~/.ssh/3)測(cè)試:
ssh s13.各節(jié)點(diǎn)上安裝jdk
1 )選擇的版本是 jdk-7u71-linux-x64.tar.gz ,2 )上傳到 usr/local/download 用戶目錄下,添加執(zhí)行權(quán)限 chmod u+x jdk-7u71-linux-x64.tar.gz
4) 安裝
?
tar –zvxf jdk-7u71-linux-x64.tar.gz–C /usr/local/program/?
重命名jdk為jdk1.7 (用mv命令)
?
5) 配置環(huán)境變量:vi /etc/profile加入以下三行
?
#JAVA_HOME export JAVA_HOME=/usr/local/program/jdk1.7 export PATH=$JAVA_HOME/bin:$PATH5)執(zhí)行source /etc/profile使環(huán)境變量的配置生效
6)執(zhí)行java –version查看jdk版本,驗(yàn)證是否成功。
?
4. Hadoop安裝
每臺(tái)節(jié)點(diǎn)都要安裝hadoop。上傳hadoop-2.5.1.tar.gz到用戶usr/local/download目錄下。
1) 解壓
?
tar -zvxf hadoop-2.5.1.tar.gz -C/usr/local/program/?
2) 添加環(huán)境變量:vi ?/etc/profile,尾部添加如下
?
export JAVA_HOME=/usr/local/program/jdk1.7 exportHADOOP_HOME=/usr/local/program/hadoop-2.5.1 export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME exportHADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexportCLASSPATH=.:$JAVA_HOME/lib:$HADOOP_HOME/lib:$CLASSPATH exportPATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH設(shè)置立即生效:
?
source /etc/profile?
3) 修改Hadoop配置文件
(1) core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://m1:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/usr/local/program/hadoop_tmp</value></property></configuration>(2)??? hdfs-site.xml?
?
<configuration><property><name>dfs.replication</name><value>1</value></property><property><name>dfs.namenode.secondary.http-address</name><value>m1:9001</value></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/program/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/program/dfs/data</value></property><property><name>dfs.webhdfs.enabled</name><value>true</value></property></configuration>
?
注:訪問(wèn)namenode的hdfs使用50070端口,訪問(wèn)datanode的webhdfs使用50075端口。要想不區(qū)分端口,直接使用namenode的IP和端口進(jìn)行所有的webhdfs操作,就需要在所有的datanode上都設(shè)置hdfs-site.xml中的dfs.webhdfs.enabled為true。
(3)?mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>m1:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>m1:19888</value></property></configuration>jobhistory是Hadoop自帶了一個(gè)歷史服務(wù)器,記錄Mapreduce歷史作業(yè)。默認(rèn)情況下,jobhistory沒(méi)有啟動(dòng),可用以下命令啟動(dòng):
sbin/mr-jobhistory-daemon.sh start historyserver(4)???yarn-site.xml <configuration><!-- Site specific YARN configurationproperties --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.resourcemanager.address</name><value>m1:8032</value></property><property><name>yarn.resourcemanager.scheduler.address</name><value>m1:8030</value></property><property><name>yarn.resourcemanager.resource-tracker.address</name><value>m1:8031</value></property><property><name>yarn.resourcemanager.admin.address</name><value>m1:8033</value></property><property><name>yarn.resourcemanager.webapp.address</name><value>m1:8088</value></property></configuration>
(5)?slaves
?
S1 S2?
(6)?分別在hadoop-env.sh和yarn-env.sh中添加JAVA_HOME
?
export JAVA_HOME=/usr/local/program/jdk1.7?
5.運(yùn)行Hadoop
1)格式化
hdfs namenode –format?
2) 啟動(dòng)Hadoop
?
start-dfs.sh start-yarn.sh?
也可以用一條命令:
?
start-all.sh?
3) 停止Hadoop
?
stop-all.sh?
4)jps查看進(jìn)程
1. 7692 ResourceManager 2. 8428 JobHistoryServer 3. 7348 NameNode 4. 14874 Jps 5. 7539 SecondaryNameNode5)通過(guò)瀏覽器查看集群運(yùn)行狀態(tài)
(1)http://192.168.0.108:50070
(2)http://192.168.0.108:8088/
(3)192.168.0.108:19888
?
?
6. 運(yùn)行Hadoop自帶的wordcount示例
1)建立輸入文件:
1. vi wordcount.txt 2. 輸入內(nèi)容為:3. hello you 4. hello me5. hello everyone
2)建立目錄
?
hadoop fs -mkdir /data/wordcounthadoop fs –mkdir /output/目錄/data/wordcount用來(lái)存放Hadoop自帶的WordCount例子的數(shù)據(jù)文件,運(yùn)行這個(gè)MapReduce任務(wù)的結(jié)果輸出到/output/wordcount目錄中。
3)上傳文件
?
hadoop fs -put wordcount.txt/data/wordcount/?
4)執(zhí)行wordcount程序
?
hadoop jar usr/local/program/Hadoop-2.5.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.1.jar wordcount /data/wordcount /output/wordcount/?
5)查看結(jié)果
?
hadoop fs -text /output/wordcount/part-r-00000? 1. [root@m1mydata]# hadoop fs -text /output/wordcount/part-r-000002. everyone 13. hello 34. me 15. you 1
總結(jié)
以上是生活随笔為你收集整理的hadoop2.5.1集群部署(完全分布式)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 51模拟器怎么玩刺激战场
- 下一篇: HBase集群安装部署(完全分布式)