在线运维系统技术方案

技术编号:20588454 阅读:40 留言:0更新日期:2019-03-16 07:01
本发明专利技术提供一种在线运维系统,包括:服务工厂和多个节点,基于每个节点运行一个负载监控中心和至少一个服务实例,服务工厂用于根据服务‑实例映射表和实例‑地址映射表在当前所有服务实例中为用户请求的服务分配一个服务实例以响应用户请求的服务,还用于根据实例负载表和节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例;负载监控中心用于定时收集与负载监控中心所对应节点上的全部服务实例的实例负载和所对应节点的节点负载,并将实例负载和节点负载发送给服务工厂,以使服务工厂定时更新实例负载表和节点负载表;服务实例用于处理用户请求的服务。本发明专利技术能够根据服务访问压力,自适应调整服务实例的规模。

On-line Operation and Maintenance System

The invention provides an on-line operation and maintenance system, which includes a service factory and multiple nodes, running a load monitoring center and at least one service instance based on each node. The service factory is used to allocate a service instance to respond to user requests for services in all current service instances according to service instance mapping table and instance address mapping table. It is used to add service instances or recycle service instances on the basis of current service instances according to instance load table and node load table. Load monitoring center is used to collect instance loads and node loads of all service instances and corresponding nodes on the corresponding nodes of load monitoring center regularly, and send instance loads and node loads to service factory for service. The factory regularly updates the instance load table and node load table; the service instance is used to process the service requested by the user. The invention can adjust the scale of service instance adaptively according to service access pressure.

【技术实现步骤摘要】
在线运维系统
本专利技术涉及服务器运维
,尤其涉及一种在线运维系统。
技术介绍
曙光在线运维系统EasyOP已经接入了数以百计的集群,节点总数也达到了数万个。EasyOP目前主要提供两类服务:监控服务和查询管理服务,其中,监控服务的访问压力相对比较稳定,只有在接入新集群和删除旧集群时才会发生较大变化,而查询管理服务的访问压力是实时波动的,且波动较大,随时会出现飙高或者空闲的状态。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下技术问题:现有的在线运维系统当服务访问压力出现飙高时,无法满足服务需求,当服务访问压力较低时,又会出现资源浪费。
技术实现思路
为解决现有技术的问题,本专利技术提供一种在线运维系统,能够根据服务访问压力,自适应调整服务实例的规模。本专利技术提供一种在线运维系统,包括:服务工厂和多个节点,基于每个节点运行一个负载监控中心和至少一个服务实例,所述服务工厂存储有实例负载表、节点负载表、服务-实例映射表以及实例-地址映射表,其中,所述服务工厂,用于根据所述服务-实例映射表和所述实例-地址映射表在当前所有服务实例中为用户请求的服务分配一个服务实例以响应所述用户请求的服务,还用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例,其中,所述服务-实例映射表和所述实例-地址映射表由所述服务工厂在新增服务实例或者回收服务实例之后更新,所述实例负载表和所述节点负载表由所述服务工厂根据所述负载监控中心发来的实例负载和节点负载定时更新;所述负载监控中心,用于定时收集与所述负载监控中心所对应节点上的全部服务实例的实例负载和所对应节点的节点负载,并将实例负载和节点负载发送给所述服务工厂,以使所述服务工厂定时更新所述实例负载表和所述节点负载表;所述服务实例,用于处理所述用户请求的服务。可选地,所述服务工厂用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上新增服务实例,包括:所述服务工厂根据所述实例负载表获取当前所有服务实例的实例负载;当所有服务实例的实例负载都高于第一阈值时,所述服务工厂从所述节点负载表中选择节点负载最低的节点;所述服务工厂查看所选择的节点上是否有服务镜像,如果有服务镜像,则远程启动所选择的节点上的服务镜像,开启新的服务实例,如果没有服务镜像,则分发服务镜像至所选择的节点,再远程启动所选择的节点上的服务镜像,开启新的服务实例;启动新的服务实例之后,所述服务工厂更新所述服务-实例映射表和所述实例-地址映射表。可选地,所述服务工厂用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上回收服务实例,包括:所述服务工厂根据所述实例负载表获取当前所有服务实例的实例负载,计算所有服务实例的平均实例负载;当平均实例负载在设定时间间隔内持续低于第二阈值时,所述服务工厂从所述节点负载表中选择节点负载最高的节点,停止所选择的节点上的一个服务实例;停止所述服务实例之后,所述服务工厂更新所述服务-实例映射表和所述实例-地址映射表。可选地,所述服务工厂,还用于接收用户请求的服务,在服务注册表中记录服务名称和服务镜像路径。可选地,所述服务工厂,还用于新增节点时,在节点注册表中记录节点名称、节点地址。本专利技术提供的在线运维系统,基于工厂模式弹性扩缩服务实例规模,当服务访问压力较高时,服务工厂热扩展服务实例以满足服务需求;当服务访问压力较低时,服务工厂热回收多余的服务实例以节省系统资源,与现有技术相比,本专利技术能够根据服务访问压力,自适应调整服务实例的规模,协调资源使用,提高资源利用率。附图说明图1为本专利技术的在线运维系统的一个实施例的系统架构示意图;图2为本专利技术的在线运维系统响应用户请求的服务的过程示意图;图3为本专利技术的在线运维系统的服务工厂新增服务实例的流程示意图;图4为本专利技术的在线运维系统的服务工厂回收服务实例的流程示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种在线运维系统,包括:服务工厂和多个节点,每个节点指一台服务器或者一台虚拟机,也就是说,是一个操作系统环境,基于每个节点运行一个负载监控中心和至少一个服务实例,服务工厂存储有实例负载表、节点负载表、服务-实例映射表以及实例-地址映射表,其中,服务工厂,用于根据服务-实例映射表和实例-地址映射表在当前所有服务实例中为用户请求的服务分配一个服务实例以响应用户请求的服务,还用于根据实例负载表和节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例以适应服务访问压力;负载监控中心,用于定时收集与负载监控中心所对应节点上的全部服务实例的实例负载和所对应节点的节点负载,并将实例负载和节点负载发送给服务工厂,以使服务工厂定时更新实例负载表和节点负载表;服务实例,用于处理用户请求的服务。需要说明的是,实例负载表记录了所有服务实例的工作负荷,节点负载表记录了所有节点的工作负荷,服务-实例映射表记录了用户请求的服务与服务实例之间的映射关系,实例-地址映射表记录了每个服务实例与各自地址之间的映射关系,可见,实例负载表和节点负载表用于表示服务访问压力,实例负载表和节点负载表由服务工厂根据负载监控中心发来的实例负载和节点负载定时更新,服务-实例映射表和实例-地址映射表用于为用户请求的服务分配一个服务实例,服务-实例映射表和实例-地址映射表由服务工厂在新增服务实例或者回收服务实例之后更新。为了更加直观,以两个节点为例来说明在线运维系统的架构,如图1所示,在线运维系统包括服务工厂101和节点1、节点2,基于节点1运行负载监控中心10、服务实例11和服务实例12,基于节点2运行负载监控中心20和服务实例21,其中,服务工厂101用于根据服务-实例映射表和实例-地址映射表在当前所有服务实例(服务实例11、12和21)中为用户请求的服务分配一个服务实例以响应用户请求的服务,图1中服务工厂101将用户请求的服务分配给了服务实例11,服务工厂101还用于根据实例负载表和节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例;负载监控中心10用于定时收集节点1上的服务实例11和12的实例负载以及节点1的节点负载,并发送给服务工厂101;负载监控中心20用于定时收集节点2上的服务实例21的实例负载以及节点2的节点负载,并发送给服务工厂101;服务实例11、12和21都可以用于处理用户请求的服务,图1中由服务实例11处理用户请求的服务。补充说明的是,服务工厂101在当前所有服务实例中为用户请求的服务分配一个服务实例,并由该服务实例响应用户请求的服务的过程可以用图2来表示。整个流程为:(1)用户向服务工厂请求服务;(2)服务工厂根据节点负载表和实例负载表,选择一个负载最低的服务实例并返回该实例地址和端口给用户;(3)用户向该服务实例请求服务处理;(4)服务实例将处理结果响应给用户。进一步地,服务工厂新增服务实例有两个时本文档来自技高网...

【技术保护点】
1.一种在线运维系统,其特征在于,包括:服务工厂和多个节点,基于每个节点运行一个负载监控中心和至少一个服务实例,所述服务工厂存储有实例负载表、节点负载表、服务‑实例映射表以及实例‑地址映射表,其中,所述服务工厂,用于根据所述服务‑实例映射表和所述实例‑地址映射表在当前所有服务实例中为用户请求的服务分配一个服务实例以响应所述用户请求的服务,还用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例,其中,所述服务‑实例映射表和所述实例‑地址映射表由所述服务工厂在新增服务实例或者回收服务实例之后更新,所述实例负载表和所述节点负载表由所述服务工厂根据所述负载监控中心发来的实例负载和节点负载定时更新;所述负载监控中心,用于定时收集与所述负载监控中心所对应节点上的全部服务实例的实例负载和所对应节点的节点负载,并将实例负载和节点负载发送给所述服务工厂,以使所述服务工厂定时更新所述实例负载表和所述节点负载表;所述服务实例,用于处理所述用户请求的服务。

【技术特征摘要】
1.一种在线运维系统,其特征在于,包括:服务工厂和多个节点,基于每个节点运行一个负载监控中心和至少一个服务实例,所述服务工厂存储有实例负载表、节点负载表、服务-实例映射表以及实例-地址映射表,其中,所述服务工厂,用于根据所述服务-实例映射表和所述实例-地址映射表在当前所有服务实例中为用户请求的服务分配一个服务实例以响应所述用户请求的服务,还用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上新增服务实例或者回收服务实例,其中,所述服务-实例映射表和所述实例-地址映射表由所述服务工厂在新增服务实例或者回收服务实例之后更新,所述实例负载表和所述节点负载表由所述服务工厂根据所述负载监控中心发来的实例负载和节点负载定时更新;所述负载监控中心,用于定时收集与所述负载监控中心所对应节点上的全部服务实例的实例负载和所对应节点的节点负载,并将实例负载和节点负载发送给所述服务工厂,以使所述服务工厂定时更新所述实例负载表和所述节点负载表;所述服务实例,用于处理所述用户请求的服务。2.根据权利要求1所述的在线运维系统,其特征在于,所述服务工厂用于根据所述实例负载表和所述节点负载表,在当前所有服务实例的基础上新增服务实例,包括:所述服务工厂根据所述实例负载表获取当前所有服务实例的实例负载;当所有...

【专利技术属性】
技术研发人员:毕研儒张晋锋解文龙苗海锋
申请(专利权)人:曙光信息产业北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1