2016年全国高职云计算技术与应用F卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016年全国⾼职云计算技术与应⽤F卷
2016年全国职业院校技能⼤赛(⾼职组)
“云计算技术与应⽤” F卷
第⼀部分:云平台架构
赛项系统架构如图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 R00tme Keystone Keystonedbword Glance glancedbword Nova novdbword Neutron neutrodbword Heat heatdbword Ceilometer ceilometerdbword
Keystone Admin Adminw0rd Glance glancew0rd Nova novaw0rd Neutron neutronw0rd Heat heatw0rd Ceilometer ceilometerw0rd
2.数据库服务安装(2分)
使⽤提供的数据库脚本安装数据库mysql。
使⽤neutron⽤户,登录mysql。
通过数据库相关命令查询数据库列表信息以⽂本形式提交到答题框。
3.keystone安装(2分)
在控制节点使⽤提供的keystone安装脚本安装keystone组件,admin-openrc.sh ⽂件在/etc/keystone/下。
使⽤keystone 相关命令,查询认证服务的端点信息,以⽂本形式提交查询命令和结果到答题框。
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 DHCP agent服务的详细信息,将查询信息以⽂本形式提交到答题框。
7.SDN⽹络配置(4分)
(1)安装JDK环境(1分)
在控制节点安装配置JDK环境。
安装完成后,查询JDK的版本信息,以⽂本形式提交查询的命令和结果到答题框。
(2)安装Maven环境(1分)
在控制节点安装配置Maven环境。
安装完成后,查询Maven的版本信息,以⽂本形式提交查询的命令和结果到答题框。
(3)安装OpenDaylight(2分)
在控制节点完成OpenDaylight的安装,完成后使⽤curl命令访问⽹页http://192.168.100.10:8181/dlux/index.html。
将curl命令及反馈信息以⽂本形式提交到答题框。
8.⽹络创建(2分)
在控制节点和计算节点完成flat⽹络配置,创建云主机⽹络flat-net,⼦⽹为flat-subnet,可⽤⽹段为120~150,⽹关为该⽹络相应交换机地址。
提交⽹络列表的查询命令及结果信息到答题框。
9.dashboard配置(2分)
通过提供的脚本完成dashboard的安装,使⽤curl命令查询⽹址http://192.168.100.10/dashboard。
将查询命令及结果以⽂本形式提交到答题框。
任务三、IaaS运维(16分)
将赛位清单中所提供的centos_65_x86_xiandiancloud.qcow2镜像上传到云平台内,上传名称为xiandiancloud,并按照1CPU,1GB内存,50GB硬盘的配置要求启动实例,启动完毕后完成以下运维。
1.数据库管理(4分)
管理员在检查云平台运⾏状态时发现数据库启动失败,并且遗失数据库root⽤户密码,试根据数据库运维的相关知识,解决数据库启动异常问题,并且重新设置管理员密码为mysqlpass。
待数据库服务恢复正常后,通过mysql相关命令查询当前系统时间。
以⽂本信息提交操作命令和查询结果到答题框。
2.keystone管理(4分)
由于管理员对Keystone服务误操作,导致认证服务启动失败,试根据云计算相关运维知识,解决Keystone服务启动异常问题。
待Keystone服务正常启动后,创建chinaskills⽤户并加⼊admin⽤户组,创建完成后修改⽤户密码为chinaskills。
以⽂本形式提交以上操作命令到答题框。
3.nova管理(4分)
管理员在配置Nova服务时误配置两个参数导致服务启动异常,在修复过程中,对keystone创建的nova⽤户存在误操作现象,试根据云计算相关运维知识,解决Nova服务启动异常问题。
待Nova服务正常启动后,通过ssh-keygen命令⽣成密钥对,通过nova的相关命令使⽤控制节点公钥⽂件在云平台中加⼊密钥chinaskills,提交以上操作的全部命令到答题框。
4.swift管理(4分)
管理员在启动Swift镜像服务时发现Swift服务运⾏异常,试根据云计算相关运维知识,解决Swift服务启动异常问题。
待Swift服务正常启动后,在该虚拟机的认证服务中创建swifter⽤户,密码为000000,并创建swift租户,将swifter⽤户规划到swift租户下,赋予swifter⽤户使⽤swift服务的权限,并通过该⽤户在swift中创建mycontainer容器,以⽂本形式提交以上操作的所有命令到答题框。
任务四、⼤数据系统搭建(8分)
⼤数据平台的搭建采⽤伪分布式⽅式部署,部署在云平台的1台虚拟机上,虚拟机为heat模板创建的实例,规划⼤数据平台的部署架构,虚拟机按如下要求来配置。
(1)系统配置:1CPU,1GB内存,50GB硬盘,连接到⽹络。
(2)操作系统:centos6.5x64。
(3)主机名配置:
主节点的主机名为:mymaster;
1.⼤数据平台环境准备(1分)
挂载XianDian-BigData-v1.4.iso,把软件包拷贝到master节点的/opt/⽬录下。
完成hadoop平台搭建的系统环境准备和运⾏环境准备。
查询节点的主机名、hosts⽂件、yum源配置⽂件的信息,以⽂本形式提交到答题框。
2.Hadoop部署(2分)
在节点上完成Hadoop集群的搭建,参考提供的配置⽂件模板,完成Hadoop 的相关配置,启动⼤数据集群。
查询Hadoop的服务进程信息,以⽂本形式提交查询结果到答题框。
3.hdfs运维(1分)
在Hadoop⽂件系统的根⽬录下创建⼀个名为“chinaskills”的⽬录,将附件中提供个cloudskills.txt⽂件,上传到chinaskills⽬录中,并使⽤HDFS⽂件系统检查⼯具检查⽂件是否受损。
以⽂本形式提交以上操作命令和输出结果命令到答题框。
4.Hbase部署(4分)
完成Hbase的部署,参考提供的配置⽂件模板,完成Hbase的相关配置,启动Hbase shell,通过Hbase创建表xiandian带两个列族info和address。
以⽂本形式提交创建命令和输出结果到答题框。
任务五、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 参数配置表
参数项⽬参数值
域名/doc/12c9c14d59fafab069dc5022aaea998fcc2240ab.html
数据库密码chinaskill
管理页⾯密码chinaskill
PaaS系统⽤户名称admin
PaaS系统密码Passw0rd
查询Broker节点的PaaS平台变量配置⽂件,使⽤nova命令查询PaaS平台所使⽤的云主机类型及各云主机详细信息,并通过curl命令查询PaaS平台⾸页,在gitserver服务器上查询git版本信息,将查询命令及结果提交⾄答题框。
2.RHC运维(3分)
在gitserver上安装rhc客户端,通过app-create创建php5.3并添加mysql5.1套件的应⽤,名称为mysqlapp。
创建完成后,通过app-stop参数关闭应⽤,通过命令⾏使⽤app-show 参数查询应⽤的状态。
以⽂本形式提交以上操作命令和执⾏结果到答题框。
3.DNS验证(2分)
通过dig命令查询PaaS的域名,验证该DNS是否正常。
以⽂本形式提交以上操作命令和执⾏结果到答题框。
4.Mongo数据库验证(2分)
登录MongoDB,创建MongoDB 数据库xdpaas,在数据库中创建skill_cloud_competitor集合,在集合插⼊1条记录:{year:2015, title:'Cloud Skill
compitor'}。
提交以上操作命令和该记录的查询结果到答题框。
5.部署Dolibarr(4分)
Dolibarr是php开源的企业资源规划计划系统,部署Dolibarr应⽤,部署域名为/doc/12c9c14d59fafab069dc5022aaea998fcc2240ab.html /部署成功后,通过curl命令访问⾸页。
以⽂本形式提交curl命令和执⾏结果到答题框。
6. 部署JavaEExdflatui应⽤(4分)
在PaaS上部署JavaEE案例应⽤,公众URL为/doc/12c9c14d59fafab069dc5022aaea998fcc2240ab.html 。
部署完成后,通过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提供的接⼝,实现⽹盘APP的我的视频功能,通过我的视频导航展⽰当前⽹盘所有视频⽂件列表。
实现后按顺序提交运⾏的⽹页截图和增改的java、JSP代码到答题框。
3.⽹盘详情功能(3分)
基于SDK提供的接⼝,实现⽹盘详情功能,在所有⽂件视图下,顶部的操作栏增加“详情”按钮,点击详情,弹出信息框。
信息框展⽰⽬前⽹盘⽂件累计容量(单位KB),⽬录数(单位个)、⽂件数量(单位个)、图⽚数(单位个)、视频数(单位个),实现后按顺序提交运⾏的⽹页截图和增改的java、JSP代码到答题框。
任务⼆、⼤数据案例开发(5分)
1.单个Hadoop M-R分词统计
基于hadoop SDK提供的接⼝和Web开发框架代码,对⽬录路径下的“FourMasterpiecesofChina/pdf/ WaterMargin.pdf”pdf格式⽂件,使⽤hadoop
map-reduce进⾏⽂字内容分析,通过词汇统计分析⽂章中出现次数最多的前10个词汇,将统计结果以可视化d3.js框架饼图(pie)的形式在单独⼀个Web⽹页展⽰出来。
提交分词统计结果的⽹页截图和添加的Java、JSP代码到答题框。
2.两个⽂件Hadoop M-R分词统计(2分)
基于hadoop SDK提供的接⼝和Web开发框架代码,对同⼀⽬录路径下的选择“FourMasterpiecesofChina/pdf/ WaterMargin.pdf”和“FourMasterpiecesofChina/pdf/ RomanceoftheThreeKingdoms.pdf”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提供的接⼝,实现通过“我的⽂档”导航展⽰当前⽹盘所有⽂档⽂件格式功能,包括⼀下⽂档pdf、ppt、pptx、doc、docx、txt、html、xls、xlsx格式的⽂件。
实现后按顺序提交模拟器运⾏结果截图和增改的java代码到答题框。
3.⽂件排序功能(3分)
基于SDK提供的接⼝和框架代码,在云⽹盘安卓应⽤“全部⽂件”界⾯的顶部操作栏(Actionbar)增加“时间排序”按钮,完善代码增加⽂件夹的修改时间,在此基础上,不区分⽂件夹和⽂件,点击“时间排序”实现对内部云存储对象按照时间“降序”排序展⽰(即最新改动对象放在列表最上⾯)。
实现后按顺序提交模拟器运⾏结果截图和增改的java、xml的代码到答题框。
2.上传⽂件功能(2分)
基于SDK提供的接⼝,在全部⽂档列表中增加长按操作“上传⽂件”,上传Android⼯程下的“AndroidManifest.xml”到容器根⽬录下。
按顺序提交模拟器运⾏结果截图和增改的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 (/doc/12c9c14d59fafab069dc5022aaea998fcc2240ab.html 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.绘制OpenStack Swift云存储服务的架构图并予以说明。
2.绘制创建⽂件夹功能的时序图并予以说明。
3.绘制IaaS架构图并予以说明。
在答题框内进⾏内容编写,插⼊相关的图表。
第五部分:职业素养(5分)
依⼯作作风、安全意识、团队协作和遵守考场纪律情况由裁判现场判分。