多机环境下的hadoop平台搭建过程说明_第1页
多机环境下的hadoop平台搭建过程说明_第2页
多机环境下的hadoop平台搭建过程说明_第3页
多机环境下的hadoop平台搭建过程说明_第4页
多机环境下的hadoop平台搭建过程说明_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多机环境下的hadoop平台搭建过程说明一、引言多机环境下的hadoop平台搭建是通过在每台机器上部署hadoop来构成一个hadoop的集群运行环境。本文的环境搭建是针对是每台机器安装的是双系统(windows和linux)或者单linux系统,而非windows下的linux虚拟机。并且,本文hadoop部署之前下载了如下的程序:ubuntu12.10、hadoop0.21.0、jdk1.6.0_37forlinux。这些程序均可以从网上下载,其中jdk1.6.0_37forlinux(此处下载的是64位的)是直接从官网上下载。本文的环境搭建选择了三台机器,其中一台机器要作为master,而另外两台机器要作为slaves。二、部署过程说明参考网上相关资源,本文所采取的部署过程分为三个阶段:单机部署阶段、多机环境下的配置阶段、和启动运行阶段。单机部署阶段主要是在每台机器上安装和配置unbuntu、JDK和hadoop程序;第二阶段主要是进一步配置每台机器,以构成hadoop集群环境;第三个阶段主要是启动hadoop。各个阶段的详细操作步骤如下。2.1、单机部署阶段单机部署阶段主要是对集群环境中的每台机器,进行ubuntu、JDK和hadoop的安装与配置。该阶段要做的工作与单机版的hadoop平台搭建类似。2.1.1、安装ubuntu10.10ubuntu的安装按照提示来就行,此处不做说明。2.1.2、安装jdk

第一步:在usr下面新建一个文件夹Java,然后将jdk复制过来sudomkdir/usr/Javasudocpjdk的路径/usr/Java第二步:进入到Java目录下,改变文件权限为可执行cd/usr/Java

sudochmodu+xjdk1.6.0_37.bin第三步:安装sudo./jdk1.6.0_23.bin

(现象为Unpacking....加一连串解压信息)2.1.3、安装hadoop0.21.0第一步:将hadoop0.21.0.tar.gz复制到usr的local目录下注:如果此语句执行失败且结果为“....没有可利用的包”的话,可以先执行sudoapt-getupdate,以更新各个链接。执行此句要花较长时间,并且一直显示下载数据。第二步:创建ssh-keyssh-keygen-trsa–P注:此语句执行后会要你填写key的保存位置,直接照着系统给出的那个默认位置填,也就是括号里的那个路径,如果全都照此文档操作的话那么括号中路径应该为"/home/hadoop/.ssh/id_rsa")第三步:将此ssh-key添加到信任列表中,并启用此ssh-keycat/home/hadoop/.ssh/id_rsa.pub>>/home/hadoop/.ssh/authorized_keys第四步:启动ssh服务sudoservicesshstart注:1,在终端输入“sshlocalhost”可以测试ssh是否安装好,如果有错误提示,类似"ssh:connecttohostlocalhostport22:Connectionrefused",说明你没有安装ssh-client,此时只需要在终端输入:sudoapt-getinstallopenssh-client

2,此处也可以通过命令“ps-e|grepssh”来查看ssh服务是否真的启动了,正常情况下命令执行之后应该显示两条内容,分别是两个服务,一个是ssh-agent,一个是sshd。如果只有ssh-agent,那么应用命令sudo/etc/sbin/ssh启动sshd服务,如果出现如下类似的问题,则进入(sudogedit/etc/ssh/sshd_config)将出现问题的一句(这里是line25)注释掉就行了/etc/ssh/sshd_config:line25:Badconfigurationoption:syntax

/etc/ssh/sshd_config:terminating,1badconfigurationoptions2.2、多机环境下的配置阶段2.2.1、/etc/hosts文件的配置修改对hosts文件的修改主要是为了建立集群中各个主机的主机名与相应ip地址之间的映射关系。因此,该步需要对每台机器的hosts的文件进行修改。本安装环境下的各个主机名与IP地址的关系如下(IP地址此处隐去):masterslave1slave2基于该映射关系,各个机器的hosts文件的配置如下(各个机器的配置一样):

localhost

masterslave1slave2

注:1)此处各配置文件中的master和slaves均为各个机器的主机名,主机名可通过hostname命令查看

2)配置文件中与localhost之间的映射是自带的2.2.2、多机的ssh-key配置第一步:进入master主机,在终端输入如下命令:scp/home/hadoop/.ssh/id_rsa.puthadoop@:/home/hadoop/scp/home/hadoop/.ssh/id_rsa.puthadoop@:/home/hadoop/注:这里主要是将master机器的ssh-key值拷贝到各个slaves主机。这里可能在拷贝的过程需要输入slave主机的密码,输入即可。第二步:进入各个slave主机,在终端输入如下命令以将ssh-key添加到信任列表中,以在master主机和各个slaves主机之间建立无需密码的链接:cat~/id_rsa.pub>>~/.ssh/authorized_keys注:为了验证ssh服务是否配置成功,回到master主机上,终端键入sshhadoop@如果没有出错,并且进入slave主机,则说明无密码的ssh服务配置成功。这里初次也可能有输入密码的提示,直接输入ip为的主机密码就可以了。实际上,如果你键入”ssh”,程序也可能会提示你输入hadoop@密码,输入即可。2.2.3、JAVA_HOME环境变量的配置进入master主机,配置conf目录下的hadoop-env.sh中的JAVA_HOME。在master主机终端输入如下命令:cd/usr/local/hadoop

sudogeditconf/hadoop-env.sh注:打开后在文档的上部某行有“#exportJAVA_HOME=...”字样的地方,去掉“#”,然后在等号后面填写你的jdk路径,完全按此文档来的话应改为"exportJAVA_HOME=/usr/Java/jdk1.6.0_37"2.2.4、master和slaves文件的配置修改该步操作是在master主机的终端上执行。目标主要是对/usr/local/hadoop/conf下的master和slaves文件进行修改。/usr/local/Hadoop/conf/masters的配置如下:master(此处为master主机的主机名)/usr/local/Hadoop/conf/slaves的配置如下:slave1slave2(此处都为slaves主机的主机名)2.2.5、core-site、mapred-site和hdfs-site文件的配置修改进入master主机,做如下三步。第一步:配置conf目录下的core-site.xmlsudogeditconf/core-site.xml

注:打开后标签<configuration></configuration>中是空的,所以在空的地方加入如下配置

<property>

<name></name>

<value>hdfs://master主机名:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hadoop/tmp</value>

</property>

第三步:配置conf目录下的mapred-site.xmlsudogeditconf/mapred-site.xml注:打开后标签<configuration></configuration>中也是空的,添加如下配置<property>

<name>mapred.job.tracker</name>

<value>master主机名:9001</value>

</property>第三步:配置hdfs-site.xml文件sudogeditconf/hdfs-site.xml

注:打开后标签<configuration></configuration>中也是空的,添加如下配置<property>

<name>dfs.replication</name>

<value>3</value>

</property>注:上述前两步的标红的master主机名要在实际中替换成实际的master主机名2.2.6、复制master的配置文件到各个slaves这里主要是将2.2.1,以及2.2.3-2.2.5节中修改的各个配置文件复制到各个slaves的同样目录下。所用命令如下://拷贝JAVA_HOME环境变量的配置文件scp/usr/local/hadoop/conf/hadoop-env.shhadoop@:/usr/local/hadoop/conf/scp/usr/local/hadoop/conf/hadoop-env.shhadoop@:/usr/local/hadoop/conf///拷贝master和slaves文件scp/usr/local/hadoop/conf/masterhadoop@:/usr/local/hadoop/conf/scp/usr/local/hadoop/conf/masterhadoop@:/usr/local/hadoop/conf/scp/usr/local/hadoop/conf/slavehadoop@:/usr/local/hadoop/conf/scp/usr/local/hadoop/conf/slavehadoop@:/usr/local/hadoop/conf/………2.3、启动运行阶段2.3.1、格式化namenode(首次运行必需)第一步:进入/usr/local/hadoop目录cd/usr/local/hadoop第二步:格式化namenodehadoopnamenode–format注:此步操作以及以后的操作都是在master主机上进行。并且注意这里的格式化命令里边的namenode不能替换成master主机的名字。2.3.2、启动hadoop第一步:启动hadoopbin/start-all.sh第二步:验证hadoop是否正常启动

jps注:1,此语句执行后会列出在master主机已启动的东西NameNode,JobTracker,SecondaryNameNode...如果NameNode没有成功启动的话就要先执行"bin/stop-all.sh"停掉所有东西,然后重新格式化namenode,再启动。

2,为了验证datanode以及taskTracker是否启动,此时可以到各个slave主机的终端,输入jps命令,如果显示datanode,taskTracker,那说明slave端这些相应的服务也启动了。

3,如果slave端这些服务没有启动,那么就应该查看lo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论