虚拟机安装ubuntu和hadoop_第1页
虚拟机安装ubuntu和hadoop_第2页
虚拟机安装ubuntu和hadoop_第3页
虚拟机安装ubuntu和hadoop_第4页
虚拟机安装ubuntu和hadoop_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

-.zvbo*安装在windows8下面使用VirtualBo*安装ubuntu,下载虚拟机文件:VirtualBo*-4.3.0-89960-Win直接执行即可;ubuntu安装下载ubuntu文件在指定目录下,如:启动vbo*,新建虚拟机:注意选择64位ubuntu安装,在此之前,需在win8系统启动时按F5/F12〔.〕把BIOS修改下;3、选择:设置->存储,点分配光驱右侧的光盘符合选择ISO文件,如以下图:确定即可;在VBO*中按【启动】即开场安装ubuntu,安装的语言选择English,一路默认即可,内存和硬盘大小可以根据自己的情况设置,比方内存:1024,硬盘:100G;4、增强功能安装,〔还未安装成功〕5、安装过程中configureapt由于使用国外的源比较耗时,可以拔掉网线安装,安装完成后修改下源的配置:Sudovi/etc/apt/source.list把deb-src的都注释掉,其他的改为163或sohu的源,或41(哪家的.);执行:sudoapt-getupdate更新lib;6、与wind8网络打通配置:Sudovi/etc/network/interfaces加上如下内容:autoeth1

ifaceeth1inetstatic

address

netmask

gateway退出系统;(如果虚拟机中的unbunt不能上网,可以重启下网卡效劳:sudo/etc/init.d/networkingrestart)对网卡2做如下设置:重新进入ubuntu系统;这样可以通过ping访问到ubuntu虚拟机;hadoop安装创立hadoop用户:创立hadoop用户组:sudoaddgrouphadoop创立hadoop用户:sudoadduser-ingrouphadoophadoop输入密码即可,其他的直接按回车;给hadoop用户添加权限,翻开/etc/sudoers文件;sudovi/etc/sudoers给hadoop用户赋予root用户同样的权限。在rootALL=(ALL:ALL)ALL下添加hadoopALL=(ALL:ALL)ALL安装JDK安装sun-jdk,不要使用openjdk;下载JDK文件:jdk-7u15-linu*-*64.tar.gz注意是64位的jdk版本,32位的需要运行时如果为更新32为的lib会提示没有对应的文件或目录;解压:Sudotarz*vfjdk-7u15-linu*-*64.tar.gz–C/urs/local/jvm改名:sudomvjdk1.7.0-15java-7-sun设置环境变量,sudo~/.bashrc在终端运行sourcebashrc可使得刚修改的环境变量立即生效;运行java–version出现:即表示安装正常;安装SSH执行:sudoapt-getinstallopenssh-serveropenssh-client安装ssh远程登录效劳,因为SSH是目前较可靠,专为远程登录会话和其他网络效劳提供平安性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。而hadloop就是基于这个协议来实现,分布式统筹管理;执行:ssh-keygen-trsa-P"创立ssh-key,~/.ssh目录下〔即当前用户的/home/hadoop/ssh〕将生成id_rsaid_rsa.pubknown_hosts三个文件,如果将这三个文件复制到另一台已经安装ssh的主机上,则他们之间相互访问就不用每次输入登录密码。执行:catid_rsa.pub>>authorized_keys将id_rsa.pub复制一份到authorized_keys中,将id_rsa.pub追加到authorized_keys授权文件中,开场是没有authorized_keys文件;执行:sshlocalhost出现下面画面表示正常:安装hadoop下载hadoop文件:解压:sudotarz*vfhadoop-1.2.1.tar.gz;改名:复制到/usr/local:sudocphadoop/usr/local将该hadoop文件夹的属主用户设为hadoop,sudochown-Rhadoop:hadoophadoop如以下图:翻开hadoop/conf/hadoop-env.sh文件;sudovihadoop/conf/hadoop-env.sh配置conf/hadoop-env.sh〔找到*e*portJAVA_HOME=...,去掉*,然后加上本机jdk的路径〕;e*portJAVA_HOME=/usr/lib/jvm/java-7-sun翻开conf/core-site.*ml文件;sudovihadoop/conf/core-site.*ml编辑如下:property后面需要手工敲翻开conf/mapred-site.*ml文件;sudovihadoop/conf/mapred-site.*ml编辑如下property后面需要手工敲:翻开conf/hdfs-site.*ml文件;sudovihadoop/conf/hdfs-site.*ml编辑如下:翻开conf/masters文件,添加作为secondarynamenode的主机名,作为单机版环境,这里只需填写localhost就Ok了。sudovihadoop/conf/masters翻开conf/slaves文件,添加作为slave的主机名,一行一个。作为单机版,这里也只需填写localhost就Ok了。sudovihadoop/conf/slaves默认就是localhost,千万别修改为localhost虽然正式的多台机器是这样的写法,但是单台机器不需要前面的ip地址,否则会报错;单机上伪分布模式运行hadoop进入hadoop目录下,格式化hdfs文件系统,初次运行hadoop时一定要有该操作,cd/usr/local/hadoop/bin/hadoopnamenode-format当你看到以下图时,就说明你的hdfs文件系统格式化成功了。启动bin/start-all.sh检测hadoop是否启动成功执行:jps如果有Namenode,SecondaryNameNode,TaskTracker,DataNode,JobTracker五个进程,就说明你的hadoop单机版环境配置好了!如以下图:然后可以通过firefo*浏览器查看,使用localhost:50030/〔注意由于安装的server版本,需在windows下IE用:01:50030/,这个IP地址是前面网络设置时指定的哦〕,这个网页显示的是正在运行的任务,如果看到下面冲动人心的画面,就说明你成功了。然后可以通过firefo*浏览器查看,使用localhost:50070/〔01:50030/server版本ubuntu时使用〕这个页面显示的是涉及的数据:完毕hadoop效劳:bin/stop-all.sh其他:由于在机房的测试效劳器上已经安装了hadoop,为了保证与其一致,在本地虚拟机上安装好ubuntu后,通过scp远程复制对应的jdk和hadoop压缩包过来进展安装。执行e*amplehadooptim-ubuntu:/usr/local/hadoop$cd/usr/local/hadoop/hadooptim-ubuntu:/usr/local/hadoop$mkdirinputhadooptim-ubuntu:/usr/local/hadoop$cp./conf/*./input/将本地目录input上传到HDFS文件系统上,执行如下命令:hadooptim-ubuntu:/usr/local/hadoop$bin/hadoopfs-putinput/input该命令必须执行,否则会出现异常:org.apache.hadoop.mapred.InvalidInputE*ception:Inputpathdoesnote*ist:启动e*amples任务hadooptim-ubuntu:/usr/local/hadoop$./bin/hadoopjar./hadoop-e*amples-1.2.1.jarwordcountinputoutput输入数据目录为input,输出数据目录为output;任务执行信息如下所示:查看结果:hadooptim-ubuntu:/usr/local/hadoop$bin/hadoopfs-catoutput/*通过浏览器查看为:01:50030/jobtracker.jsp五、异常处理:rmr:node.SafeModeE*ception:Cannotdelete/user/hadoop/input.Namenodeisinsafemode.ERRORorg.apache.hadoop.security.UserGroupInformation:PriviledgedActionE*ceptionas:hadoopcause:java.io.IOE*ception:File/usr/local/hadoop/tmp/mapred/system/couldonlybereplicatedto0nodes,insteadof1解决方案,关闭防火墙:sudoufwdisableEclipse访问权限拒绝错误:Error:org.apache.hadoop.security.AccessControlE*ception:Permissiondenied:ser=Tim,access=READ_E*ECUTE,inode="_stage":app:supergroup:rw*----"解决方案(开发测试环境中):Sudovihdfs-site.*ml修改默认权限为false(默认为true)eclips安装hadoop插件开发安装插件开通vbo*中的hadoop安装目录samba效劳安装samba效劳:hadooptim-ubuntu:~$sudoapt-getinstallsambahadooptim-ubuntu:~$sudoapt-getinstallsmbfs共享安装的hadoop目录:hadooptim-ubuntu:/usr/local$sudochmod777/usr/local/hadoop修改samba配置文件:hadooptim-ubuntu:/usr/local$sudovi/etc/samba/smb.conf在最后面加上:[share]path=/usr/local/hadoopavailable=yesbrowsealbe=yespublic=yes writable=yes创立samba**hadooptim-ubuntu:/usr/local$sudotouch/etc/samba/smbpasswdhadooptim-ubuntu:/usr/local$sudosmbpasswd-ahadoop重启samba效劳器hadooptim-ubuntu:/usr/local$sudo/etc/init.d/smbdrestart在windows下访问:文件夹处输入"\\"+"Ubuntu机器的ip或主机名"+"\\"+"share"\\01\share配置eclipse在Map/ReduceLocations中新建一个HadoopLocation。在这个View中,右键-->NewHadoopLocation。在弹出的对话框中你需要配置Locationname,如Hadoop1,还有Map/ReduceMaster和DFSMaster。这里面的Host、Port分别为你在mapred-site.*ml、core-site.*ml中配置的地址及端口。如:注意用户名改为运行hadoop的用户名;使用maven构建一个普通java工程mvnarchetype:create-DgroupId=.fengmao.windebll-DartifactId=myHadoopTest-DpackageName=.fengmao.windbell-Dversion=1.0把该工程导入eclipse:mvneclipse:cleaneclipse:eclipse修改该工程的POM.*ML文件加上hadoop依赖:命令行执行:mvneclipse:eclipse刷新myHadoopTest工程,可以看见依赖的hadoop已经导入;建一个WordCount.java文件:package.fengmao.windbell;importjava.io.IOE*ception;importjava.util.StringTokenizer;importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.fs.Path;importorg.apache.hadoop.io.IntWritable;importorg.apache.hadoop.io.Te*t;importorg.apache.hadoop.mapreduce.Job;importorg.apache.hadoop.mapreduce.Mapper;importorg.apache.hadoop.mapreduce.Reducer;importorg.apache.hadoop.mapreduce.lib.input.FileInputFormat;e.lib.output.FileOutputFormat;importorg.apache.hadoop.util.GenericOptionsParser;publicclassWordCount{publicstaticclassTokenizerMappere*tendsMapper<Object,Te*t,Te*t,IntWritable>{privatefinalstaticIntWritableone=newIntWritable(1);privateTe*tword=newTe*t();publicvoidmap(Objectkey,Te*tvalue,Conte*tconte*t)throwsIOE*ception,InterruptedE*ception{StringTokenizeritr=newStringTokenizer(value.toString());while(itr.hasMoreTokens()){word.set(itr.ne*tToken());conte*t.write(word,one);}}}publicstaticclassIntSumReducere*tendsReducer<Te*t,IntWritable,Te*t,IntWritable>{privateIntWritableresult=newIntWritable();publicvoidreduce(Te*tkey,Iterable<IntWritable>values,Conte*tconte*t)throwsIOE*ception,InterruptedE*ception{intsum=0;for(IntWritableval:values){sum+=val.get();}result.set(sum);conte*t.write(key,result);}}publicstaticvoidmain(String[]args)throwsE*ception{Configurationconf=newConfiguration();conf.set("mapred.job.tracker","01:9001");conf.set("","hdfs://01:9000");conf.set("hadoop.job.ugi","hadoop");String[]otherArgs=newGenericOptionsParser(conf,args).getRemainingArgs();if(otherArgs.length!=2){System.err.println("Usage:wordcount<in><out>");System.e*it(2);}Jobjob=newJob(conf,"wordcount");job.setJarByClass(WordCount.class);job.setMapperClass(TokenizerMapper.class);job.setbinerClass(IntSumReducer.class);job.setReducerClass(IntSumReducer.class);job.setOutputKeyClass(Te*t.class);job.setOutputValueClass(IntWritable.class);FileInputFormat.addInput

温馨提示

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

评论

0/150

提交评论