ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:471.53KB ,
资源ID:7803098      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7803098.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(虚拟化与云计算实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

虚拟化与云计算实验报告.docx

1、虚拟化与云计算实验报告虚拟化与云计算实验报告一、实验目的实验一: 1.掌握在Linux上配置iSCSI target服务的方法。 2.掌握在不同的操作系统平台上使用iSCSI initiator的方法。实验三:1.掌握在集群上(使用虚拟机模拟)安装部署Hadoop-HDFS的方法。2.掌握在HDFS运行MapReduce任务的方法3.理解MapReduce编程模型的原理,初步使用MapReduce模型编程。二、实验内容实验一: 配置和使用SAN存储,设置连接IP SAN设备;实验三: 安装、部署、使用Hadoop-HDFS和配置运行MapReduce程序,使用MapReduce编程。三、实验原

2、理实验一:SAN(Storage Area Network,存储局域网络)的诞生,使存储空间得到更加充分的利用以及管理更加有效。SAN是一种将存储设备、连接设备和接口集成在一个高速网络中的技术。SAN本身就是一个存储网络,承担了数据存储任务,SAN网络与LAN业务网络相隔离,存储数据流不会占用业务网络带宽。在SAN网络中,所有的数据传输在高速、高带宽的网络中进行,SAN存储实现的是直接对物理硬件的块级存储访问,提高了存储的性能和升级能力。早期的SAN采用的是光纤通道(FC,Fiber Channel)技术,所以,以前的SAN多指采用光纤通道的存储局域网络,到了iSCSI协议出现以后,为了区分,

3、业界就把SAN分为FC SAN和IP SAN。iSCSI(互联网小型计算机系统接口)是一种在TCP/IP上进行数据块传输的标准。它是由Cisco和IBM两家发起的,并且得到了各大存储厂商的大力支持。iSCSI可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行快速的数据存取备份操作。iSCSI标准在2003年2月11日由IETF(互联网工程任务组)认证通过。iSCSI继承了两大传统技术:SCSI和TCP/IP协议。这为iSCSI的发展奠定了坚实的基础。基于iSCSI的存储系统只需要不多的投资便可实现SAN存储功能,甚至直接利用现有的TCP/IP网络。相对于以往的网络存储技术

4、,它解决了开放性、容量、传输速度、兼容性、安全性等问题,其优越的性能使其备受关注与青睐。在实际工作时,是将SCSI命令和数据封装到TCP/IP包中,然后通过IP网络进行传输,具体的工作流程如下:(1)iSCSI系统由SCSI适配器发送一个SCSI命令;(2)命令封装到TCP/IP包中并送入到以太网络;(3)接收方从TCP/IP包中抽取SCSI命令并执行相关操作;(4)把返回的SCSI命令和数据封装到TCP/IP包中,将它们发回到发送方;(5)系统提取出数据或命令,并把它们传回SCSI子系统。实验三:1.HDFS指的是Hadoop分布式文件系统,是根据Google的GFS的论文,由Doug Cu

5、tting使用Java开发的开源项目。HDFS本身是Hadoop项目的一部分,为Hadoop提供了底层的数据存储,以供上层的各种实际应用使用(如Map/Reduce)。HDFS是典型的Master/Slave集群架构,由一个NameNode和多个DataNode组成,NameNode只能是一个,扮演着Master的角色,负责对具体存储块的元数据进行保存,如某个存储块具体保存在哪个DataNode上;DataNode可以为多个,扮演着Slave的角色,负责对具体的存储块进行保存,一个相同的存储块根据配置可以保存到多个DataNode上,以保持数据的高可用性。客户端与HDFS交互时,典型的,会先询

6、问NameNode具体的存储块在哪个DataNode上,然后客户端会直接联系相应的DataNode,来获取或写入数据。各个DataNode会定时发送心跳至NameNode,以便NameNode了解DataNode的可用状态及存储状态,这样可以保证某一个DataNode挂掉,NameNode可以做相应处理,以保证数据的高可用性。HDFS的目标就是使用大量的廉价PC机,来维护海量的大数据块,并且保证数据的高可用性,并且HDFS集群会随着更多PC机的加入,而提高数据的存储量(当然这与具体环境的硬盘相关)与吞吐量(当然这与具体环境的网卡带宽相关),单个Hadoop集群一般最大可达2000个节点。2.

7、MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念Map(映射)和Reduce(化简),和他们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。他极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(化简)函数,用来保证所有映射的键值对中的每一个共享相同的键组。四、实验步骤及实验结果实验一:实验场景:Linux环境(本次实验使用的是Ubuntu 11.04操作系统)安装 iSCSI initiator软件实

8、验方式:两人一组,我在小组中担任客户端角色。实验详细步骤见实验一手册,下面为实验关键结果截图和实验中的新发现:1.登录到iSCSI target上2.检查硬盘情况,此时应该增加了一块新的硬盘:fdisk l(结果) 预期实验结果和实际结果相同,增加了一块新的硬盘,只是中间在连接时出现了问题,后通过修改节点信息解决了问题,把之前的绝对路径改为简单的字符串,即图中的my。实验三:实验场景:Linux环境(本次实验使用的是Ubuntu 11.04操作系统)JDK、Openssh-Cilent、Openssh-server、Hadoop、eclipse和hadoop plugin for eclips

9、e实验方式:两人一组,部署多机Hadoop-HDFS,并且两人之间变换Master、Slaver角色。实验详细步骤见实验三手册,下面为实验关键结果截图和实验中的新发现:1.配置SSH之后发现无法互联,通过查询从网上搜到一些相关的文档,操作如下:不仅解决了成员互联问题,而且可以设置验证码,完善了功能。2.安装部署单机伪分布式模式Hadoop-HDFS格式化HDFS并启动Hadoop,启动后可使用命令jps查看已启动进程jps结果如下图所示3.在单机伪分布模式下运行wordcount例子(结果1)将输出文件从分布式文件系统拷贝到本地文件系统查看4.安装部署多机Hadoop-HDFS(2-3人为一组

10、,每人需要变换Master、Slaver角色,假设2台机器组成集群,Master节点为namenode,Slaver节点为datanode)首先简要地介绍集群环境集群环境中有两个结点,其中1个namenode相当于Master,1个datanode相当于Slaver,它们之间分布在局域网中,相互之间可以ping通。具体的IP地址为:namenode:222.30.21.15datanode: 222.30.21.230实验开始我是作为datanode,之后互换角色为namenode,为了节省篇幅,下面将两次的配置归并在一起,既包括namenode的配置也包括datanode的配置。配置jobt

11、rackermasters文件配置:222.30.21.230(加入namenode的IP地址)slaves文件配置:222.30.21.15(加入datanode的IP地址)在多机模式下运行wordcount例子,结果和单机伪并行一样,可参照单机的结果。5.安装eclipse和hadoop plugin for eclipse建立wordcount工程,编译示例程序wordcount.java,打包相关class文件,在Hadoop分布式环境下(伪分布模式或者多机模式均可)运行自己打包的wordcount,结果如下(结果2):编写的MapReduce程序执行结果如下(结果3):选取页面介绍页

12、面1(来自实验一):实现了客户端和服务端共享存储。页面2(来自实验三):Master(namenode)和Slaver(datanode)在建立连接之后,Master向Slaver复制数据。页面3(来自实验三):在namenode中执行jps,分别列出 JobTracker、Jps、SecondaryNamenode和Namenode的对应进程号;在datanode中执行jps,分别列出Datanode、Jps和TaskTracker的进程号。页面4(来自实验三):运行Hadoop自带的wordcount例子实验一预期花费时间3h,实际花费时间5h实验三预期花费时间6h,实际花费时间12h五、

13、实验遇到的问题及其解决方法实验一:客户端在连接iSCSI target时失败,之后服务端通过修改/etc/iet/ietd.conf 文件中节点的信息,把之前的绝对路径改为简单的字符串就解决了问题。实验三:1.在部署单机伪分布式模式Hadoop-HDFS时,通过JPS指令未发现DataNode,通过上网查询资料了解到,原因是由于进行操作时使用的是Root身份,系统默认会加上-jvm指令导致错误,可以通过切换至普通用户或修改/bin/hadoop文件来解决问题。2.小组两人无法通过SSH无密码方式访问对方,通过查询上网查阅资料,发现对密钥的指令认识不够全面,学习了一些新的指令操作,在解决问题之外

14、还学会了设置用户验证的方法,增强了访问的安全性。3. 我和同学经过很多方法之后始终无法部署多机Hadoop-HDFS,后来发现原因是在之前的操作中,我们是通过新建一个共同的用户名来保证所有参与集群的机器有相同的用户名,但是实际上我们应该在安装Ubuntu时设置同一用户名,这样所有的集群部署问题就迎刃而解了。4. 在设计mapreduce程序时,遇到无法将key值按从大到小输出以及无法将key和value交换位置输出的问题,后来是通过InverseMapper.class可以交换key和value,并修改IntWritable.Comparator使得可以按从大到小输出对。六、实验结论实验感想:

15、实验一相对而言步骤比较简单,但是通过进行实验一的操作,复习了linux的常用指令,为进行实验三打下了基础。实验三的步骤比较复杂,实现的模块和功能也比较多,因此在操作中遇到了很多问题。由于对于实验内容大家都不是特别了解,所以解决问题的方式主要是通过上网查阅资料。但是在尝试不同解决方案后,导致系统出现混乱,使得已经完成的结果也无法显示,最后不得不重装系统从头再来。因此,我意识到耐心和细心对于实验的重要性。实验中难免有问题出现,当问题比较少时我们往往能够轻松应对,但是一旦问题比较多就会显得急躁,我们要学会将问题各个击破,而非踌躇不前。同时细心也很重要,比如在实验三中我就曾把一个文件夹误删掉导致系统重装,浪费了很多时间和精力,以后要多加注意。实验收获:通过实验,了解了Hadoop和MapReduce的知识,同时也加深了对于Linux指令的认识和掌握。此外,也意识到了团队合作和讨论的必要性。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1