云计算实验报告.docx

上传人:wj 文档编号:2140927 上传时间:2023-05-02 格式:DOCX 页数:34 大小:2.61MB
下载 相关 举报
云计算实验报告.docx_第1页
第1页 / 共34页
云计算实验报告.docx_第2页
第2页 / 共34页
云计算实验报告.docx_第3页
第3页 / 共34页
云计算实验报告.docx_第4页
第4页 / 共34页
云计算实验报告.docx_第5页
第5页 / 共34页
云计算实验报告.docx_第6页
第6页 / 共34页
云计算实验报告.docx_第7页
第7页 / 共34页
云计算实验报告.docx_第8页
第8页 / 共34页
云计算实验报告.docx_第9页
第9页 / 共34页
云计算实验报告.docx_第10页
第10页 / 共34页
云计算实验报告.docx_第11页
第11页 / 共34页
云计算实验报告.docx_第12页
第12页 / 共34页
云计算实验报告.docx_第13页
第13页 / 共34页
云计算实验报告.docx_第14页
第14页 / 共34页
云计算实验报告.docx_第15页
第15页 / 共34页
云计算实验报告.docx_第16页
第16页 / 共34页
云计算实验报告.docx_第17页
第17页 / 共34页
云计算实验报告.docx_第18页
第18页 / 共34页
云计算实验报告.docx_第19页
第19页 / 共34页
云计算实验报告.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

云计算实验报告.docx

《云计算实验报告.docx》由会员分享,可在线阅读,更多相关《云计算实验报告.docx(34页珍藏版)》请在冰点文库上搜索。

云计算实验报告.docx

云计算原理课程

期末实践报告

题目:

Linux集群、MapReduce和CloudSim实践

成绩:

学号:

161440119

姓名:

罗滔

登录邮箱:

750785185@

任课老师:

许娟

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”部

分定义了该策略规则所涵盖的实体范围,而“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仪表板上,在【欢迎使用身份识别和访问管理/WelcometoIdentityandAccessManagement】

下方,您将看到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/终端节点名字,⽐比如:

-north-

51.回到LinuxEC2主机的终端,输⼊入以下命令:

$mysql–h-­p–uAWSMaster

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,形成的形式,然后交由reduce处理,reduce将相同key值(也就是word)的value值收集起来,形成的形式,之后再将这些1值加起来,即为用户名出现的个数,最后将这个对以TextOutputFormat的形式输出到HDFS中。

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,Iterablevalues,

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.waitForCompletion(true);

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2