虚拟化与云计算课程实验报告——Hadoop平台搭建

虚拟化与云计算课程实验报告——Hadoop平台搭建
虚拟化与云计算课程实验报告——Hadoop平台搭建

虚拟化与云计算

目录

一、实验目标 (1)

二、实验内容 (1)

三、实验步骤 (1)

四、实验遇到的问题及其解决方法 (24)

五、实验结论 (25)

一、实验目的

1.实验题目:配置和使用SAN存储

掌握在Linux上配置iSCSI target服务的方法。

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中我作为主机提供共享存储空间,实验地点是在机房,但是由于我当时没有截图所以回寝室在自己的电脑上重做,以下为主机步骤:

1.1 确定以root身份执行以下步骤

sudo su –

1.2 安装iSCSI Target软件

1.3 修改/etc/default/iscsitarget

ISCSITARGET_ENABLE=true

1.4 创建共享存储

共享存储可以是logical volumes, image files, hard drives , hard drive partitions or RAID devices

例如使用image file的方法,创建一个10G大小的LUN:

dd if=/dev/zero of=/storage/lun1.img bs=1024k count=10240

1.5修改/etc/iet/ietd.conf

添加:

Target https://www.360docs.net/doc/0e4030274.html,.example:storage.lun1

IncomingUser [username] [password]

OutgoingUser

Lun 0 Path=/storage/lun1.img,Type=fileio

Alias LUN1

#MaxConnections 6

1.6 修改/etc/iet/initiators.allow

如果只允许特定IP的initiator访问LUN,则如下设置

https://www.360docs.net/doc/0e4030274.html,.example:storage.lun1 192.168.0.100

如果任意initiator均可以访问,则:

ALL ALL

1.6 启动/重启动iSCSI target

/etc/init.d/iscsitarget start

/etc/init.d/iscsitarget restart

2.实验题目:Hadoop&MapReduce

1.安装JDK——在实验中安装为OpenJDK 6 Runtime

2.安装openssh-server,命令为:sudo apt-get install openssh-server,

并检查ssh server是否已经启动:ps -e | grep ssh,如果只有ssh-agent 那ssh-server还没有启动,需要/etc/init.d/ssh start,如果看到sshd 那说明ssh-server已经启动了。

3.免密码ssh设置,确认能否不输入口令就用ssh登录localhost:

ssh localhost

如果不输入口令就无法用ssh登陆localhost,执行下面的命令:

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

再次执行ssh localhost,完成后请登入确认不用输入密码

4.安装Hadoop

解压Hadoop安装包到安装目录,在本实验中我新建了一个用户hadoop 并把hadoop解压到home/hadoop文件夹下,在伪分布模式下使用的版本为

0.20.203,在分布模式下因为要与Eclipse兼容所以最终使用版本为0.20.2,

下面部分截图为版本为0.20.203。

并编辑conf/hadoop-env.sh,将JA V A_HOME设置为Java安装根路径运行运行bin目录下的hadoop,如显示hadoop 脚本的使用文档,说明安装

已经完成。如下图所示:

5.安装部署单机伪分布式模式Hadoop-HDFS

Hadoop可以在单节点上以伪分布式模式运行。

编辑/conf/core-site.xml

https://www.360docs.net/doc/0e4030274.html,

hdfs://localhost:9000

hadoop.tmp.dir

/tmp/hadoop/hadoop-${https://www.360docs.net/doc/0e4030274.html,}

编辑/opt/hadoop/conf/hdfs-site.xml

dfs.replication

1

编辑/opt/hadoop/conf/mapred-site.xml

mapred.job.tracker

localhost:9001

格式化HDFS

bin/hadoop namenode –format

启动Hadoop,启动后可使用命令jps查看已启动进程,观察是否namenode、datanode已启动,关闭所有服务,使用命令stop-all.sh,bin/ start-all.sh

6.浏览NameNode和JobTracker的网络接口,地址默认为:

NameNode - http://localhost:50070/

JobTracker - http://localhost:50030/

7. 下面尝试在单机伪分布模式下运行wordcount 样例程序

将输入文件拷贝到分布式文件系统

bin/hadoop fs -put home/lee/桌面testfile input

运行Hadoop 自带的wordcount 例子

bin/hadoop jar hadoop-examples-0.20.203.0.jar wordcount input output

将输出文件从分布式文件系统拷贝到本地文件系统查看

bin/hadoop fs -get output /home/lee/文档

cat /home/lee/文档/output/*

8.安装部署多机Hadoop-HDFS

这个部署多机的实验在实验室没有做完,最后实在宿舍完成的,节点为两个,使用系统为wubi安装的Ubuntu,所以不需要桥接方式(因为有固定IP),以下步骤为我做为Master时的实验截图:

本机名为node1,另外一台机器为node2,两台机器均建立一个名为hadoop的管理员用户用于统一部署安装hadoop。

编辑文件/etc/hosts

127.0.1.1 ubuntu替换为127.0.1.1 node1

编辑 /etc/hostname文件删除该文件的所有内容,添加node1

运行命令 hostname node1

a)指定IP地址

编辑文件/etc/network/interfaces

auto eth0

iface eth0 inet static

address 115.24.250.196

netmask 255.255.255.0

重启网络服务sudo /etc/init.d/networking restart 查看IP地址 ifconfig

b)修改/etc/hosts文件

node1中:

115.24.250.196 node1

115.24.250.43 node2

node2中:

115.24.250.196 node1

115.24.250.43 node2

c)配置从node1无需输入密码ssh登录node1、node2,命令如下:

首先在node1、node2下建立home/hadoop/.ssh文件夹

在node1(master)上:$ssh-keygen -t rsa

$cat .ssh/id_rsa.pub >> .ssh/authorized_keys 这两行命令生成密钥并将公钥导出到authorized_keys中,然后将此文件拷贝到node2(slaves)中的相同文件夹下,因为通过网络命令拷贝

比较困难所以我在这里用U盘拷贝的,之后就可以成功无密码登录node2

d)编辑/conf/core-site.xml

//此处为了方便查找我更改了hadoop.tmp.dir的文件目录,改为/home/hadoop/tmp

https://www.360docs.net/doc/0e4030274.html,

hdfs://node1:9000

hadoop.tmp.dir

/home/hadoop/tmp

e)编辑 /opt/hadoop/conf/hdfs-site.xml,其中

//这里我们将dfs.data.dir改为/home/hadoop/data

//将https://www.360docs.net/doc/0e4030274.html,.dir的默认文件夹改为/home/hadoop/name

https://www.360docs.net/doc/0e4030274.html,.dir

/home/hadoop/name

dfs.data.dir

/home/hadoop/data

dfs.replication

2

f)编辑 /opt/hadoop/conf/mapred-site.xml

mapred.job.tracker

node1:9001

g)配置jobtracker

masters文件配置如下:

node1

slaves文件配置如下:

node2

在主节点编辑hadoop的配置之后,将其拷贝到node2 的对应目录(U盘)h)格式化HDFS

bin/hadoop namenode -format

i)启动Hadoop,启动后可使用命令jps查看namenode和datanode上已启

动进程,观察是否namenode、datanode已启动,关闭所有服务,使用命令stop-all.sh,再分别按顺序在node1和node2上开启namenode

(node1)、datanode(node2)、jobtracker(node1)、tasktracker(node2),注意我在此处只能分别开启,如果使用start-all.sh全部自动开启的话启动所有节点正常但是无活节点可用,可能与启动顺序有关,成功之后

截图如下:

j)浏览NameNode和JobTracker的网络接口,地址默认为:

NameNode - http://node1:50070/

JobTracker -

http://node1:50030/

9.安装eclipse和hadoop plugin for eclipse

这里经过反复测试发下到现在为止只使用了eclipse 3.3和hadoop

0.20.2-plugin插件可以配置成功,最新版本均不能配置成功。

具体做法是下载eclipse解压之后将hadoop安装路径下的contrib的下的jar 插件复制到eclipse文件夹下的plugins文件夹下即可在eclipse下成功安装插件。

10.新建MapReduce工程,并在eclipse中下方的Map/Reduce Locations 下新建

刚刚添加好的node1并配置如下:

hadoop实验报告

基于hadoop的大规模文本处理技术实验专业班级:软件1102 学生姓名:张国宇 学号: Setup Hadoop on Ubuntu 11.04 64-bit 提示:前面的putty软件安装省略;直接进入JDK的安装。 1. Install Sun JDK<安装JDK> 由于Sun JDK在ubuntu的软件中心中无法找到,我们必须使用外部的PPA。打开终端并且运行以下命令: sudo add-apt-repository ppa:ferramroberto/java sudo apt-get update sudo apt-get install sun-java6-bin sudo apt-get install sun-java6-jdk Add JAVA_HOME variable<配置环境变量>: 先输入粘贴下面文字: sudo vi /etc/environment 再将下面的文字输入进去:按i键添加,esc键退出,X保存退出;如下图: export JAVA_HOME="/usr/lib/jvm/java-6-sun-1.6.0.26" Test the success of installation in Terminal<在终端测试安装是否成功>: sudo . /etc/environment

java –version 2. Check SSH Setting<检查ssh的设置> ssh localhost 如果出现“connection refused”,你最好重新安装 ssh(如下命令可以安装): sudo apt-get install openssh-server openssh-client 如果你没有通行证ssh到主机,执行下面的命令: ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 3. Setup Hadoop<安装hadoop> 安装 apache2 sudo apt-get install apache2 下载hadoop: 1.0.4 解压hadoop所下载的文件包: tar xvfz hadoop-1.0.4.tar.gz 下载最近的一个稳定版本,解压。编辑/ hadoop-env.sh定义java_home “use/library/java-6-sun-1.6.0.26”作为hadoop的根目录: Sudo vi conf/hadoop-env.sh 将以下内容加到文件最后: # The java implementation to use. Required. export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.26

Hadoop云计算实验报告

Hadoop云计算实验报告

Hadoop云计算实验报告 1实验目的 在虚拟机Ubuntu上安装Hadoop单机模式和集群; 编写一个用Hadoop处理数据的程序,在单机和集群上运行程序。 2实验环境 虚拟机:VMware 9 操作系统:ubuntu-12.04-server-x64(服务器版),ubuntu-14.10-desktop-amd64(桌面版)Hadoop版本:hadoop 1.2.1 Jdk版本:jdk-7u80-linux-x64 Eclipse版本:eclipse-jee-luna-SR2-linux-gtk-x86_64 Hadoop集群:一台namenode主机master,一台datanode主机salve, master主机IP为10.5.110.223,slave主机IP为10.5.110.207。 3实验设计说明 3.1主要设计思路 在ubuntu操作系统下,安装必要软件和环境搭建,使用eclipse编写程序代码。实现大数据的统计。本次实验是统计软件代理系统操作人员处理的信息量,即每个操作人员出现的次数。程序设计完成后,在集成环境下运行该程序并查看结果。 3.2算法设计 该算法首先将输入文件都包含进来,然后交由map程序处理,map程序将输入读入后切出其中的用户名,并标记它的数目为1,形成的形式,然后交由reduce处理,reduce 将相同key值(也就是word)的value值收集起来,形成的形式,之后再将这些1值加起来,即为用户名出现的个数,最后将这个对以TextOutputFormat 的形式输出到HDFS中。 3.3程序说明 1) UserNameCountMap类继承了org.apache.hadoop.mapreduce.Mapper,4个泛型类 型分别是map函数输入key的类型,输入value的类型,输出key的类型,输出value 的类型。 2) UserNameCountReduce类继承了org.apache.hadoop.mapreduce.Reducer,4个泛 型类型含义与map类相同。 3) main函数通过addInputPath将数据文件引入该类,在通过setOutputPath将生成 结果转为一个文件,实现生成结果,即统计结果的查看。 FileInputFormat.addInputPath(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); 程序具体代码如附件中源程序。

Hadoop云计算平台实验报告V1.1

Hadoop云计算平台实验报告V1.1

目录 1实验目标 (3) 2实验原理 (4) 2.1H ADOOP工作原理 (4) 2.2实验设计 (6) 2.2.1可扩展性 (6) 2.2.2稳定性 (7) 2.2.3可靠性 (7) 3实验过程 (9) 3.1实验环境 (9) 3.1.1安装Linux操作系统 (10) 3.1.2安装Java开发环境 (14) 3.1.3安装SSH (15) 3.1.4配置网络 (15) 3.1.5创建SSH密钥安全联机 (19) 3.1.6配置Hadoop云计算系统 (19) 3.1.7配置Slaves节点 (23) 3.1.8格式化Hadoop系统 (23) 3.1.9启动Hadoop集群 (23) 3.22.实验过程 (25) 3.2.1可扩展性 (25) 3.2.1.1动态扩展 (25) 3.2.1.2动态缩减 (27) 3.2.2稳定性 (28) 3.2.3可靠性 (31) 3.2.4MapReduce词频统计测试 (32) 4实验总结 (35)

1. 掌握Hadoop安装过程 2. 理解Hadoop工作原理 3. 测试Hadoop系统的可扩展性 4. 测试Hadoop系统的稳定性 5. 测试Hadoop系统的可靠性

2.1Hadoop工作原理 Hadoop是Apache开源组织的一个分布式计算框架,可以在大量廉价的硬件设备组成集群上运行应用程序,为应用程序提供一组稳定可靠的接口,旨在构建一个具有高可靠性和良好扩展性的分布式系统。Hadoop框架中最核心的设计就是:MapReduce和HDFS。MapReduce 的思想是由Google的一篇论文所提及而被广为流传的,简单的一句话解释MapReduce就是“任务的分解与结果的汇总”。HDFS是Hadoop分布式文件系统(Hadoop Distributed File System)的缩写,为分布式计算、存储提供了底层支持。 HDFS采用C/S架构,对外部客户机而言,HDFS就像一个传统的分级文件系统。可以对文件执行创建、删除、重命名或者移动等操作。HDFS中有三种角色:客户端、NameNode和DataNode。HDFS的结构示意图见图1。 NameNode是一个中心服务器,存放着文件的元数据信息,它负责管理文件系统的名字空间以及客户端对文件的访问。DataNode节点负责管理它所在节点上的存储。NameNode对外暴露了文件系统的名字空间,用户能够以文件的形式在上面存储数据。从内部看,文件被分成一个或多个数据块,这些块存储在一组DataNode上,HDFS通过块的划分降低了文件存储的粒度,通过多副本技术和数据校验技术提高了数据的高可靠性。NameNode执行文件系统的名字空间操作,比如打开、关闭、重命名文件或目录。它也负责确定数据块到具体DataNode节点的映射。DataNode负责存放数据块和处理文件系统客户端的读写请求。在NameNode的统一调度下进行数据块的创建、删除和复制。

云计算实验报告

期末实践报告 题目:Linux集群、MapReduce和 CloudSim实践 成绩: 学号:161440119 姓名:罗滔 登录邮箱:750785185@https://www.360docs.net/doc/0e4030274.html, 任课老师:许娟 2016年11月12日 目录 实验一:AWS身份与访问管理(P2~P11)实验二:Amazon Relational Database Service(P11~P20) 实验三:Hadoop实验报告(P21~)

AWS 管理控制台 使用 qwikLABS 登录 AWS 管理控制台 6. 在 AWS 管理控制台中,单击【服务/Services】,然后单击【IAM 或身份与访问管理/ IAM or Identity & Access Management】。 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--GA9LGREA 7X4S 从现在开始,我们在本实验中将使用上面这些简写名称来指代这些组。您可以在【组/Groups】仪表板中搜 索子字符串,以便为后续实验操作确定正确的组。 10. 单击“EC2support”对应的组名。其格式应与上面的类似。 11. 向下滚动至组详细信息页面中的【权限/Permissions】部分后,在【内联策略/Inline Policies】部分, 可以看到一个名称为“EC2supportpolicy”的策略与该组关联。 在策略中,您可以规定将允许或拒绝对特定 AWS 资源执行哪些操作。您可以使用自定义策略,或通过 选择 AWS 托管策略来使用一组预定义的权限。 12. 虽然我们不会更改此策略,但请单击【编辑策略/Edit Policy】,使其显示在一个窗口中,以便您进行查 看和滚动。 请留意 IAM 策略中语句的基本结构。“Action”部分指定了该服务内的 AWS 服务和功能。“Resource”部 分定义了该策略规则所涵盖的实体范围,而“Effect”部分则定义了所需结果。更多有关定义 IAM 策略的 信息,请访问“AWS Identity and Access Management:权限和策略”文档页面。

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

实验报告 课程名称虚拟化与云计算学院计算机学院 专业班级11级网络工程3班学号3211006414 姓名李彩燕 指导教师孙为军 2014 年12 月03日

EXSI 5.1.0安装 安装准备 安装VSPHERE HYPERVISOR SEVER(EXSI 5.1.0)需要准备: 无操作系统的机器(如有系统,安装过程中会格式化掉),需切换到光盘启动模式。BOIS中开启虚拟化设置(virtualization设置成enable) VMware vSphere Hypervisor 自启动盘 安装过程 1.安装VMware vSphere Hypervisor确保机器中无操作系统,并且设置BIOS到光盘启 动模式 2.插入光盘,引导进入安装界面。 3.选择需要安装在硬盘 4.选择keyboard 类型,默认US DEFAULT

5.设置ROOT的密码 6.安装完毕后,请注意弹出光盘。然后重启。 7.F2进入系统配置界面。

8.选择到Configure management network去配置网络。

9.配置完毕后,注意重启网络以使设置生效,点击restart management network,测 试网络设置是否正确,点test management network。至此,sever端安装完毕。配置 1.添加机器名:在DNS服务器上添加相关正反解析设置。 2.License设置:Vsphere client登陆后,清单→配置→已获许可的功能→编辑 输入license

3.时间与NTP服务设置:Vsphere client登陆后,清单→配置→时间配置→属性 钩选上NTP客户端 选项中,NTP设置设添加NTP服务器,然后在常规中开启NTP服务

Hadoop云计算实验报告

云计算实验报告Hadoop 云计算实验报告Hadoop 实验目的1在虚拟机上安装单机模式和集群;Ubuntu Hadoop编写一个用处理数据的程序,在单机和集群上运行程序。Hadoop 实验环境2虚拟机:9VMware(桌面(服务器版),操作系统: -desktop--server-x64amd64ubuntu-14.10ubuntu-12.04 版)版本: 1.2.1hadoop Hadoop版本: x647u80-linuxJdk -jdk-版本:x86_64-gtk-jee-luna-SR2-linuxEclipse eclipse-,主机集群:一台主机,一台mastersalve datanodeHadoop namenode 。,主机为主机为master IP IP 10.5.110.22310.5.110.207slave 实验设计说明3 主要设计思路 3.1 eclipse编写程序代码。实现在ubuntu操作系统下,安装必要软件和环境搭建,使用大数据的统计。本次实验是统计软件代理系统操作人员处理的信息量,即每个操作人员出现的次数。程序设计完成后,在集成环境下运行该程序并查看结果。算法设计 3.2 程序将输入读入后该算法首先将输入文件都包含进来,然后交由map程序处理,map处理,切出其中的用户名,并标记它的数目为1,形成的形式,然后交由reduce值收集起来,形成的形式,(reduce将相同key值也就是word)的value1值加起来,即为用户名出现的个数,最后将这个对以之后再将这些中。的形式输出到HDFSTextOutputFormat 程序说明 3.3 4个泛型类类继承了1)UserNameCountMap org.apache.hadoop.mapreduce.Mapper,的类型,输出的类型,输入value的类型,输出key函数输入型分别是map key value的类型。个泛,4org.apache.hadoop.mapreduce.ReducerUserNameCountReduce2)类继承了 类相同。map型类型含义与

hadoop倒排索引实验报告

大数据技术概论实验报告 作 业 三 姓名:郭利强 专业:工程管理专业 学号: 2015E8009064028

目录 1.实验要求 (3) 2.环境说明 (4) 2.1系统硬件 (4) 2.2系统软件 (4) 2.3集群配置 (4) 3.实验设计 (4) 3.1第一部分设计 (4) 3.2第二部分设计 (6) 4.程序代码 (11) 4.1第一部分代码 (11) 4.2第二部分代码 (17) 5.实验输入和结果 (21) 实验输入输出结果见压缩包中对应目录 (21)

1.实验要求 第一部分:采用辅助排序的设计方法,对于输入的N个IP网络流量文件,计算得到文件中的各个源IP地址连接的不同目的IP地址个数,即对各个源IP地址连接的目的IP地址去重并计数 举例如下: 第二部分:输入N个文件,生成带详细信息的倒排索引 举例如下,有4个输入文件: – d1.txt: cat dog cat fox – d2.txt: cat bear cat cat fox – d3.txt: fox wolf dog – d4.txt: wolf hen rabbit cat sheep 要求建立如下格式的倒排索引: – cat —>3: 4: {(d1.txt,2,4),(d2.txt,3,5),(d4.txt,1,5)}–单词—>出现该单词的文件个数:总文件个数: {(出现该单词的文件名,单词在该文件中的出现次数,该文件的总单词数),……}

2.环境说明 2.1系统硬件 处理器:Intel Core i3-2350M CPU@2.3GHz×4 内存:2GB 磁盘:60GB 2.2系统软件 操作系统:Ubuntu 14.04 LTS 操作系统类型:32位 Java版本:1.7.0_85 Eclipse版本:3.8 Hadoop插件:hadoop-eclipse-plugin-2.6.0.jar Hadoop:2.6.1 2.3集群配置 集群配置为伪分布模式,节点数量一个 3.实验设计 3.1第一部分设计

云计算实验报告

云计算实验报告 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

云计算原理课程 期末实践报告 题目:Linux集群、MapReduce和 CloudSim实践 成绩: 学号: 姓名:罗滔 登录邮箱: 任课老师:许娟 2016年11月12日 目录 实验一:AWS身份与访问管理(P2~P11)实验二:Amazon Relational Database Service(P11~P20) 实验三:Hadoop实验报告(P21~) AWS 管理控制台

使用 qwikLABS 登录 AWS 管理控制台 6. 在 AWS 管理控制台中,单击【服务/Services】,然后单击【IAM 或身份与访问管理/ IAM or Identity & Access Management】。 7. 在 IAM 控制台的左侧面板中,单击【用户/Users】。 8. 找到“userone”,然后单击其名称以显示有关该用户的详细信息。在用户详细信息中,找到有关该用户的以下三方面的信息: a. 已向该用户分配了一个密码 b. 该用户不属于任何组

c. 目前没有任何策略与该用户关联(“附加到”该用户) 9. 现在,单击左侧导航窗格中的【组/Groups】。 本实验的 CloudFormation 模板还创建了三个组。在 IAM 控制台中的【用户/Users】仪表板中可以看到, 自动化 CloudFormation 脚本在创建这些组时为其提供了唯一的名称。这些唯一名称包含以下字符串: “EC2support” “EC2admin” “S3admin” 完整组名的格式如下所示: EC2support--GA9LGREA7X4S 从现在开始,我们在本实验中将使用上面这些简写名称来指代这些组。您可以在【组/Groups】仪表板中搜 索子字符串,以便为后续实验操作确定正确的组。 10. 单击“EC2support”对应的组名。其格式应与上面的类似。 11. 向下滚动至组详细信息页面中的【权限/Permissions】部分后,在【内联策略/Inline Policies】部分, 可以看到一个名称为“EC2supportpolicy”的策略与该组关联。 在策略中,您可以规定将允许或拒绝对特定 AWS 资源执行哪些操作。您可以使用自定义策略,或通过 选择 AWS 托管策略来使用一组预定义的权限。 12. 虽然我们不会更改此策略,但请单击【编辑策略/Edit Policy】,使其显示在一个窗口中,以便您进行查

Hadoop云计算实验——数据去重

hadoop云计算实验报告数据去重 实验名称:数据去重 实验目的: 1、基本了解一个Hadoop程序的结构、编译、封装、运行、查看结果等流程 2、掌握并利用并行化编程思想对数据做有意义的筛选 问题描述: 编写Mapreduce程序读取文本文件,去掉所有数据中的重复数据后输出结果。 实验要求: 1、完成Mapreduce程序,测试其对数据的筛选能力。 输入:输入是一组文本文件,在每个输入文件中每一行是一个数据。每一个元数据都是一个字符串 输出:输出文件的每一行都是在输入文件中出现过的一个数据,并且输出文件中的每一行都不相同。 【数据样例】 输入: input1: 2006-6-9 a 2006-6-10 b 2006-6-11 c 2006-6-12 d 2006-6-13 a 2006-6-14 b 2006-6-15 c 2006-6-11 c input2: 2006-6-9 b 2006-6-10 a 2006-6-11 b 2006-6-12 d 2006-6-13 a 2006-6-14 c 2006-6-15 d 2006-6-11 c 输出: 2006-6-10 a 2006-6-10 b

2006-6-11 b 2006-6-11 c 2006-6-12 d 2006-6-13 a 2006-6-14 b 2006-6-14 c 2006-6-15 c 2006-6-15 d 2006-6-9 a 2006-6-9 b 算法分析: 数据去重的最终目标是让原始数据中出现次数超过一次的数据在输出文件中只出现一次。我们自然而然会想到将同一个数据的所有记录都交给一台reduce机器,无论这个数据出现多少次,只要在最终结果中输出一次就可以了。 具体就是reduce的输入应该以数据作为key,而对value-list则没有要求。当reduce接收到一个时就直接将key复制到输出的key中,并将value设置成空值。 在MapReduce流程中,map的输出经过shuffle过程聚集成后会交给reduce。所以从设计好的reduce输入可以反推出map的输出key应为数据,value任意。继续反推,map输出数据的 key为数据,而在这个实例中每个数据代表输入文件中的一行内容,所以map阶段要完成的任务就是在采用Hadoop默认的作业输入方式之后,将value设置为key,并直接输出(输出中的value任意)。map中的结果经过shuffle过 程之后交给reduce。reduce阶段不会管每个key有多少个value,它直接将输入的key复制为输出的key,并输出就可以了(输出中的value被设置成空了)。 实验内容和过程: package shiyan1_1; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.Mapper;

hadoop实验报告

基于hadoop的大规模文本处理技术实验 专业班级:软件1102 学生姓名:张国宇 学号: 201116040221

Setup Hadoop on Ubuntu 11.04 64-bit 提示:前面的putty软件安装省略;直接进入JDK的安装。 1. Install Sun JDK<安装JDK> 由于Sun JDK在ubuntu的软件中心中无法找到,我们必须使用外部的PPA。打开终端并且运行以下命令: sudo add-apt-repository ppa:ferramroberto/java sudo apt-get update sudo apt-get install sun-java6-bin sudo apt-get install sun-java6-jdk Add JAVA_HOME variable<配置环境变量>: 先输入粘贴下面文字: sudo vi /etc/environment 再将下面的文字输入进去:按i键添加,esc键退出,X保存退出;如下图: export JAVA_HOME="/usr/lib/jvm/java-6-sun-1.6.0.26"

Test the success of installation in Terminal<在终端测试安装是否成功>: sudo . /etc/environment java –version 2. Check SSH Setting<检查ssh的设置> ssh localhost 如果出现“connection refused”,你最好重新安装ssh(如下命令可以安装): sudo apt-get install openssh-server openssh-client 如果你没有通行证ssh到主机,执行下面的命令: ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

云计算实验报告

云计算原理课程 期末实践报告 题目:Linux集群、MapReduce和CloudSim 实践 成绩: 学号: 姓名:罗滔 登录邮箱: 任课老师:许娟 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” 完整组名的格式如下所示: EC2support--GA9LGREA7X4S 从现在开始,我们在本实验中将使用上面这些简写名称来指代这些组。您可以在【组/Groups】仪表板中搜索子字符串,以便为后续实验操作确定正确的组。 10.单击“EC2support”对应的组名。其格式应与上面的类似。 11.向下滚动至组详细信息页面中的【权限/Permissions】部分后,在【内联策略/InlinePolicies】部分,可以看到一个名称为“EC2supportpolicy”的策略与该组关联。 在策略中,您可以规定将允许或拒绝对特定AWS资源执行哪些操作。您可以使用自定义策略,或通过

实验一hadoop的安装与使用

电子信息学院 实验报告书 课程名:《云计算技术》 题目:实验一、Hadoop的安装与使用 实验类别【设计】 班级: bx1002 学号: 31 姓名:杨汉标 【实验环境】 计算机、Java、Hadoop

【实验目的】 1.理解云计算的基本理论知识; 2.理解Hadoop的基本概念 3.掌握如何在Linux上安装Hadoop; 【实验要求】 1.下载Hadoop和JDK; 2.安装SSH; 3.对Linux进行相应配置。 【基础知识】 Hadoop是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同java程序员可以不考虑内存泄露一样, MapReduce的run-time系统会解决输入数据的分布细节,跨越机器集群的程序执行调度,处理机器的失效,并且管理机器之间的通讯请求。这样的模式允许程序员可以不需要有什么并发处理或者分布式系统的经验,就可以处理超大的分布式系统得资源。 程序员的开发步骤: 1.定义Mapper,处理输入的 Key-Value 对, 2.定义Reducer,可选,对中间结果进行规约,输出最终结果 3.定义 InputFormat 和 OutputFormat,可选,InputFormat 将每行为 Java 类供Mapper 函数使用,不定义时默认为 String。 4.定义main 函数,在里面定义一个 Job 并运行它 Hadoop的工作过程 一个集群中只有一个NameNode,可以有多个DataNodes;namenode 承担数据的位置存储信息,并将存储位置信息告诉client端;得到位置信息后,client端开始写数据;写数据的时候是将数据分块,并存储为多份(一般为3份),放在不同的datanode 节点; client 先将数据写到第一个节点,在第一个节点接收数据的同时,又将它所接收的数据推送到第

Spark实验报告

Spark报告 金航1510122526

Spark实验报告 一、环境搭建 1、下载scala2.11.4版本下载地址为:https://www.360docs.net/doc/0e4030274.html,/download/2.11.4.html 2、解压和安装: 解压:tar -xvf scala-2.11.4.tgz 安装:mv scala-2.11.4 ~/opt/ 3、编辑~/.bash_profile文件增加SCALA_HOME环境变量配置, export JAVA_HOME=/home/spark/opt/java/jdk1.6.0_37 export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.j ar export SCALA_HOME=/home/spark/opt/scala-2.11.4 export HADOOP_HOME=/home/spark/opt/hadoop-2.6.0 PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:${SCALA_HOME}/bin 立即生效source ~/.bash_profile 4、验证scala:scala -version 5、copy到slave机器scp ~/.bash_profile spark@10.126.45.56:~/.bash_profile 6、下载spark,wget https://www.360docs.net/doc/0e4030274.html,/spark-1.2.0-bin-hadoop2.4.tgz 7、在master主机配置spark : 将下载的spark-1.2.0-bin-hadoop2.4.tgz 解压到~/opt/即 ~/opt/spark-1.2.0-bin-hadoop2.4,配置环境变量SPARK_HOME # set java env export JAVA_HOME=/home/spark/opt/java/jdk1.6.0_37 export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar export SCALA_HOME=/home/spark/opt/scala-2.11.4 export HADOOP_HOME=/home/spark/opt/hadoop-2.6.0 export SPARK_HOME=/home/spark/opt/spark-1.2.0-bin-hadoop2.4 PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:${SCALA_HOME}/bin:${SPARK_HO ME}/bin:${HADOOP_HOME}/bin 配置完成后使用source命令使配置生效

hadoop安装及单词统计实验报告

基于hadoop的单词统计的简单实验 1.1安装及其说明 总共有4台机器:namenode 、datanode1、datanode2 、datanode3 IP地址分别设置为:10.102.1.67、10.102.1.68、10.102.1.69、10.102.1.70 操作系统为:Centos6.2 Jdk版本为:jdk-7u45-linux-i586 Hadoop版本为:hadoop-0.20.2 10.102.1.69作为Namenode、JobTracker,其他三台作为Datenode、TaskTracker 1.2 用机器名Ping通机器 用root登录,修改NameNode和DataNode上的/etc/hosts文件,加入四台机器的IP地址和机器名,如下: 10.102.1.69 namenode 10.102.1.67 datenode1 10.102.1.68 datenode2 10.102.1.70 datenode3 设置好后验证下各机器间是否ping通,用机器名或是IP地址都可以,例如ping datanode1或ping 10.102.1.67 1.3 新建hadoop用户

我没有新建hadoop,而是直接用的root用户 1.4 ssh设置及关闭防火墙 1)centos装好后默认启动sshd服务,如果不确定的话可以查一下[root@namenode ~]# service sshd status 如没有启动的话,先启动[root@ namenode ~]# service sshd start 建立ssh无密码登录,在NameNode上[root@ namenode ~]$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 会在~/.ssh/生成两个文件:id_dsa和id_dsa.pub,这两是成对出现的,把id_dsa.pub文件追加到DataNode上的authorized_keys [root@ namenode ~]$ scp id_dsa.pub datanode1:/home/hadoop/ (注意其中目标机器后面的:与要传到的文件路径之间没有空格,即datanode1:与/home/hadoop/之间没有空格) scp id_dsa.pub datanode2:/home/hadoop/ scp id_dsa.pub datanode3:/home/hadoop/ 登录到DataNode上,[root@ datenode1 ~]$ cat id_dsa.pub >> ~/.ssh/authorized_keys ,其余两台一样,NameNode上也要追加。注意:追加完后必须修改NameNode和DataNode上的.ssh和authorized_keys的权限,chmod命令,参数755,完成后测试下,例如ssh datenode1时不需要密码就可以登录,就可以知道ssh设置成功。2)关闭防火墙(NameNode和DataNode都必须关闭) [root@namenode ~]# service iptables stop 注意:每次重新开机启动hadoop前都必须关闭

MapReduce实验报告

硕士研究生实践报告 题目 作者姓名 作者学号 指导教师 学科专业 所在学院 提交日期 一题目要求 我们的项目背景是,可穿戴设备的实时数据分析。1.txt记录的是某一个用户的心跳周期数据,每一个数值表示一次心跳的周期,单位是秒。例如,0.8表示用户当时的心跳间隙是0.8秒。心跳间期按照顺序存储。 1.利用Hadoop的MapReduce框架编写程序,计算出总测量时间和平均心跳间期,即求和 与求平均。请写出程序,并在实验报告中简单描述你的思路。 2.探索Spark的Transformation中的mapPartition,写出示例程序,并思考何时会用到 mapPartition,为什么要用它? 3.探索Spark的Transformation中的flatMap,写出示例程序,并思考何时会用到它,为什 么要用到它。 4.(选做)SD1和SD2是表征心率变异性的一种指标。结合发给你们的论文,用Java或 者Scala实现SD1和SD2的计算(不用考虑并行化,普通的Java或Scala程序即可)。(选做)假设我们同时监控100个用户的心率,是否能够利用Spark的RDD的特性,并行地计算SD1和SD2?(提示:把每一个用户的心率数据作为RDD里面的一个元素,RDD中不同的元素表示不同用户的心率数据,利用map对每一个用户的心率数据进行并行分析)。请描述设计思路,并尽可能实现一个多用户心率监控的计算程序。 二题目实现 第一题: 本题就是利用Hadoop的MapReduce框架编写程序,计算出总测量时间和平均心跳间期,即求和与求平均,程序代码如下: package ; import ; import ; import ; import ;

实验2 Hadoop安装与配置

实验报告封面 课程名称: Hadoop大数据处理课程代码: JY1124 任课老师:陈宁穗实验指导老师: 陈宁穗 实验报告名称:实验2 Hadoop安装与配置 学生姓名: 学号: 教学班: 递交日期: 签收人: 我申明,本报告内的实验已按要求完成,报告完全是由我个人完成,并没有抄袭行为。我已经保留了这份实验报告的副本。 申明人(签名): 实验报告评语与评分: 评阅老师签名:

一、实验名称:Hadoop安装与配置 二、实验日期:2015年9 月18日 三、实验目的: Hadoop安装与配置。 四、实验用的仪器和材料: 安装环境:以下两个组合之一 1.硬件环境:内存ddr3 4G及以上的x86架构主机一部 系统环境:windows 、linux或者mac os x 软件环境:运行vmware或者virtualbox (2) 内存ddr 1g及以上的主机两部及以上 五、实验的步骤和方法: 注: hadoop必须运行在类unix环境下。Windows必须通过虚拟机运行linux环境或者安装cygwin,本次实验是在Windows下通过虚拟机运行linux环境实现。本次实验重点在vmware中安装ubuntu以及在ubuntu中一些命令的熟悉使用。 一、vmware中ubuntu的安装步骤 1、打开桌面VMware Workstation图标,进入软件。

2、点击“新建虚拟机”,进入新建向导,选择“典型(推荐)”继续。 3、选择“稍后安装操作系统”。

4、选择linux操作系统下的Ubuntu系统,点击继续。

5、设置自己虚拟机名称,选择安装位置(根据自己喜好选择)。

Hadoop实验--数据去重

Hadoop实验报告数据去重 问题背景: 随着存储数据信息量的飞速增长,去重无疑成为众多大数据科研人员要面对的问题之一。因此越来越多的人开始关注存储数据的缩减方法。数据压缩、单实例存储和重复数据删除等都是经常使用的存储数据缩减技术。 重复数据删除往往是指消除冗余子文件。不同于压缩,重复数据删除对于数据本身并没有改变,只是消除了相同的数据占用的存储容量。重复数据删除在减少存储、降低网络带宽方面有着显著的优势,并对扩展性有所帮助。 举个简单的例子:在专门为电信运营商定制的呼叫详单去重应用程序中,我们就可以看到删除重复数据的影子。同样的,对于包含相同数据包的通信网络,我们可以使用这种技术来进行优化。 问题描述: 编写MapReduce程序读取文本文件,去掉所有数据中的重复数据后输出结果。 实验名称:数据去重 实验目的: 1、基本了解一个Hadoop程序的结构、编译、封装、运行、查看结果等流程。 2、掌握并利用并行化编程思想对数据做有意义的筛选。 实验要求: 完成MapReduce程序,测试其对数据的筛选能力。 输入:输入是一组文本文件,在每个输入文件中每一行是一个数据。每一个元数据都是一个字符串。

输出:输出文件的每一行都是在输入文件中出现过的一个数据,并且输出文件中的每一行都不相同。 【数据样例】 输入: input1: 2015-1-1 a 2015-1-2 b 2015-1-3 c 2015-1-4 d 2015-1-5 a 2015-1-6 b 2015-1-7 c 2015-1-8 c input2: 2015-1-1 b 2015-1-2 a 2015-1-3 b 2015-1-4 d 2015-1-5 a 2015-1-6 c 2015-1-7 d 2015-1-8 c 输出: 2015-1-1 a 2015-1-1 b 2015-1-2 a 2015-1-2 b 2015-1-3 b 2015-1-3 c 2015-1-4 d 2015-1-5 a 2015-1-6 b 2015-1-6 c 2015-1-7 c 2015-1-7 d 2015-1-8 c 设计思路:

相关主题
相关文档
最新文档