首页> 中国专利> 一种基于微服务的高校教学云平台

一种基于微服务的高校教学云平台

摘要

本发明公开了一种基于微服务的高校教学云平台,通过虚拟私有网将校园网与私有云结合起来构筑云平台,利用微服务架构构建该云平台的服务;使用加利福尼亚大学计算机科学系开发的开源项目桉树搭建私有云;客户端的所有请求都首先经过API网关,然后由它将请求路由到合适的微服务,通常API网关会调用多个微服务并合并结果来处理一个请求。本发明把微服务架构用于高校教学云平台,将教学云平台的应用解耦成不同功能的微服务;使得教学的各个环节以微服务方式被调用,响应快、效率高;通过虚拟私有网络将该私有云与校园网连接起来,形成高校教学云平台,为教师、学生提供更好的资源共享,具有良好的弹性与扩展性。

著录项

  • 公开/公告号CN105577780A

    专利类型发明专利

  • 公开/公告日2016-05-11

    原文格式PDF

  • 申请/专利权人 武汉理工大学;

    申请/专利号CN201510963689.2

  • 申请日2015-12-21

  • 分类号H04L29/08(20060101);H04L29/06(20060101);

  • 代理机构北京科亿知识产权代理事务所(普通合伙);

  • 代理人汤东凤

  • 地址 430070 湖北省武汉市洪山区珞狮路122号

  • 入库时间 2023-12-18 15:20:54

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-04

    授权

    授权

  • 2016-06-08

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20151221

    实质审查的生效

  • 2016-05-11

    公开

    公开

说明书

技术领域

本发明在于使用微服务构筑高校教学云平台,属于云计算技术领域。

背景技术

如何解决教学需求的快速发展变化,敏捷性、灵活性和可扩展性需求不断增长,同时能够更加快速高效的交付软件;如何实现教育资源的共享、为学生提供良好的、低消费但高质量的学习、交流平台,是当前亟需解决的两个问题,尤其随着移动互联网、校园网的普及与迅速发展。一个好的架构要求能够快速应对服务扩容、服务开放、服务变化、服务整合等需求;学生通过访问校园网,可以节省流量、充分共享网络上的各种资源,主动参与教学过程的各个环节:预习、作业、每章总结、实验、交流,以提高教与学的质量,提高学习效率;同时,一个好的平台还可以为学生提供学习、实验的环境,为学生提供强大的计算资源、存储资源等,使学生可以借助平台做大数据量的计算,求解大规模的问题,进行实验以帮助学生更好地理解所学内容、提高解决问题的能力。

虽然,一些大规模的e-Learning网格等环境有很多成果,但罕见的是真正用于学校的实践成果。

发明内容

本发明的目的在于提供一种基于微服务的高校教学云平台,旨在将系统功能分解到各个离散的微服务中以实现对解决方案的解耦;将结合私有云并与校园网连接起来,以提高系统的灵活性、可靠性、开放性等特点,同时提高教学的质量和学习的效率。

本发明是这样实现的,一种基于微服务的高校教学云平台,所述基于微服务的高校教学云平台利用微服务架构构建系统的服务,并通过虚拟私有网将校园网与桉树私有云结合起来构筑云平台。

所述微服务架构从上到下依次为平台服务层、服务调用层、微服务层和资源层:

平台服务层,用于为用户提供的使用系统不同功能的入口,分为登录、用户信息管理、教师/学生资源共享、预习管理、课后作业管理、实验报告管理、每章总结管理、公告管理、讨论社区;

服务调用层,包括生成特定的APIs、API网关控制和协议翻译技术;

微服务层,用于供外部调用的微服务的集合;不同微服务允许使用不同的编程语言和数据库;

资源层,用于与云平台结合,使用CentOS服务器操作系统,MySQL数据库和Tomcat服务器管理系统。

进一步,所述API网关包括服务发现模块和处理局部失败模块:

服务发现模块,API网关需要通过查询服务注册中心来确定该平台中可提供的微服务的位置;服务注册中心是一个包含所有微服务实例及其位置的数据库;

处理局部失败模块,该模块用于体现在服务注册中心中查找微服务位置的过程,将自动进行逻辑判断,直到查到可用微服务或返回无可用微服务并更新可用服务表为止。

进一步,所述协议翻译技术包括:

生成翻译参数模块,用于从服务表中查到的对应微服务定位参数和用户参数;

匹配翻译规则模块和协议转化模块,通过微服务定位参数,用于将用户请求附带的协议转化为接入某微服务所需要满足的协议。

进一步,所述桉树私有云包括:

云控制器,是用户和管理员进入基于微服务的高校教学云平台的入口,同时用于控制管理所有的节点控制器;

集群控制器,用于管理整个虚拟机实例网络,维护有关运行在系统内的节点控制器的全部信息,开启虚拟机实例的请求,路由到具有可用资源的节点控制器节点上;

存储控制器,实现Amazon的S3接口,它与Walrus联合工作,用于存储和访问用户数据及虚拟机映像;

Walrus,提供和S3一致的接口,管理对桉树私有云的存储服务的访问;

节点控制器,控制当前机器节点上的虚拟机实例。

本发明提供的基于微服务的高校教学云平台,将微服务架构用于高校教学云平台,将教学云平台的应用解耦成不同功能的微服务;使得预习、作业、每章总结、实验、交流等各个环节以微服务方式被调用,响应快、效率高;同时通过开源软件建立私有云,通过虚拟私有网络将该私有云与校园网连接起来,以形成高校教学云平台,为教师、学生提供更好的资源共享,具有良好的弹性与扩展性。本发明的微服务可以解决需求的快速发展变化,敏捷性、灵活性和可扩展性需求不断增长;相比其他架构,微服务架构能够更加快速高效的交付软件,微服务具有以下优势:

1)单一职责原则:每个微服务提供且仅提供某功能中一个单独的部分。

2)明确发布接口:每个微服务都会发布一个定义明确且保持不变的接口。

3)容易升级:每个微服务都允许独立部署或重复部署,但并不影响整个系统。因此,升级微服务很容易。

4)开发语言多样化:微服务之间是解耦和的,团队可以根据微服务的特点选择合适的开发语言、持久化存储、工具和方法。

5)轻量级通信协议:微服务之间是通过轻量级的协议进行通信的,如:REST同步协议、AMQP异步协议、STOMP协议、MQTT协议等。

6)微服务易于开发、理解和维护;比单体应用启动快;局部修改容易,且容易部署,有利于持续集成和交付;故障隔离,一个服务出现故障不会影响整个应用;不会受限于任何技术栈。

附图说明

图1是本发明实施例提供的微服务架构示意图。

图2是本发明实施例提供的桉树私有云组成示意图。

图3是本发明实施例提供的教学云平台与私有云的集成示意图。

图4是本发明实施例提供的通过VPN实现校园网与私有云互联的拓扑示意。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面结合附图对本发明的应用原理作详细的描述。

本发明实施例的基于微服务的高校教学云平台通过虚拟私有网将校园网与私有云结合起来构筑云平台,利用微服务架构构建该云平台的服务;

使用加利福尼亚大学计算机科学系开发的开源项目桉树搭建私有云;桉树私有云平台安装在虚拟机和操作系统的上层,用于直接分配和管理所有的硬件资源,并且调用Puppet架构完成私有云上所有应用的自动化部署。桉树私有云的组成如图2所示。

进一步,使用VPN联接校园网与私有云,通过VPN实现校园网与私有云互联的拓扑图如图4。

进一步,如图1所示,所述的微服务架构从上到下依次为平台服务层、服务调用层、微服务层和资源层;

平台服务层为用户提供的使用系统不同功能的入口,主要分为登录、用户信息管理、教师/学生资源共享、预习管理、课后作业管理、实验报告管理、每章总结管理、公告管理、讨论社区;

服务调用层由三部分组成,分别是生成特定的APIs、API网关控制和协议翻译技术;

在生成特定的APIs的过程中,为了安全起见,要对用户进行权限认证和请求的合法性验证。只有具备一定的权限并且是合法的请求,才能生成特定的APIs,然后将请求发送给API网关,否则返回无权限操作或不合法请求的信息给用户。规定该APIs的格式为(URI,obj,user,mark)。其中的URI表示所请求功能的URI路径;obj表示请求的服务对象;user表示发出请求的用户;mark标示该请求来自内网还是外网,分别用1和0表示。

API网关包括两个功能:服务发现和处理局部失败。服务发现是指API网关需要通过查询服务注册中心来确定该平台中可提供的微服务的位置,而服务注册中心是一个包含所有微服务实例及其位置的数据库。提供处理局部失败的功能是因为API网关永远不能因为无限制地等待下游服务而阻塞。如果服务表指向的微服务可用,则执行下一步,否则就更新服务表,同时查找次优服务器上的服务表,以此类推,直到查到可用微服务或返回无可用微服务为止。

协议翻译技术包括生成翻译参数、协议翻译原则和协议转化三部分。其中生成翻译参数是从服务表中查到的对应微服务定位参数和一些用户参数等;匹配翻译规则和协议转化是通过微服务定位参数,将用户请求附带的协议转化为接入某微服务所需要满足的协议,例如用户通过http发送请求,但是接入该微服务需要TCP/IP协议,则协议翻译器就会将http转化成TCP/IP,然后调用指定的微服务。

微服务层是供外部调用的微服务的集合;不同微服务允许使用不同的编程语言和数据库,允许独立开发和部署。

资源层用于与云平台结合,使用CentOS服务器操作系统,MySQL数据库和Tomcat服务器管理系统。

进一步,桉树私有云包括:

云控制器,是用户和管理员进入基于微服务的高校教学云平台的入口,同时用于控制管理所有的节点控制器;

集群控制器,用于管理整个虚拟机实例网络,维护有关运行在系统内的节点控制器的全部信息,开启虚拟机实例的请求,路由到具有可用资源的节点控制器节点上;

存储控制器,实现Amazon的S3接口,它与Walrus联合工作,用于存储和访问用户数据及虚拟机映像;

Walrus,提供和S3一致的接口,管理对桉树私有云的存储服务的访问;

节点控制器,控制当前机器节点上的虚拟机实例。节点自身通过虚拟化管理软件与在线或离线虚拟机进行交互。一台单个虚拟机在一个节点机器上是作为一个独立的实例存在的。多个节点控制器组成了特定的云。

教学云平台如图3所示:

教学平台使用私有云模式,因为这种方式能够更好的结合当今的教学平台,并且这种模式可以很方便的扩展到混合云和公有云平台。使用私有云可以分配不同的相关用户来运行虚拟化的基础设施、环境和服务。同时用于管理虚拟基础设施的自动化、协调和整合网络、存储、虚拟化、用户的监控和管理现有的解决方案。使用这种方法,学生和教师可以很容易的获得教学资源、服务等。这种架构很灵活,能够充分应对校园网系统的变化,即它可以在没有任何服务停机的情况下将虚拟机移动到另一个物理节点上;能解决当前服务器管理的很多问题,同时提高操作系统和应用程序的性能。

使用VPN联接校园网与私有云,是因为它是模块化的并且可升级的,这样可以不增加额外的基础设施就可以提供大量的容量和应用,而且VPN使用高级加密和身份识别协议保护数据,阻止窃贼和非法操作者接触数据。而且可以管理其他的安全设置、网络管理变化。通过VPN实现校园网与私有云互联的拓扑图如图4。

本发明将私有云与校园网放在不同的网络域,校园网与私有云中的所有数据通过用户网关和VPN网关进行传输。本发明提出一种简单的设置,允许本地网络与托管于桉树的私人VPN之间进行通信,中间的通道技术使用的是OpenVPN。实现该配置需要一个桉树网络服务账户,局域网和一个连接上能够运行CentOS的Linux服务器。通道使用PPTP协议(点对点通道协议),不需要其他任何额外的软件。

虚拟私有云实例的访问不是从Internet,除非你将灵活的、富有弹性的IP同这些实例相关联,如果不想将这些实例公开,可能会考虑设立OpenVPN访问服务器创建一个安全的VPN通道来访问EC2实例。在Eucalyptus私有云中安装OpenVPN的步骤如下:

步骤一、启动桉树机器映像(EucalyptusMachineImage,简称EMI);

EMI是一个虚拟磁盘映像,内核映像和RAM磁盘映像,以及包含有关图像元数据的XML文件的组合。存储在WS3上并用做创建实例的模板。实例是从EMI部署的一个虚拟机,同时也是一个运行的EMI副本。本发明中为处理学生实践的大数据的分析,开发了Hadoop映像;

步骤二、启动OpenVPN访问服务器实例;

步骤三、运行初始配置工具;

步骤四、建立网络和VPN设置。

本发明把微服务架构用于高校教学云平台,将教学云平台的应用解耦成不同功能的微服务;使得预习、作业、每章总结、实验、交流等各个环节以微服务方式被调用,响应快、效率高;同时通过开源软件建立私有云,通过虚拟私有网络将该私有云与校园网连接起来,以形成高校教学云平台,为教师、学生提供更好的资源共享,具有良好的弹性与扩展性。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号