2016年全国高职云计算技术与应用H卷
- 格式:doc
- 大小:824.00 KB
- 文档页数:15
2016年全国职业院校技能大赛(高职组)
“云计算技术与应用” H卷
第一部分:云平台架构
赛项系统架构如图1所示,IP地址规划如表1所示。
根据架构图及IP地址规划表,检查硬件连线及网络设备配置,确保网络连接正常。
图1 系统架构图
表1 IP地址规划表
设备名称接口IP地址说明云服务器1
eth0 192.168.100.10/24 Vlan 100
eth1 192.168.200.10/24 Vlan 200 云服务器2
eth0 192.168.100.20/24 Vlan 100
eth1 192.168.200.20/24 Vlan 200 PC-1 本地连接172.16.x.2/16 Vlan 1
PC-2 本地连接172.16.x.3/16 Vlan 1
PC-3 本地连接172.16.x.4/16 Vlan 1
交换机Vlan 1 172.16.x.1/16 x为考位号Vlan 100 192.168.100.1/24
Vlan 200 192.168.200.1/24
第二部分:云平台搭建
场景说明
某企业计划搭建私有云平台,以实现计算资源的池化弹性管理;企业应用的集中管理;统一安全认证和授权管理。
需完成云平台架构的设计、系统部署,云存储网盘web开发及客户端开发。
试根据以上用户需求,完成以下任务。
任务一、IaaS平台系统准备(4分)
1.环境配置(1分)
手动配置云平台IaaS各节点的系统参数:
控制节点主机名:controller;计算节点主机名:compute;修改hosts文件,映射各节点管理ip与主机名,实现云平台管理网络地址(内部管理地址)与主机名的映射;各个节点关闭防火墙,设置开机不启动,设置selinux为permissive。
使用相关命令查询显示控制节点和计算节点主机名,使用cat命令查询计算节点主机名映射配置文件的详细信息,使用sestatus命令进行查询。
以文本形式提交以上所有查询命令及结果到答题框。
2.FTP配置(1分)
把软件包拷贝到控制节点/opt/路径下,删除控制节点yum源文件夹/etc/yum.repos.d/中的已有配置,配置控制节点使用本地yum源,配置文件名为yum.repo,安装并配置ftp服务;计算节点yum源文件名为yum.repo,配置并使用控制节点的ftp服务。
使用cat命令查看计算节点的/etc/yum.repos.d/yum.repo文件。
以文本形式提交查询命令及结果到答题框。
3.NTP配置(1分)
在各节点安装ntp服务,在控制节点上使用文件/etc/ntp.conf配置ntp服务,将计算节点时钟同步到控制节点。
将计算节点同步控制节点的命令及结果以文本形式提交到答题框。
4.QPID安装(1分)
在控制节点安装QPID服务,修改配置文件后启动服务,并设为开机自启。
将QPID配置文件名称,修改内容,以文本形式提交到答题框。
使用chkconfig查询并使用grep命令过滤出qpid服务的启动级别,以文本形式提交查询命令及结果到答题框。
任务二、IaaS系统组建(20分)
1.环境变量配置(2分)
在控制节点和计算节点分别安装iaas-xiandian包,完成配置文件中基本变量的配置。
根据表2完成指定变量的配置,以文本形式提交计算节点的配置文件到答题框。
表2 云平台配置信息
服务用户密码
Mysql root 111111 Keystone 111111 Glance 111111 Nova 111111 Neutron 111111 Heat 111111 Ceilometer 111111
Keystone Admin Admin Glance glance Nova nova Neutron neutron Heat heat Ceilometer Ceilometer
2.数据库服务安装(2分)
使用提供的数据库脚本安装数据库mysql。
使用root用户登录,查询数据库列表信息。
以文本形式提交查询命令和结果到答题框。
3.keystone安装(2分)
在控制节点使用提供的keystone安装脚本安装keystone组件,admin-openrc.sh 文件在/etc/keystone/下。
使用keystone 相关命令,查询admin用户信息,以文本形式提交查询命令和结果到答题框。
4.glance安装(2分)
在控制节点通过脚本完成glance镜像服务的安装,使用镜像文件
centos_65_x86_6420140327.qcow2创建glance镜像centos6.5x64,格式为qcow2。
查询镜像详细信息,以文本形式提交查询命令和结果到答题框。
5.nova安装(2分)
在控制节点和计算节点通过提供的nova脚本,在控制节点和计算节点完成nova 服务的安装。
使用nova相关命令查询计算节点虚拟机监控器的状态,以文本形式提交查询命令和结果到答题框。
6.neutron安装(2分)
在控制节点和计算节点通过提供的neutron脚本,完成neutron服务在控制节点和计算节点的安装,然后配置云平台网络为FLAT网络。
待完成网络创建之后,使用neutron相关命令查询neutron 所有的端口列表信息,将查询信息以文本形式提交到答题框。
7.SDN网络配置(4分)
(1)安装JDK环境(1分)
在控制节点安装配置JDK环境。
安装完成后,查询JDK的版本信息,以文本形式提交查询的命令和结果到答题框。
(2)安装Maven环境(1分)
在控制节点安装配置Maven环境。
安装完成后,查询Maven的版本信息,以文本形式提交查询的命令和结果到答题框。
(3)安装OpenDaylight(2分)
将curl命令及反馈信息以文本形式提交到答题框。
8.网络创建(2分)
在控制节点和计算节点完成flat网络配置,创建云主机网络flat-net,子网为flat-subnet,可用网段为120~150,网关为该网络相应交换机地址。
提交网络列表的查询命令及结果信息到答题框。
9.dashboard配置(2分)
通过提供的脚本完成dashboard的安装,配置域名映射,使得用户可以通过/dashboard访问云平台。
使用curl命令查询网址/dashboard并将查询结果以文本形式提交到答题框。
任务三、IaaS运维(16分)
将赛位清单中所提供的centos_65_x86_xiandiancloud.qcow2镜像上传到云平台内,上传名称为xiandiancloud,并按照1CPU,1GB内存,50GB硬盘的配置要求启动实例,启动完毕后完成以下运维。
1.数据库管理(4分)
管理员在检查云平台运行状态时发现数据库启动失败,并且遗失数据库root用户密码,试根据数据库运维的相关知识,解决数据库启动异常问题,并且重新设置管理员密码为mysqlpass。
待数据库服务恢复正常后,在数据库中创建数据库cloudcompute,创建用户xiandian,密码为chinaskills,并赋予xiandian只有使用数据库cloudcompute的权限,以文本形式提交以上操作的所有命令到答题框。
2.keystone管理(4分)
由于管理员对Keystone服务误操作,导致认证服务启动失败,试根据云计算相关运维知识,解决Keystone服务启动异常问题。
待Keystone服务正常启动后,通过keystone相关命令,查询认证服务端点的详细信息。
以文本形式提交查询命令和查询结果到答题框。
3.swift管理(4分)
管理员在启动Swift镜像服务时发现Swift服务运行异常,试根据云计算相关运维知识,解决Swift服务启动异常问题。
待Swift服务正常启动后,在该虚拟机的认证服务中创建swifter用户,密码为000000,并创建swift租户,将swifter用户规划到swift租户下,赋予swifter用户使用swift服务的权限,并通过该用户在swift中创建mycontainer容器,以文本形式提交以上操作的所有命令到答题框。
4.ceilometer运维(4分)
管理员在启动Ceilometer镜像服务时发现Ceilometer服务运行异常,发现连接数据库和认证出现问题,试根据云计算相关运维知识,解决Ceilometer服务启动异常问题。
待Ceilometer服务正常启动后,用ceilometer相关命令查询所有测量值,以文本形式提交到答题框。
任务四、大数据系统搭建(8分)
大数据平台的搭建采用分布式方式部署,部署在云平台的两台虚拟机上,规划大数据平台的部署架构,VM1部署大数据平台master节点,VM2部署大数据平台slaver节点。
每个虚拟机按如下要求来配置。
(1)系统配置:1CPU,1GB内存,50GB硬盘,连接到网络。
(2)操作系统:centos6.5x64。
(3)主机名配置:
master的主机名为:mymaster;
slaver1 Node的主机名为:myslaver;
1.大数据平台环境准备(1分)
(1)挂载XianDian-BigData-v1.4.iso,把软件包拷贝到master节点的/opt/目录下。
(2)根据环境要求修改2个节点的主机名。
(3)修改2个节点的hosts文件。
(4)配置2个节点使用iaas的yum源。
(5)配置2个节点无密码公钥认证。
(6)安装2个节点的JDK环境。
查询2个节点的主机名、hosts文件、yum源配置文件的信息,以文本形式提交到答题框。
2.Hadoop部署(2分)
在两个节点上完成Hadoop集群的搭建,参考提供的配置文件模板,完成Hadoop 的相关配置,启动大数据集群。
分别在主节点和从节点查询Hadoop的服务进程信息,以文本形式提交查询结果到答题框。
3. pig部署(3分)
在主节点完成pig的部署,参考提供的配置文件模板,完成pig的相关配置,以pig的Local 模式启动pig。
以文本形式提交输出信息答题框。
4.pig运算(2分)
下载附件中提供的access_log.txt至/opt目录下,使用pig本地模式计算日志access_log.txt中ip地址出现的次数,输出的结果存放到/opt/output目录下。
以文本形式提交操作的命令和查询计算的输出到答题框。
任务五、PaaS系统组建(20分)
1.PaaS部署(5分)
规划PaaS平台的部署架构,PaaS部署在IaaS平台的3台虚拟机上。
PaaS采用分开安装的方式部署,VM1部署PaaS平台Broker节点,VM2部署PaaS平台Node 节点,VM3部署Git Server。
每个虚拟机配置如下:
(1)系统配置:1CPU,1GB内存,50GB硬盘,连接到网络。
(2)操作系统:centos6.5x64。
(3)IP:Broker、Node和Git Server节点动态分配
(4)主机名配置:
PaaS Broker的主机名为:broker;
PaaS Node的主机名为:node;
Git Server的主机名为:gitserver。
根据表3所提供的参数,完成配置文件的自定义与修改,搭建PaaS平台。
表3 参数配置表
参数项目参数值
域名
数据库密码chinaskill
管理页面密码chinaskill
PaaS系统用户名称admin
PaaS系统密码Passw0rd
查询Broker节点的PaaS平台变量配置文件,使用nova命令查询PaaS平台所使用的云主机类型及各云主机详细信息,并通过curl命令查询PaaS平台首页,在gitserver服务器上查询git版本信息,将查询命令及结果提交至答题框。
2.RHC运维(3分)
在gitserver上安装rhc客户端,通过app-create 参数创建nodejs 0.6版本的应用,名称为xiandiannodejs,创建完成后,使用app-stop关闭应用,通过命令行使用
app-show参数查询应用的状态。
以文本形式提交以上操作命令和执行结果到答题框。
3.DNS验证(2分)
通过dig命令查询PaaS的域名,验证该DNS是否正常。
以文本形式提交以上操作命令和执行结果到答题框。
4. ActiveMQ消息中间件验证(2分)
通过curl命令访问ActiveMQ消息中间件验证首页进行消息服务验证。
以文本形式提交以上操作命令和执行结果到答题框。
5. Moodle应用部署(4分)
在PaaS上部署在线学习系统moodle,URL设置为。
部署完成后通过curl命令访问首页。
以文本形式提交curl命令和执行结果到答题框。
6. 部署JavaEExdflatui应用(4分)
在PaaS上部署JavaEE案例应用,公众URL为。
部署完成后,通过curl命令访问JavaEE应用的首页。
以文本形式提交curl命令和执行结果到答题框。
第三部分:云应用开发
任务一、云存储Web应用开发(7分)
云存储网盘Web应用的开发,选用javaEE技术平台,使用集中部署的云存储服务。
开发环境:SDK(java joss) +(eclipse)+ JDK + Tomcat + Mysql + swift.sql + 案例cloudstorage_web.zip。
网盘Web应用的用户界面如图2所示。
图2 网盘Web应用用户界面图
1.搭建开发环境和导入项目(1分)
根据指定的账户名,密码等信息修改连接云平台的配置,解压cloudstorage_web.zip,导入开发案例并运行。
运行后按顺序提交浏览器登录页面截图、登录后的【全部文件】页面截图、修改的配置、java代码到答题框。
2.搜索功能(3分)
基于SDK提供的接口,完善工程的搜索功能,实现查找功能,展示搜索名称含有“doc”的所有文件和文件夹的列表。
实现后按顺序提交运行的网页截图和增改的java代码到答题框。
3.网盘详情(3分)
基于SDK提供的接口,实现网盘详情功能,在所有文件Web主页面操作栏增加“详情”按钮,点击详情,弹出信息框。
信息框展示目前网盘文件累计容量(单位KB),目录数(单位个)、文件数量(单位个)、图片数(单位个)、视频数(单位个),实现后按顺序提交运行的网页截图和增改的java代码到答题框。
任务二、大数据案例开发(5分)
1.单个文件Hadoop M-R分词统计(3分)
基于hadoop SDK提供的接口和Web开发框架代码,对目录路径下的“FourMasterpiecesofChina/doc/WaterMargin.docx”docx格式文件,使用hadoop
map-reduce进行文字内容分析,,通过词汇统计分析文章中出现次数最多的前10个词汇,将统计结果以可视化d3.js框架饼图(pie)的形式在单独一个Web网页展示出来。
提交分词统计结果的网页截图和添加的Java、JSP代码到答题框。
2. 两个文件Hadoop M-R分词统计(2分)
基于hadoop SDK提供的接口和Web开发框架代码,对同一目录路径下的选择“FourMasterpiecesofChina/doc/ WaterMargin.docx”和“FourMasterpiecesofChina/doc/ RomanceoftheThreeKingdoms.docx”2个文件,分别对这2个文件进行词汇统计分析,并各取每个文件出现次数最多的前10个词汇,合成共计20词汇,通过可视化d3.js 框架柱形图(column)的形式在单独一个Web网页展示出来。
提交分词统计结果的网页截图和添加的Java、JSP代码到答题框。
任务三、云存储网盘客户端(8分)
云存储网盘客户端APP的开发,选用Android开源技术平台,使用集中部署的云存储服务。
开发环境:SwiftSDK(openstack-java-sdk)+Android开发环境
(adt-bundle-windows-x86_64)+JDK1.7+案例程序cloudstorage_android.zip程序的运行采用Genymotion模拟器。
网盘客户端的用户界面如图3所示。
图3 网盘客户端用户界面图
1.搭建开发环境和导入项目(1分)
根据指定的账户名,密码等信息修改连接云平台的配置,解压cloudstorage_android.zip,导入开发案例并运行。
运行后按顺序提交APP登录界面的模拟器截图、登录后的模拟器截图及修改的java代码到答题框。
2.我的图片功能(2分)
基于SDK提供的接口,实现我的图片列表,列表展示网盘所有的图片格式文件,包括jpg、png、bmp等文件。
所有的图片文件图标更换为图片的预览图,实现后按顺序提交模拟器运行结果截图和增改的java代码到答题框。
3.日期排序功能(3分)
基于SDK提供的接口和框架代码,在云网盘安卓应用“全部文件”界面的顶部操作栏(Actionbar)增加“时间排序”按钮,完善代码增加文件夹的修改时间,在此基础上,不区分文件夹和文件,点击“时间排序”实现对内部云存储对象按照时间“降序”排序展示(即最新改动对象放在列表最上面)。
实现后按顺序提交模拟器运行结果截图和增改的java、xml的代码到答题框。
4.文件夹删除功能(2分)
基于SDK提供的接口,实现云网盘安卓应用“全部文件”根目录下文件夹删除功能。
把容器根目录下文件夹saas删除,删除文件夹到回收站内。
提交实现该功能成功模拟器运行结果截图和增加的java代码到答题框。
任务四、排序算法(2分)
1.合并排序算法
云存储文件对象数组的堆(mergeSort)排序算法如下,试补充空格处的代码,共四处,每空一行提交到答题框。
(2分)
/**
* 合并排序,结果从小到大
*
* @param values 输入待排序对象数组
* @param cp 比较器
*/
public static void mergeSort(StoredObject[] inputs, Comparator cp) { int number = inputs.length;
StoredObject[] helper = new StoredObject[number];
mergesort(inputs, helper, 0, number - 1, cp);
}
private static void mergesort(Object[] numbers, Object[] helper, int low, int high, Comparator c) {
if (low < high) {
int middle = low + (high - low) / 2;
mergesort(numbers, helper, _____, _____, c);// 填空一、二
mergesort(numbers, helper, _____, _____, c);// 填空三、四
merge(numbers, helper, low, middle, high, c);
}
}
private static void merge(Object[] objs, Object[] helper, int low, int middle, int high, Comparator c) {
for (int i = low; i <= high; i++) {
helper[i] = objs[i];
}
int i = low;
int j = middle + 1;
int k = low;
while (i <= middle && j <= high) {
if (pare(helper[i], helper[j]) <= 0) {
objs[k] = helper[i];
i++;
} else {
objs[k] = helper[j];
j++;
}
k++;
}
while (i <= middle) {
objs[k] = helper[i];
k++;
i++;
}
}
第四部分:工作总结报告(5分)
结合以上云平台设计、部署、运维和云应用开发过程,编制项目实施的工作总结报告。
工作报告包含以下内容:
1.以一个表格罗列IaaS和PaaS的主要功能,按照平台和服务分类。
2.绘制TypeObjectListFragment和其父类的类图并予以说明。
3.绘制Cinder存储的架构图并予以说明。
在答题框内进行内容编写,插入相关的图表。
第五部分:职业素养(5分)
依工作作风、安全意识、团队协作和遵守考场纪律情况由裁判现场判分。