云计算实验报告.docx
- 文档编号:10854948
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:32
- 大小:1.81MB
云计算实验报告.docx
《云计算实验报告.docx》由会员分享,可在线阅读,更多相关《云计算实验报告.docx(32页珍藏版)》请在冰点文库上搜索。
云计算实验报告
云计算原理课程
期末实践报告
题目:
Linux集群、MapReduce和CloudSim实践
成绩:
学号:
161440119
XX:
罗滔
登录:
750785185qq.
任课老师:
许娟
2016年11月12日
实验一:
AWS身份与访问管理(P2~P11)
实验二:
AmazonRelationalDatabaseService(P11~P20)
实验三:
Hadoop实验报告(P21~)
AWS管理控制台
使用qwikLABS登录AWS管理控制台
6.在AWS管理控制台中,单击【服务/Services】,然后单击【IAM或身份与访问管理/
IAMorIdentity&AccessManagement】。
7.在IAM控制台的左侧面板中,单击【用户/Users】。
8.找到“userone”,然后单击其名称以显示有关该用户的详细信息。
在用户详细信息中,找到有关该用户的以下三方面的信息:
a.已向该用户分配了一个密码
b.该用户不属于任何组
c.目前没有任何策略与该用户关联(“附加到”该用户)
9.现在,单击左侧导航窗格中的【组/Groups】。
本实验的CloudFormation模板还创建了三个组。
在IAM控制台中的【用户/Users】仪表板中可以看到,
自动化CloudFormation脚本在创建这些组时为其提供了唯一的名称。
这些唯一名称包含以下字符串:
“EC2support”
“EC2admin”
“S3admin”
完整组名的格式如下所示:
arn:
aws:
iam:
:
596123517671:
group/spl66/qlstack2--labinstance--47090--666286a4--f8c--EC2support--GA9LGREA7X4S
从现在开始,我们在本实验中将使用上面这些简写名称来指代这些组。
您可以在【组/Groups】仪表板中搜
索子字符串,以便为后续实验操作确定正确的组。
10.单击“EC2support”对应的组名。
其格式应与上面的类似。
11.向下滚动至组详细信息页面中的【权限/Permissions】部分后,在【内联策略/InlinePolicies】部分,
可以看到一个名称为“EC2supportpolicy”的策略与该组关联。
在策略中,您可以规定将允许或拒绝对特定AWS资源执行哪些操作。
您可以使用自定义策略,或通过
选择AWS托管策略来使用一组预定义的权限。
12.虽然我们不会更改此策略,但请单击【编辑策略/EditPolicy】,使其显示在一个窗口中,以便您进行查
看和滚动。
请留意IAM策略中语句的基本结构。
“Action”部分指定了该服务内的AWS服务和功能。
“Resource”部
分定义了该策略规则所涵盖的实体X围,而“Effect”部分则定义了所需结果。
更多有关定义IAM策略的
信息,请访问“AWSIdentityandAccessManagement:
权限和策略”文档页面。
13.单击另外两个组(“EC2admin”和“S3admin”),查看附加到这两个组的策略。
您现在能否识别出附加到这些组的策略所允许的权限?
18.完成后,再次单击左侧面板中的【组/Groups】。
各组的【用户/Users】列中应显示“1”,表示各组中
的用户数。
设置自定义密码
替换和设置自定义密码
22.为“userone”设置一个密码,然后在临时的记事本文件中记下该密码。
24.重复上述步骤,为“usertwo”和“userthree”设置密码。
测试对S3的访问权限
您在本实验中使用的“awsstudent”用户所拥有的权限寥寥无几,例如,您可以访问S3仪表板,但无法查看
其中的存储桶。
立即对此进行测试:
25.在主AWS控制台上,单击【服务/Services】,然后单击【S3】。
26.您应该会看到三个存储桶。
尝试单击存储桶以查看其内容–您将无法查看其内容。
25.
28.在主IAM仪表板上,在【欢迎使用身份识别和访问管理/WeletoIdentityandAccessManagement】
下方,您将看到IAM用户登录。
复制此URL,然后将其粘贴到临时记事本文件中。
30.现在,您的记事本文件中应包含登录URL、完整的“userthree”登录名和密码。
在新的浏览器中,使用这些信息以“userthree”的身份登录。
31.您应该会看到标准的AWS控制台。
但是,在右上角,您的用户名不再是“awsstudent”,而是
“userthree”。
32.现在,访问S3服务仪表板。
您可以看到之前的三个存储桶,但现在,作为“S3admin”组的一部分,您可以查看这些存储桶、复制文件、创建新的存储桶和文件等。
实验二:
AmazonRelationalDatabaseService(P12~P21)
1.登录AWS管理控制台
登录之后,返回qwikLAB™⽹网
2.创建RelationalDatabaseService(RDS)实例要开始创建第⼀一个AmazonRDS实例,您需要访问Amazon管理控制台上的AmazonRDS图标,然后使⽤RelationalDatabaseService向导。
7.单击⾸首页上的AmazonRDS图标并转到该控制⾯面板。
8.单击“LaunchaDatabaseInstance/启动数据库实例”按钮来启动RDS向导。
9.单击MySQL数据库引擎类型对⾯面的“Select/选择”按钮。
10.看到该数据库是否⽤用于⽣生产⽬目的的询问时,选择“开发测试”单选按钮,然后单击“NextStep/下⼀一步”。
11.在接下来的“DBInstanceDetails/指定数据库详细信息”屏幕上,按以下内容进⾏行设置:
a.DBInstanceClass/数据库实例类
b.Multi--AZDeployment/多可⽤用区部署
c.AllocatedStorage/分配的存储空间:
5
d.DBInstanceIdentifier/数据库实例标识符:
RDSLab
e.MasterUsername:
/主⽤用户名AWSMaster
f.MasterPassword/主密码:
AWS12345
12.单击“NextStep/下⼀一步”。
13.在接下来的“AdditionalConfig/配置⾼高级设置”屏幕上,按以下内容进⾏行设置:
a.DatabaseName/数据库名称:
RDSLab
b.PublicallyAccessible/公开访问:
否
c.VPCSecurityGroup/VPC安全组:
选择包含⽂文本“qlstack”的安全组
14.在备份中,选择备份保留期为0天。
15.单击“LaunchDBInstance/启动数据库实例”。
从亚马逊系统映像(AMI)创建AmazonLinux实例
要开始创建第⼀一个Amazon实例,您需要访问Amazon管理控制台上的AmazonEC2图标,然后使⽤用向导。
16.返回AWS管理控制台(它在浏览器中仍是打开的)。
17.单击AWS管理控制台⾸首页上的EC2图标。
18.单击“Instances/实例”来创建实例。
19.单击“LaunchInstance/启动实例”按钮来开始该过程。
20.在第⼀一个对话窗⼜.口中,步骤1:
选择⼀一个Amazon系统映像,然后单击该AMI旁边的“Select/选.”来选择AmazonLinuxAMI实例。
注意:
确认是64位的映像。
21.步骤2:
使实例类型保留默认设置,即t2.micro。
要继续,则单击“Next:
ConfigureInstanceDetails/下⼀一
步:
配置实例详细信息”。
22.步骤3:
ConfigureInstanceDetails/配置实例详细信息,我们将保留所有默认选项,并单击“Next:
AddStorage/下⼀一步:
添加存储”。
23.步骤4:
AddStorage/添加存储,保留默认虚拟拟硬。
单击“Next:
TagInstance/下⼀一步:
标签实例”。
注意:
您可以在此轻松增加更多虚拟硬盘或更改硬盘⼤大⼩小。
24.步骤5:
TagInstance/标.实例,使⽤标签实例界⾯面为实例命名。
您将注意到左边⽂文本框填充了标签的名字为Name,右边.文本框为空。
在空⽂文,键⼊入名称,例如“EC2FreeLab”并单击“Next:
Configure
SecurityGroup/下⼀一步:
配置安全组。
25.步骤6:
ConfigureSecurityGroup/配置安全组,接受默认安全组,因为它允许通过端⼜⼝口22(SSH)从任意位置连接此Linux实例,单击“ReviewandLaunch/审核和启.
26.步骤7:
通过“ReviewInstanceLaunch/审核和启.动”,您可以获取全部设置的概览。
。
单击“Launch/启动”以继续。
27.QwikLab⾃自动.您⽣生成的密钥.应.自动填第⼆二个下拉框。
28.单击“acknowledgement/确认”复选框,声明。
29.现在,单.“LaunchInstance/启.实例。
30.单击“ViewInstances/查看实例。
40.将ec2--user键⼊入HostName字段,然后将您复制到剪贴板板的连接字符串粘贴到42.单击单词“Auth”选择“Auth”类(⽽而不是单词“Auth”旁边的+符号)。
43.单击“Browse”。
44.浏览到您稍早在本实验中保存.ppk⽂文件的位置。
45.选择您下载的.ppk⽂文件。
46.单击“Open”。
47.在PuTTY客户端,单击“Open”。
48.出现提⽰示时,单击“Yes”允许PuTTY缓存服务器的主机键。
您已成功登录了Linux主机!
50.回到RDS页⾯面,选中并展开之前创建的RDS实例。
50.记录下Endpoint/终端节点名字,⽐比如:
rdslab.c1ai7ipiurq5.rds.-north-1.amazonaws..
51.回到LinuxEC2主机的终端,输⼊入以下命令:
$mysql–h
52.在密码的提⽰示符下输⼊入AWS12345
53.然后在mysql>提⽰示符下输⼊入showdatabases;;并检查结果。
54.您现在已将MySQL客户端连接到您新创建的RDS实例。
恭喜您!
Hadoop云计算实验报告(P21-)
1、实验目的
在虚拟机Ubuntu上安装Hadoop单机模式和集群;
编写一个用Hadoop处理数据的程序,在单机和集群上运行程序。
2、实验环境
虚拟机:
VMware9
操作系统:
ubuntu-12.04-server-x64
Hadoop和Jdk和Eclipse
Hadoop集群:
一台namenode主机master,一台datanode主机salve,
master主机IP为10.5.110.223,slave主机IP为10.5.110.207。
3、主要设计思路
在ubuntu操作系统下,安装必要软件和环境搭建,使用eclipse编写程序代码。
实现大数据的统计。
本次实验是统计软件代理系统操作人员处理的信息量,即每个操作人员出现的次数。
4、算法设计
该算法首先将输入文件都包含进来,然后交由map程序处理,map程序将输入读入后切出其中的用户名,并标记它的数目为1,形成
5、安装实验环境
5.1安装ubuntu操作系统
1)打开VMware,在Hometab中单击“CreateaNewVirtualMachine”,
2)选择custom,选择虚拟硬件版本Workstation9.0,选择ios文件,next,
3)录入目标操作系统信息,包括Fullname、Uername和Password,next,
4)选择默认的选项,一般不做更改,最后确认信息,Finish,
5)安装成功后,会看到如下画面,
5.2安装配置Samba
安装samba主要为了实现与windows操作系统的通讯,由于server版本的ubuntu没有自带图形操作界面,所以下载资料等操作不太方便,这也是安装samba的目的之一。
1)安装samba,输入如下命令:
2)安装vim
3)创建共享目录,并修改权限
4)配置samba。
修改samba的配置文件/etc/samba/smb.conf,将security=share,并在文件的末尾追加如下内容,
5)测试。
在windows实机中,通过ip访问ubuntu虚拟机,可以见到share文件夹
5.3安装配置JDK
首先,下载java开发工具包JDK。
在本次试验中,我们下载的版本是jdk-7u80-linux-x64.gz。
解压安装到/usr/lib/jvm/目录下,更名为java-7-sun。
配置环境变量/etc/environment,
使配置生效
测试安装配置结果
5.4在单节点(伪分布式)环境下运行HADOOP
1)添加Hadoop用户并赋予sudo权限
2)安装配置SSH
切换至hadoop用户,
配置密钥,使得hadoop用户能够无须输入密码,通过SSH访问localhost,
测试结果:
3)安装配置Hadoop
首先下载Hadoop,解压缩到/opt/hadoop目录下,本次试验中我们下载的版本是hadoop-1.2.1-bin.tar.gz,更改目录名称为hadoop。
修改与hadoop相关的配置文件(在/opt/hadoop/conf目录下),分别是core-site.xml,hadoop-env.sh,hdsf-site.xml,mapred-site.xml。
在此不一一列举。
4)运行Hadoop
首先格式化HDFS,
启动单节点集群,
通过jps查看,
master
slave
停止单节点集群,
5.5在多节点(分布式)环境下运行HADOOP
1)设置/etc/hosts文件
实验中两台机器处于同一局域网中,其中一台作为master,ip地址为10.5.110.223,一台作为slave,ip地址为10.5.110.207,修改两台机器的/etc/hosts文件,
2)设置节点之间无密码SSH登陆
验证配置SSH是否正确
3)修改集群配置文件
修改master的masters、slaves,修改所有节点的core-site.xml,hdsf-site.xml,mapred-site.xml,在此不一一列出。
4)在master上格式化HDFS
5)启动和停止集群
启动集群,
在master上启动HDFS后,jps结果如下:
master
slave
在master上启动mapreduce后,jps结果如下:
master
slave
停止集群
6、运行程序
1.在单机上运行程序
(1)在Eclipse下,新建map/reduce工程
(2)新建一个java类UserNameCount,编写代码
(3)运行程序,结果如下:
(4)在eclipse中编译好源代码后,导出程序的jar包,供在集群上使用。
2.在集群上运行程序
(1)启动集群,通过jps命令查看master,slave上启动的服务列表,结果如下:
(2)在集群环境下运行该程序jar包(UserNameCount.jar),结果如下:
(3)查看集群环境下启动程序生成的结果,即output文件,结果如下:
(4)数据统计结果在part-r-00000中,具体内容如下,
7、源代码:
packagehadoop;
importjava.io.IOException;
importjava.util.StringTokenizer;
importorg.apache.hadoop.conf.Configuration;
importorg.apache.hadoop.fs.Path;
importorg.apache.hadoop.io.IntWritable;
importorg.apache.hadoop.io.LongWritable;
importorg.apache.hadoop.io.Text;
importorg.apache.hadoop.mapreduce.Job;
importorg.apache.hadoop.mapreduce.Mapper;
importorg.apache.hadoop.mapreduce.Reducer;
importorg.apache.hadoop.mapreduce.lib.input.FileInputFormat;
importorg.apache.hadoop.mapreduce.lib.input.TextInputFormat;
importorg.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
importorg.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
publicclassUserNameCount{
publicstaticclassUserNameCountMapextends
Mapper
privatefinalIntWritableone=newIntWritable
(1);
privateTextword=newText();
publicvoidmap(LongWritablekey,Textvalue,Contextcontext)
throwsIOException,InterruptedException{
Stringline=value.toString();
StringTokenizertoken=newStringTokenizer(line);
while(token.hasMoreTokens()){
word.set(token.nextToken());
context.write(word,one);
}
}
}
publicstaticclassUserNameCountReduceextends
Reducer
publicvoidreduce(Textkey,Iterable
Contextcontext)throwsIOException,InterruptedException{
intsum=0;
for(IntWritableval:
values){
sum+=val.get();
}
context.write(key,newIntWritable(sum));
}
}
publicstaticvoidmain(String[]args)throwsException{
Configurationconf=newConfiguration();
Jobjob=newJob(conf);
job.setJarByClass(UserNameCount.class);
job.setJobName("usernamecount");
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
job.setMapperClass(UserNameCountMap.class);
job.setReducerClass(UserNameCountReduce.class);
job.setInputFormatClass(TextInputFormat.class);
job.setOutputFormatClass(TextOutputFormat.class);
FileInputFormat.addInputPath(job,newPath(args[0]));
FileOutputFormat.setOutputPath(job,newPath(args[1]));
job.waitForpletion(true);
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 实验 报告