虚拟化与云计算课程实验报告Hadoop平台搭建.docx
- 文档编号:28726935
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:22
- 大小:5.04MB
虚拟化与云计算课程实验报告Hadoop平台搭建.docx
《虚拟化与云计算课程实验报告Hadoop平台搭建.docx》由会员分享,可在线阅读,更多相关《虚拟化与云计算课程实验报告Hadoop平台搭建.docx(22页珍藏版)》请在冰豆网上搜索。
虚拟化与云计算课程实验报告Hadoop平台搭建
虚拟化与云计算
实
验
报
告
一、实验目的
1.实验题目:
配置和使用SAN存储
掌握在Linux上配置iSCSItarget服务的方法。
2.实验题目:
Hadoop&MapReduce
安装、部署、使用Hadoop-HDFS
配置运行MapReduce程序,使用MapReduce编程
二、实验内容
1.实验题目:
配置和使用SAN存储
配置在Linux上iSCSI实现两台机器间的共享存储。
2.实验题目:
Hadoop&MapReduce
1.掌握在集群上(使用虚拟机模拟)安装部署Hadoop-HDFS的方法。
2.掌握在HDFS运行MapReduce任务的方法。
3.理解MapReduce编程模型的原理,初步使用MapReduce模型编程。
三、实验步骤及实验结果
1.实验题目:
配置和使用SAN存储
在实验1中我作为主机提供共享存储空间,实验地点是在机房,但是由于我当时没有截图所以回寝室在自己的电脑上重做,以下为主机步骤:
确定以root身份执行以下步骤
sudosu–
安装iSCSITarget软件
修改/etc/default/iscsitarget
ISCSITARGET_ENABLE=true
创建共享存储
共享存储可以是logicalvolumes,imagefiles,harddrives,harddrivepartitionsorRAIDdevices
例如使用imagefile的方法,创建一个10G大小的LUN:
ddif=/dev/zeroof=/storage/bs=1024kcount=10240
1.5修改/etc/iet/
添加:
Target[username][password]
OutgoingUser
Lun0Path=/storage/,Type=fileio
AliasLUN1
#MaxConnections6
修改/etc/iet/
如果只允许特定IP的initiator访问LUN,则如下设置
如果任意initiator均可以访问,则:
ALLALL
启动/重启动iSCSItarget
/etc/iscsitargetstart
/etc/iscsitargetrestart
2.实验题目:
Hadoop&MapReduce
1.安装JDK——在实验中安装为OpenJDK6Runtime
2.
安装openssh-server,命令为:
sudoapt-getinstallopenssh-server,并检查sshserver是否已经启动:
ps-e|grepssh,如果只有ssh-agent那ssh-server还没有启动,需要/etc/sshstart,如果看到sshd那说明ssh-server已经启动了。
3.免密码ssh设置,确认能否不输入口令就用ssh登录localhost:
sshlocalhost
如果不输入口令就无法用ssh登陆localhost,执行下面的命令:
$ssh-keygen-trsa-f~/.ssh/id_rsa
cat~/.ssh/>>~/.ssh/authorized_keys
再次执行sshlocalhost,完成后请登入确认不用输入密码
4.安装Hadoop
解压Hadoop安装包到安装目录,在本实验中我新建了一个用户hadoop并把hadoop解压到home/hadoop文件夹下,在伪分布模式下使用的版本为,在分布模式下因为要与Eclipse兼容所以最终使用版本为,下面部分截图为版本为。
并编辑conf/,将JAVA_HOME设置为Java安装根路径
运行运行bin目录下的hadoop,如显示hadoop脚本的使用文档,说明安装已经完成。
如下图所示:
5.安装部署单机伪分布式模式Hadoop-HDFS
Hadoop可以在单节点上以伪分布式模式运行。
编辑/conf/
编辑/opt/hadoop/conf/
编辑/opt/hadoop/conf/
9001
格式化HDFS
bin/hadoopnamenode–format
启动Hadoop,启动后可使用命令jps查看已启动进程,观察是否namenode、datanode已启动,关闭所有服务,使用命令,bin/
6.浏览NameNode和JobTracker的网络接口,地址默认为:
NameNode--
fs-puthome/lee/桌面testfileinput
运行Hadoop自带的wordcount例子
bin/hadoopjarwordcountinputoutput
将输出文件从分布式文件系统拷贝到本地文件系统查看
bin/hadoopfs-getoutput/home/lee/文档
cat/home/lee/文档/output/*
7.安装部署多机Hadoop-HDFS
这个部署多机的实验在实验室没有做完,最后实在宿舍完成的,节点为两个,使用系统为wubi安装的Ubuntu,所以不需要桥接方式(因为有固定IP),以下步骤为我做为Master时的实验截图:
本机名为node1,另外一台机器为node2,两台机器均建立一个名为hadoop的管理员用户用于统一部署安装hadoop。
编辑文件/etc/hosts
ubuntu替换为node1
编辑/etc/hostname文件删除该文件的所有内容,添加node1
运行命令hostnamenode1
a)指定IP地址
编辑文件/etc/network/interfaces
autoeth0
ifaceeth0inetstatic
address
重启网络服务sudo/etc/networkingrestart
查看IP地址ifconfig
b)修改/etc/hosts文件
node1中:
node1
node2
node2中:
node1
node2
c)配置从node1无需输入密码ssh登录node1、node2,命令如下:
首先在node1、node2下建立home/hadoop/.ssh文件夹
在node1(master)上:
$ssh-keygen-trsa
$cat.ssh/>>.ssh/authorized_keys
这两行命令生成密钥并将公钥导出到authorized_keys中,然后将此文件拷贝到node2(slaves)中的相同文件夹下,因为通过网络命令拷贝比较困难所以我在这里用U盘拷贝的,之后就可以成功无密码登录node2
d)编辑/conf/
1.
试登录DFS分布式文件系统时显示无法连接;
解决方法:
经查此为版本问题,可能是由于Eclipse的版本太新而Hadoop版本没跟上所致;最后使用网上有人运行成功的eclipse和可以运行成功,正确添加node1节点;
2.头一天登录成功,第二天尝试再此登录的时候虽然显示各节点服务启动正常,但是在Eclipse中显示无法进入DFS文件系统,查看logs中的Namenode记录发现报错“couldonlybereplicatedto0nodes,insteadof1”;
解决办法:
经尝试此为节点启动顺序的问题,分别按顺序在node1和node2上开启namenode(node1)、datanode(node2)、jobtracker(node1)、tasktracker(node2),注意我在此处只能分别开启,如果使用全部自动开启的话就会出现上述问题中的启动所有节点正常但是无活节点可用的情况。
3.有时之后再此format之后再次启动会发现Namenode(或Datanode)无法启动成功;
解决办法:
此种错误出现的原因有:
(1)查看logs发现报错为“XXdoesnotexist”,说明我们在配置等文件中设置的文件夹路径不对或文件夹不存在;
(2)logs文件中提示“NameNodeisnotformatted”,即Namenode节点未成功格式化;
(3)“Hadoop在格式化一个新的分布式文件系统时,每个存储的名字空间都对应了建立时间的那个版本(可以查看/home/hadoop/name/current目录下的VERSION文件,上面记录了版本信息)”,因为重启节点后数据更新导致了Namenode和Datanode版本不一致;
针对以上三种情况的解决方案为:
(1)根据logs报错信息重新mkdir;
(2)重新hadoopnamenode–format;
(3)如上所述此为上一次的文件未清理导致文件不匹配的出现的错误导致节点服务关闭,这时我们要分别删除配置文件中设置的、、的文件夹下的目录清空并再此format即可;当然这不是最好的办法因为这样做会让上次上传的文件删除消失;更好的解决办法还在尝试;
五、实验结论
总体来说这次实验其实还是比较有趣的,有别于以前大多数时候做的纯编程,这次实验主要是实践环境上的配置,使用的技术也比较新;当然做的过程中比较苦恼,因为不太习惯Linux下的命令行模式以及log查询记录文档模式还有英文的一些API文档和提示信息,网上的信息也比较杂乱,致使差错、纠错比较耗费时间和精力;同时对于MapReduce编程模式的理解也花费了一定时间,不过也加深了我对分布式计算的理解;初步感觉MapReduce模式的有一些局限性,似乎只能处理能分解成
此次试验中参考的网站有:
1.Hadoop快速入门:
中ssh无密码配置,hadoop节点之间无密码登录使用Linux和Hadoop进行分布式计算
2.Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序分析hadoop的WordCount例子(转)WordCount改进实现正确识别单词以及词频降序排序使用常见问题以及解决方法集群配置
3.linux下安装hadoop并在windows下远程连接此hadoop,开发调试
4.IncompatiblenamespaceIDs...datanodenamespaceID...报错couldonlybereplicatedto0nodes,insteadof1新手求教:
couldonlybereplicatedto0nodes,insteadof1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 虚拟 计算 课程 实验 报告 Hadoop 平台 搭建