在UbuntuCentos上部署Hadoop2X集群_第1页
在UbuntuCentos上部署Hadoop2X集群_第2页
在UbuntuCentos上部署Hadoop2X集群_第3页
在UbuntuCentos上部署Hadoop2X集群_第4页
在UbuntuCentos上部署Hadoop2X集群_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、共享知识分享快乐 在 Ubuntu/Centos 上部署 Hadoop2.X集群 一、用虚拟机模拟三台服务器2 二、添力口 Hadoop 用户 2 三、修改主机名 4 四、修改host文件4 五、添加无密码 SSH服务4 六、节点间使用 SSH连接6 八、下载解压 Hadoop 8 九、Hadoop配置文件8 十、启动 Hadoop11 十-一、查看 Hadoop 的 Web管理窗口 12 十二、运行实例 WordCo unt 14 【转载博客】 19 【问题集锦】 20 卑微如蝼蚁、坚强似大象 一、用虚拟机模拟三台服务器 创建三台虚拟机并分别设置其独立静态IP 1.1设置虚拟机网络连接方式

2、将虚拟机网卡和主机之间的方式设置为桥接模式 网貉连楼 使用桥接网络浪) 为容户机操作系统提供直接访问外部以丈网网络的投限。客户机在外部网络上必须 有自己的IP地址。 使用网络地址转换(NAT(E) 为客户机操作系统提供使用主机IP地址访问主机拨号连擡或外部以衣网网络连接的 使用仅主机橈式网络伯) 将害户机操作裁连接到主机上的专用虚彳胴络。 不使用网络连接(T) 1.2设置静态IP 打开文件 /etc/sysconfig/network-scrip/ifcfg-ethO DEVICE= ” ethO” BOOTPROTO=static IPADDR= ”本虚拟机静态 IP ” GATEWAY=

3、”默认网关” NETMASK= ”子网掩码” ONBOOT= ” yes” 1.3重启网络服务命令 service n etwork restart 二、添加Hadoop用户 2.1创建hadoop用户组 adpiinistratorubuntu:$ sudo addgroup hadoop sudo password for administrator: 正在添加组hadoop (GID 1001).,. 完成奇 admtnistratorubuntu:$ M (在 centos 上需要将 addgroup 改为 groupadd) 2.2创建hadoop用户 administratorub

4、untu:-$ sudo adduser ingroup hadoop hadoop 正在添IB用户hadoop* 正在;忝加新用户Mhadoop11 (1661)到组hadoop* *. 主目录/hone/hadoop已经存在。没有从/etc/skel复制文件。 输入疝的UNIX密码: 审新输入新的UNIX密码: passwd:已成功更新空码 正在改变hadoop的用户倍息 谴输入新值,或直接歆回车键以使用默认值 全当: 房间号码: 工作电话: 家腿电话i】: 會它: 这个信患是否正甬? Y/n y admtntstratorubuntu:-$ t (在centos需要将 adduser改为

5、useradd,并设置密码为 hadoop) Lrootlocalhost -# useradd -g hadoop hadoop rootlocalhost -# passwd hadoop changing pa5sword for use hadoop. New password: bad password: it is based on a dictionary word BAD PASSWORD:15 TOO 51mple Retype new password: passwd al 1 authentication tokens updated successfully. 挣 各u

6、 hadoop 2.3给hadoop用户添加权限,打开 /etc/sudoers文件 admini客t广电ubuntu二/home/hadoop$ cd admtntstratorubuntu:-$ sudo gedtt /et匚/udoers (centos可以直接使用 vi代替gedit) 在 root ALL=(ALL:ALL) ALL 后添加 hadoop ALL=(ALL:ALL) ALL sudoers (/etc) - gedit 文件(F)塢辑(E) S(V) fi(S) Xa(7)文档(D)朝助(H) 直 打幵于Ifl保存 Bf;B Z* V邑申|Q i sudoers M

7、it See the nan page for details on how to write a sudoers ft Defaultsenv_reset # Host alias specification # User alias specification tt Cmnd alias specification 萍 User privilege specification rootALL=(ALL:ALL) ALL hadoop ALL=(ALL:ALL) ALLlk 三、修改主机名 集群中需要给每台机器取个不同的名字。Ubuntu中机器名由/etc/hostname文件决定。 3.1

8、 打开 /etc/host name 文件 hadoopgubuntu:/roots 匚d hadoopubuntu:sudo gedtt fete/hostname sudo password for hadoop: 3.2回车后就打开/etc/hostname文件了,将/etc/hostname文件中的ubuntu改为你想取的机器 名,女口 master、slavel、slave2。 3.3重启系统(reboot)后生效。 (如果是 centos,则需要修改 /etc/sysconfig/network 文件) hadoop + - RSA 28- + |o*, q.I |o a. O+

9、0 . I |. . t O. 0 I O *.0 I I$ o hadoopubuntu:- 回车后会在/.ssh/下生成两个文件: id_rsa是私钥 id_rsa.pub 是公钥 5.3进入/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中 hadoopgubuntu:. ssh$ Is td_rsa td_rsa,pub hadoopgubuntu:* ssh$ cat id_rsa*pub authorized_keys 5.4本机测试 h自dcopubuntu:*ssh$ ssh localhost The authenticity of ho

10、st localhost (127.e + 0l)1 can11 be established* ECDSA key fingerprint is 9c:31:23:18:dd:99:7f:11:14:73:7d:f3:db:82:17. Are you sure you want to conttnuu czonnetting (yes/no)? yes Warning : Permanently added 1 localhost1 (ECDSA) to the list of lenown hosts * Welcome to Ubuntu 11,IQ (CNU/Linux 3+0,0-

11、12-generic 1636) * Document刍ttan: https:/help.ubuntu,con/ 348 packagesbe updated. 7A updates are security updates. The programs i.neluded with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright* Ubunt

12、u comes with ABSOLUTELY NCWARRANTY, to the extent permitted by applicable law, hmciotjpigijtHjntzif: (注:当ssh远程登录到其它机器后,现在你控制的是远程的机器,需要执行退出命令才能 重新控制本地主机。) hadoopgubuntu:exit so. LLl S.LLJ Connectton to 1口匚alhost closed. hadoopgubuntu:-/.ssh$ 【切记】 SSH中密钥文件的权限值必须都设为600 sudo chmod 600 /home/hadoop/.ssh/

13、* 六、节点间使用SSH连接 6.1将各节点的id_rsa.pub公钥拷贝到 各节点的authorized_keys内,就可以实现各节点之间 的无SSH密码通讯 haidoop sun Aug 17 23:18:19 2014 from siavel hadoopslave2 $ exit logout 匚on门电ccPon ro slave2 closed hadocpslavel $ exit logout connection to s1avel closed jiadpgmasT:E/$ 关于SSH的通讯原理,这里不做详述,有兴趣的话可以看看博客 http:/qi ndon glia

14、介绍的很详细的样子 七、安装JDK 我们选择的是jdk1.6.0_30版本,安装文件名为jdk-6u30-linux-i586.bin. 7.1复制jdk到安装目录 我们指定的安装目录是:/usr/local/java,先创建一个java文件夹 administratorubuntu:/usr/locals sudo nkdir java sudo password for administrator: 再将bin文件拷贝进去 adntinitratorubuntu:/usr/local$ cd adFtinitratorubunfu:cd 桌面 adntfttstratorgubufttu:

15、$ sudo cp jdk*6u3a-llnux tS86.bin /usr/Local /java/ : 桌面 $ 7.2安装jdk 切换到root用户下 hadoopubuntu:/usr/local/java$ su 密码: rootfflubuntur/usr/lo匚al/ (注:如果因忘记密码而认证失败,可以先修改root用户的密码,再执行) hadoopubuntu:/usr/to匚sudo passwd 输入痛的UNIX密码: 重新输入新的UNIX密码: passwd:已成功更新密码 运行 jdk-6u30-linux-i586.bin rootgubuntu:/usr/loca

16、l/java# ./jdk-6u30-linux-i586.binf (注:如果遇到权限问题,可以先更改jdk-6u30-linux-i586.bin权限) 更改权限后再执行上一步,当看到下图情况时,说明你安装成功了 Java(TM) SE Development Kit 6 successfully installed. Produ匚t Registratton is FREE and includes many benefits: * Notification of new versions patches, and updates * Special offers on 0厂act亡 p

17、roducts, services anti training * Access to early releases 3nd documentation Product and system data will be collected * If your configuration supports a browser, the JDK Product Registration form will be presented. If you do not register, none of this information will be saved. You may also registe

18、r your JDK later by opening the register.html file (located in the JDK installatton directory) tn a browser. For nore tnfornatton on what date Registration collects and how it is managed and used, see:卜 http:/java.sun,com/javase/regtstratton/JDKRegtstrattonPrtvacy.htf Press Enter to continue Done. o

19、otiaubuntu: /us厂 这时在/usr/local/java目录下就多了一个jdk1.6.0_30文件夹 rootgubuntu:Is jcikl 6 O_30 jdk-6u30 inux-tS86 btn rootubuntu:/usr/tocal/java# I 7.3配置环境变量 (1)打开 /etc/profile 文件 rootubuntu:sudo gedit /etc/proftie (2) 添加变量如下: # /etc/profile: system-wide .profile file for the Bourne shell (sh(1) # and Bourne

20、 compatible shells (bash(1), ksh(1), ash(1),). #set java en vir onment export JAVA_HOME=/usr/local/java/jdk1.6.0_30 export JRE_HOME=/usr/local/java/jdk1.6.0_30/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JA/A_HOME/bi n:$JRE_HOME/bi n:$JA VA_HOME:$PATH (注:为了以后集群工作的方便,这

21、里建议每台机器的 java环境最好一致。) 一般更改/etc/profile文件后,需要重启机器才能生效。这里介绍一种不用重启使 其生效的方法 hadoopgubuntu:source /etc/proftte (3) 查看java环境变量是否配置成功 hadoopubuntu:$ java -version java version K11 Java(TM) SE Runtime Environment (build 1.6.0_30-bl2) Java HotSpot(TM) Client VM (build 20.S-b03f mixed mode, sharing) hadoopffl

22、ubuntu: 八、下载解压Hadoop 官网下载 /dyn/closer.cgi/hadoop/core/ hadoop集群中每个机器上面的配置基本相同,所以我们先在master上面进行配置部署,然 后再复制到其他节点。所以这里的安装过程相当于在每台机器上面都要执行。 【注意】:master和slaves安装的hadoop路径要完全一样,用户和组也要完全一致 解压文件到/usr路径下,并重命名 tar zxvf hadoop-2.2.0_x64.tar.gz /usr/ mv hadoop-2.2.0 hadoop aboutyunrnaster: /

23、ncr 1 去 bin dfs games | hadoop include jdikl,7 lib local sbtn share src tnp (解压命令在 Ubuntu 是 tar -zxf xxx.tar.gz, centos 是 tar zxvf xxx.tar.gz) 九、Hadoop配置文件 9.1创建必要文件夹 在master本地文件系统创建以下文件夹: /dfs/name /dfs/data /tmp 注意文件所属用户及用户组。如果不在新建的用户组下面,可以使用chown命令来修改: (chmod 和 chown 命令的用法 http:/ 9.2这里要涉及到的配置文件有

24、7个 /hadoop-2.2.0/etc/hadoop/hadoop-e nv.sh /hadoop-2.2.0/etc/hadoop/yar n-en v.sh /hadoop-2.2.0/etc/hadoop/slaves /hadoop-2.2.0/etc/hadoop/core-site.xml /hadoop-2.2.0/etc/hadoop/hdfs-site.xml /hadoop-2.2.0/etc/hadoop/mapred-site.xml /hadoop-2.2.0/etc/hadoop/yar n-site.xml 以上文件有些默认不存在的,可以复制相应的.templa

25、te文件获得 9.3 配置文件 1: hadoop-env.sh 修改 JAVA_HOME 值(export JAVA_HOME=/usr/jdk1.7) 9.4 配置文件 2: yarn-env.sh 修改 JAVA_HOME 值(export JAVA_HOME=/usr/jdk1.7) 9.5配置文件3: slaves(这个文件里面保存所有slave节点) 写入以下内容: slave1 slave2 9.6 配置文件 4: core-site.xml fs.defaultFS/name hdfs:/master:8020 io.file.buffer.size/name 131072 h

26、adoop.tmp.dir/name file:/home/abouty un /tmp Abase for other temporarydirectories. xyuser.abouty un .hosts/name * xyuser.abouty un. groups/name * 9.7 配置文件 5: hdfs-site.xml dfs .n ame no de.sec on dary.http-address/name master:9001 dfs .n ame node.n ame.dir/name file:/home/abouty

27、un/dfs/name dfs.data no de.data.dirv/name file:/home/abouty un/dfs/data dfs.replicati on 3 dfs.webhdfs.e nabled/name true 9.8 配置文件 6: mapred-site.xml mapreduce.framework .n ame/name yar n mapreduce.jobhistory.address/name master:10020 mapreduce.jobhistory.webapp.address/name master:19888 9.9 配置文件 7:

28、 yarn-site.xml yar n.no dema nager.aux-services/name mapreduce_shuffle yar n.no dema nager.aux-services.mapreduce.shuffle.class/name org.apache.hadoop.mapred.ShuffleHa ndler yar n. resourcema nager.address/name master:8032 yar n. resourcema nager.scheduler.address/name master:8030 yar n. resourcema

29、nager.resource-tracker.address/name master:8031 yar n. resourcema nager.adm in. address/name master:8033 yar n. resourcema nager.webapp.address/name master:8088 9.10将配置文件复制到其他节点 hadoop复制过 上面配置完毕,我们基本上完成了90% 了剩下就是复制。我们也可以把整个 去(注意slaves文件不一样) 【注意】拷贝配置文件的时候修改文件所有者 sudo chow n hadoop mapred-site.xml 【记得

30、】最后检查一下 cat hadoop-e nv .sh cat yarn-env .sh cat slaves cat core-site.xml cat hdfs-site.xml cat mapred-site.xml cat yarn-site.xml 9.11在每台服务器内配置环境变量 export PATH=$PATH:/usr/local/hadoop/bi n/ export PATH=$PATH:/usr/local/hadoop/sb in/ 十、启动Hadoop 10.1 格式化 name node hdfs namenode - format 或则 hadoop n am

31、e node format 10.2 启动 hdfs start-dfs.sh 此时在master上面运行的进程有: n ame node sec on dary name node slave节点上面运行的进程有:data node 10.3 启动 yarn start-yar n.sh 我们看到如下效果: master有如下进程: / suini/ubr / aboutyunmaster:-$ jps 21211 Jps 7421 SecondsryNameNode 71S4 NameNode 7968 ResourceManager slavel有如下进程 aboutyungslavel

32、:/home/user$ jps 3612 NodeManager 3723 Jps 3367 DataNode 此时hadoop集群已全部配置完成! ! 1、查看Hadoop的Web管理窗口 11.1 ResourceMa nager 介绍:运行在主节点 master上 网址:http:/master:8088/ 配置文件:yarn-site.xml yar n. resourcema nager.webapp.address/name master:8088 【注】如果没有配置 hosts,master将无法解析 要么你直接输入IP替代master,要么你就配置一下hosts,都很简单 H

33、osts 文件地址 C:WindowsSystem32driversetc f 本地翟直(匸:) Window System 32 drivers etc 2014/5/12 殆4 2014/5/11 05 WARN ufi 1P NativeCodeLoader: -java cl asses where appliic_L1 - Starting namerKides on nas master! Error: 3ava_hDme 1 slavel: e:or: java_hqme 1 sl-ave2: ror: Starting secondary namenodes master ma

34、ster: rcrz 3AVA_HDME is not set and 14/OB/I呂 03 r 51:1D waRe uti1.katlveCodeLoader: -lavs, clss-es *here aippltcable HLadoofmsEer hAdo /usr/1 qcall/ java/idkl. 6.3: is a directory hadoopmaster hafloopJ start-y且n.sh st anting yarn daiemons ST arcing esou血丘恂3)9出】1 agg 1 ng io /usr/l ocal /liadoop/I ms

35、 /yarn -esonircemanager-mszer,. dux slavel: 前ror: java_hwe Is not set and could not b s 1 ave2: Eor: JAVA_HDME is not set and could not be found ladoopmaster hadoopJS jps 215S iResour匚曲3门且百 2415 Jp liad starting nodemanager p logging to /usr/local/hadoop/logs/yarrii-hadQQp-nodeiiianager-slaveZ. out

36、slavel: starting nodenianager logging to /Msr/local/hadoop/1 ogs/yan-Kadcnop-rioclwiaanagmr-slavEl.Qut hdoopsmasi ter nadocp S jps 2760 secondaryNameNode 3592 ips 279 Getconf 2592 NameNode 3333 ResourcaManager 问题二:无法启动 NodeMa nager NodeManager启动失败。查看日志,记录错误如下: 2014-02-10 18:24:07,635 FATAL org.apach

37、e.hadoop.yarn.server. nodema nager.NodeMa nager: Error starti ng NodeMa nager org.apache.hadoop.yar n.Yarn Excepti on: Failed to Start org.apache.hadoop.yar n. server. no dema nager.NodeMa nager at org.apache.hadoop.yar n. service.CompositeService.start(CompositeService.java:78) at org.apache.hadoop

38、.yar n. server. no dema nager.NodeMa nager.start(NodeMa nager.java:196) at org.apache.hadoop.yar n. server. no dema nager.NodeMa nager.i nitAn dStartNodeMa nager (NodeMa nager.java:329) at org.apache.hadoop.yar n. server. no dema nager.NodeMa nager.ma in(N odeMa nager.java:351) Caused by: org.apache

39、.hadoop.yar n.Yarn Excepti on: Failed to Start org.apache.hadoop.yar n. server. no dema nager.c ontain erma nager.C ontain erMa nagerlmpl at org.apache.hadoop.yar n. service.CompositeService.start(CompositeService.java:78) at org.apache.hadoop.yar n. server. no dema nager.c ontain erma nager.C ontai

40、n erMa nagerlmpl.start(C onta in erMa nagerlmpl.java:248) at org.apache.hadoop.yar n. service.CompositeService.start(CompositeService.java:68) .3 more Caused by: org.apache.hadoop.yar n.Yarn Excepti on: Failed to check for existe nee of remoteLogDir /var/log/hadoop-yar n/apps at org.apache.hadoop.ya

41、r n. server. no dema nager.c ontain erma nagero gaggregati on .LogAggregati onSe rvice.verifyA ndCreateRemoteLogDir(LogAggregati on Service.java:179) at org.apache.hadoop.yar n. server. no dema nager.c ontain erma nagero gaggregati on .LogAggregati onSe rvice.start(LogAggregati on Service.java:132)

42、at org.apache.hadoop.yar n. service.CompositeService.start(CompositeService.java:68) .5 more 2014-02-10 18:24:07,647 INFO org.apache.hadoop.ipc.Server: Stopping server on 52154 日志显示:无法启动 NodeManager,无法启动 ContainerManager (也就是没有分配资源容器 管理进程),也无法检查远程日志目录(在 HDFS上),原因锁定,无法与 Master (具体 来说是ResourceManager)

43、通信,然后到master上查看防火墙是否关闭,将Master上的防火 墙关闭,并且chkconfig iptables off进行永久关闭(重启后不会自动开启),再去 Slave节点 上启动 NodeManager 问题三: No route to host caused by: java. net NoRout漣toHoistEJCcaption:; no route to host at sun门mthi cz林虫匸o门门(nsuHve Method) ax suiHr nio, ch, sock etc hannel I mpl r f i ni shconmeGt (sock 电twhmnn 疤 PTinplL java: 599) at org apa匸hmdoop. rwt. sockerlowIrhTl meour a conneci (sockerlow!thTi meout B at org apache

温馨提示

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

评论

0/150

提交评论