CN114697319B - 一种公有云的租户业务管理方法及装置 - Google Patents
一种公有云的租户业务管理方法及装置 Download PDFInfo
- Publication number
- CN114697319B CN114697319B CN202011630366.9A CN202011630366A CN114697319B CN 114697319 B CN114697319 B CN 114697319B CN 202011630366 A CN202011630366 A CN 202011630366A CN 114697319 B CN114697319 B CN 114697319B
- Authority
- CN
- China
- Prior art keywords
- instance
- virtual
- virtual instance
- information
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 159
- 238000000034 method Methods 0.000 claims abstract description 149
- 238000010586 diagram Methods 0.000 claims abstract description 87
- 230000002159 abnormal effect Effects 0.000 claims description 113
- 230000003993 interaction Effects 0.000 claims description 89
- 230000001419 dependent effect Effects 0.000 claims description 78
- 239000003795 chemical substances by application Substances 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012790 confirmation Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 11
- 239000000758 substrate Substances 0.000 claims 1
- 230000004044 response Effects 0.000 description 72
- 230000008569 process Effects 0.000 description 61
- 238000013461 design Methods 0.000 description 39
- 238000001514 detection method Methods 0.000 description 11
- 230000005856 abnormality Effects 0.000 description 7
- 230000002547 anomalous effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 238000012800 visualization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- IHCCLXNEEPMSIO-UHFFFAOYSA-N 2-[4-[2-(2,3-dihydro-1H-inden-2-ylamino)pyrimidin-5-yl]piperidin-1-yl]-1-(2,4,6,7-tetrahydrotriazolo[4,5-c]pyridin-5-yl)ethanone Chemical compound C1C(CC2=CC=CC=C12)NC1=NC=C(C=N1)C1CCN(CC1)CC(=O)N1CC2=C(CC1)NN=N2 IHCCLXNEEPMSIO-UHFFFAOYSA-N 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5061—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the interaction between service providers and their network customers, e.g. customer relationship management
- H04L41/5067—Customer-centric QoS measurements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/301—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
- H04L43/045—Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/501—Performance criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种公有云的租户业务管理方法及装置,涉及云技术领域,该方法能够提高云租户在管理所拥有虚拟实例时的用户体验。该方法运行于云平台,该方法包括:提供云服务控制界面,并确定租户通过该云服务控制界面购买的多个虚拟实例。在租户购买的多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群,以及在云服务控制界面上显示该实例集群中虚拟实例的拓扑关系图。
Description
技术领域
本申请涉及云技术领域,尤其涉及一种公有云的租户业务管理方法及装置。
背景技术
云(cloud)是当前提供虚拟计算和存储的热门平台。运行于云上的业务,通常通过运行于物理机上的虚拟实例(例如虚拟机(virtual machine,VM)和容器)来实现其功能,从而实现为用户提供需要的服务。其中,不同的虚拟实例可以提供不同的服务。
这样,云租户即可通过从云提供商处购买的多个虚拟实例来运行其开发的业务应用,进而通过这些业务应用为用户提供不同的服务。
基于此,如何提高公有云的云租户在管理用于运行业务应用的虚拟实例时的用户体验,是亟待解决的技术问题。
发明内容
本申请提供了一种公有云的租户业务管理方法及装置,该方法能够提高云租户在管理所拥有虚拟实例时的用户体验。
为达上述目的,本申请提供如下技术方案:
第一方面,本申请提供了一种公有云的租户业务管理方法,该方法运行于云平台,该方法包括:提供云服务控制界面。在租户通过云服务控制界面购买的多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群。在云服务控制界面显示该实例集群中虚拟实例的拓扑关系图。
通过本申请提供的方法,可以实现将具有拓扑关联关系的实例集群中虚拟实例的拓扑关系图显示给拥有这些虚拟实例的租户。这样,通过实现对实例集群中虚拟实例之间拓扑关系的可视化,能够提高租户在管理其购买的多个虚拟实例时的用户体验。
在一种可能的设计方式中,上述“在云服务控制界面显示该实例集群中虚拟实例的拓扑关系图”,包括:提供用于接收租户输入的触发命令的拓扑关系图显示接口。根据接收到的触发命令,获取该实例集群中虚拟实例的拓扑信息。在云服务控制界面显示基于该拓扑信息得到的、实例集群中虚拟实例的拓扑关系图。
通过该可能的设计,可以实现租户随时调取所购买虚拟实例的拓扑关系图,提高了本申请提供方法的灵活应用。
在另一种可能的设计方式中,上述拓扑信息是多个虚拟实例中的任两个虚拟实例之间在建立连接通信时,基于建立连接通信的建立连接请求确认报文的报文头信息确定的。
通过该可能的设计,本申请提供的方法可以通过建立连接请求确认报文的报文头信息确定出虚拟实例之间的依赖关系,进而可以构建出具有依赖关系的、且用于支持同一应用服务的多个虚拟实例的拓扑关系图。可以看出,该方法不涉及用户的业务数据内容,即可以在保证用户数据隐私的前提下,分析确定出多个虚拟实例之间的依赖关系,进而得到该多个虚拟实例的拓扑关系图。
在另一种可能的设计方式中,上述方法还包括:获取上述实例集群中每个虚拟实例的性能信息。在上述拓扑关系图中显示实例集群中每个虚拟实例的性能信息。
通过该可能的设计,本申请提供的方法还可以在上述得到的拓扑关系图中每个节点显示该节点所表示虚拟实例的性能信息,即进一步提高了租户在管理其购买的多个虚拟实例时的用户体验。
在另一种可能的设计方式中,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息是基于该任一个虚拟实例作为依赖服务端时发送或接收到的报文的报文头信息确定的。
在另一种可能的设计方式中,上述的报文头信息包括报文的源地址、源端口、目标地址以及目标端口。上述的报文头信息还可以包括控制标志位、包大小,以及包括该报文头信息的报文的时间戳。
在另一种可能的设计方式中,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息包括:在预设周期内,该任一个虚拟实例的报文交互时延、该任一个虚拟实例接收业务请求的数量、或该任一个虚拟实例未回应的业务请求的数量中的至少一种。
通过该几种可能的设计,实例集群中作为依赖服务端的虚拟实例的性能信息,可以基于该虚拟实例发送或接收到的报文的报文信息确定得到。可以看出,该方法不涉及用户的业务数据内容,即可以在保证用户数据隐私的前提下,分析确定出作为依赖服务端的虚拟实例的性能信息。
在另一种可能的设计方式中,上述实例集群中每个虚拟实例的性能信息,用于确定该每个虚拟实例在实现上述应用服务时的性能分数。其中,该每个虚拟实例在实现上述应用服务时的性能分数用于确定性能存在异常的异常虚拟实例。
上述方法还包括:在上述拓扑关系图中标记确定出的实例集群中的异常虚拟实例。
通过该可能的设计,本申请提供的方法还可以在上述得到的拓扑关系图中标记处异常虚拟实例。通过在拓扑关系图中标记异常虚拟实例,可以实现向用户告警的目的。这样,可以使用户及时修复该虚拟实例,例如对该虚拟实例进行扩容等。因此,通过该方法,进一步提高了租户在管理其购买的多个虚拟实例时的用户体验。
在另一种可能的设计方式中,如果上述实例集群中每个虚拟实例在实现上述应用服务时的性能分数中存在高于阈值的性能分数,则性能分数高于阈值的虚拟实例是异常虚拟实例。如果上述实例集群中每个虚拟实例在实现上述应用服务时的性能分数中不存在高于阈值的性能分数,则实例集群中不存在异常虚拟实例。
在另一种可能的设计方式中,如果对上述实例集群中虚拟实例在实现上述应用服务时的性能从高到低进行排序,则性能排名前m的虚拟实例是异常虚拟实例,则性能排名在前m之后的虚拟实例是正常虚拟实例。
通过该可能的设计,本申请提供的方法还可以基于上述确定出的性能分数直接确定为异常虚拟实例,相比基于资源利用率和ping操作得到的网络时延所确定的异常虚拟实例,该方法在保证了用户数据隐私的前提下,定位异常虚拟实例更准确。这是由于资源利用率不能准确反映虚拟实例的性能,而ping操作得到的网络时延也不能直接反映虚拟实例的性能。
在另一种可能的设计方式中,上述方法还包括:获取运行上述实例集群中每个虚拟实例的网络设备的第一资源利用信息,以及,获取上述实例集群中每个虚拟实例的第二资源利用信息。基于该第一资源利用信息、该第二资源利用信息以及每个虚拟实例在实现上述应用服务时的性能分数,确定异常虚拟实例。其中,该第一资源利用信息用于确定网络设备的资源利用率,该第二资源利用信息用于确定虚拟实例的资源利用率。
在另一种可能的设计方式中,上述第一资源利用信息包括网络设备的中央处理器(central processing unit,CPU)利用率、内存利用率、磁盘利用率或网络时延中的至少一种。上述第二资源利用信息包括虚拟实例的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
通过该可能的设计,本申请提供的方法还可以根据网络设备和虚拟实例的资源利用率,以及上述确定出的性能分数,综合评估以确定出异常虚拟实例。这样,由于该方法综合考虑多种因素,从而进一步提高了对异常虚拟实例的定位精度,即误判异常虚拟实例的机率进一步降低。
在另一种可能的设计方式中,上述的虚拟实例包括虚拟机实例或容器实例中的任一种。
在另一种可能的设计方式中,实现上述应用服务的节点可以包括负载均衡节点、应用服务器节点以及数据库节点实现。其中,该负载均衡节点、该应用服务器节点以及该数据库节点的功能分别通过不同的虚拟实例实现。
第二方面,本申请提供一种公有云的租户业务管理装置,该装置运行于云平台,该装置包括:显示单元,用于提供云服务控制界面。确定单元,用于确定租户通过该云服务控制界面购买的多个虚拟实例;以及,用于在该多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群。该显示单元,还用于在云服务控制界面显示该实例集群中虚拟实例的拓扑关系图。
在一种可能的设计方式中,上述装置还包括获取单元。上述显示单元,还用于提供拓扑关系图显示接口,该拓扑关系图显示接口用于接收租户输入的触发命令。该获取单元,用于根据触发命令获取上述实例集群中虚拟实例的拓扑信息。上述显示单元,用于在云服务控制界面显示基于拓扑信息得到的该实例集群中虚拟实例的拓扑关系图。
在另一种可能的设计方式中,上述拓扑信息是上述多个虚拟实例中的任两个虚拟实例之间在建立连接通信时,基于建立连接通信的建立连接请求确认报文的报文头信息确定的。
在另一种可能的设计方式中,上述获取单元,还用于获取上述实例集群中每个虚拟实例的性能信息。上述显示单元,还用于在上述拓扑关系图中显示该实例集群中每个虚拟实例的性能信息。
在另一种可能的设计方式中,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息,是基于该任一个虚拟实例作为依赖服务端时发送或接收到的报文的报文头信息确定的。
在另一种可能的设计方式中,上述报文头信息包括报文的源地址、源端口、目标地址以及目标端口。上述的报文头信息还可以包括控制标志位、包大小,以及包括该报文头信息的报文的时间戳。
在另一种可能的设计方式中,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息包括:在预设周期内,该任一个虚拟实例的报文交互时延、该任一个虚拟实例接收业务请求的数量、或该任一个虚拟实例未回应的业务请求的数量中的至少一种。
在另一种可能的设计方式中,上述实例集群中每个虚拟实例的性能信息,用于确定该每个虚拟实例在实现上述应用服务时的性能分数。该每个虚拟实例在实现上述应用服务时的性能分数用于确定性能存在异常的异常虚拟实例。
上述装置还包括:标记单元,用于在上述拓扑关系图中标记实例集群中的异常虚拟实例。
在另一种可能的设计方式中,如果上述实例集群中每个虚拟实例在实现上述应用服务时的性能分数中存在高于阈值的性能分数,则性能分数高于阈值的虚拟实例是异常虚拟实例。如果上述实例集群中每个虚拟实例在实现上述应用服务时的性能分数中不存在高于阈值的性能分数,则实例集群中不存在异常虚拟实例。
在另一种可能的设计方式中,如果对上述实例集群中虚拟实例在实现上述应用服务时的性能从高到低进行排序,则性能排名前m的虚拟实例是异常虚拟实例,则性能排名在前m之后的虚拟实例是正常虚拟实例。
在另一种可能的设计方式中,上述的获取单元,还用于获取运行实例上述集群中每个虚拟实例的网络设备的第一资源利用信息,以及,用于获取实例集群中每个虚拟实例的第二资源利用信息。上述的确定单元,还用于基于该第一资源利用信息、该第二资源利用信息以及每个虚拟实例在实现上述应用服务时的性能分数,确定上述异常虚拟实例。
其中,该第一资源利用信息用于确定网络设备的资源利用率,该第二资源利用信息用于确定虚拟实例的资源利用率。
在另一种可能的设计方式中,上述的第一资源利用信息包括网络设备的中央处理器CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。上述的第二资源利用信息包括虚拟实例的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
在另一种可能的设计方式中,上述虚拟实例包括虚拟机实例或容器实例中的任一种。
在另一种可能的设计方式中,实现上述应用服务的节点可以包括负载均衡节点、应用服务器节点以及数据库节点实现。其中,该负载均衡节点、该应用服务器节点以及该数据库节点的功能分别通过不同的虚拟实例实现。
应理解,上述划分的各个功能模块/单元可以集成为一个或多个单元/模块,上述划分的各个功能模块/单元执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。
第三方面,本申请实施例提供了一种公有云的租户业务管理装置。该公有云的租户业务管理装置包括:存储器和一个或多个处理器,存储器和处理器耦合。存储器用于存储计算机指令,处理器用于调用该计算机指令,以执行如第一方面及其任一种可能的设计方式提供的任一种方法。
第四方面,本申请实施例提供了一种公有云的租户业务管理***,该***包括如第二方面及其任一种可能的设计方式提供的任一种公有云的租户业务管理装置,以及多个代理模块,该多个代理模块分别部署于不同的网络设备中。其中,对于该多个代理模块中的任一个代理模块而言,该任一个代理模块用于获取虚拟实例的拓扑信息、性能信息、性能分数或资源利用信息中的至少一种。该资源利用信息包括运行于部署该任一个代理模块的网络设备的资源利用信息,以及该网络设备上运行的虚拟实例的资源利用信息。
第五方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序(或指令),当该计算机程序(或指令)在计算机上运行时,使得该计算机执行上述第一方面中的任一种可能的实现方式提供的任一种方法。
第六方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第一方面中的任一种可能的实现方式提供的任一种方法被执行。
第七方面,本申请实施例提供了一种芯片***,包括:处理器,处理器用于从存储器中调用并运行该存储器中存储的计算机程序,执行第一方面中的实现方式提供的任一种方法。
可以理解的是,上述提供的任一种装置、计算机存储介质、计算机程序产品或芯片***等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
在本申请实施例中,上述公有云的租户业务管理装置和公有云的租户业务管理***的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请实施例类似,属于本申请实施例权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的一种管理装置的硬件结构示意图;
图2a为本申请实施例提供的管理***的一种架构示意图;
图2b为本申请实施例提供的管理***的另一种架构示意图;
图3为本申请实施例提供的一种网页应用服务的架构示意图;
图4为本申请实施例提供的一种公有云的租户业务管理方法的流程示意图;
图5为客户端和服务端之间通过三次握手过程来建立TCP连接的示意图;
图6为本申请实施例提供的一种虚拟实例的报文交互时延的示意图;
图7为本申请实施例提供的另一种虚拟实例的报文交互时延的示意图;
图8为本申请实施例提供的一种管理装置接收租户的触发命令的示意图;
图9为本申请实施例提供的一种管理装置基于拓扑信息所生成的拓扑关系图;
图10为本申请实施例提供的一种显示拓扑关系图的示意图;
图11为本申请实施例提供的另一种显示拓扑关系图的示意图;
图12a为本申请实施例提供的又一种显示拓扑关系图的示意图;
图12b为本申请实施例提供的又一种显示拓扑关系图的示意图;
图13为本申请实施例提供的一种管理装置的结构示意图;
图14为本申请实施例提供的一种芯片***的结构示意图;
图15为本申请实施例提供的计算机程序产品的结构示意图。
具体实施方式
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的实施例中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个第二报文是指两个或两个以上的第二报文。本文中术语“***”和“网络”经常可互换使用。
应理解,在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
本申请实施例提供了一种公有云的租户业务管理方法,该方法可以运行于云平台。该方法通过在租户所购买的多个虚拟实例中,基于该多个虚拟实例之间的拓扑关联关系,确定出用于支持同一应用服务的多个虚拟实例的实例集群。进一步的,通过本申请实施例提供的方法,可以在云服务控制界面显示指示该实例集群中虚拟实例之间拓扑关联关系的拓扑关系图。
其中,具有拓扑关联关系的虚拟实例,即为具有依赖关系的虚拟实例。这样,通过实现实例集群中虚拟实例拓扑关系的可视化,可以提高租户在管理其购买的多个虚拟实例时的用户体验。
本申请实施例还提供一种公有云的租户业务管理装置,该公有云的租户业务管理装置可以是任意具有计算处理能力的计算装置,该公有云的租户业务管理装置可以部署于云平台中,例如部署于公有云的云平台中。
为简单描述,在本申请实施例下文中将“公有云的租户业务管理装置”简称为“管理装置”。参考图1,图1示出了一种管理装置的硬件结构示意图。如图1所示,管理装置10包括处理器11、存储器12、通信接口13、输入输出接口14以及总线15。处理器11、存储器12、通信接口13以及输入输出接口14之间可以通过总线15连接。
处理器11是管理装置10的控制中心,可以是一个通用中央处理单元(centralprocessing unit,CPU),也可以是其他通用处理器等。其中,通用处理器可以是微处理器或者是任何常规的处理器等。
作为一个示例,处理器11可以包括一个或多个CPU,例如图1中所示的CPU 0和CPU1。
存储器12可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
一种可能的实现方式中,存储器12可以独立于处理器11存在。
存储器12可以通过总线15与处理器11相连接,用于存储数据、指令或者程序代码。处理器11调用并执行存储器12中存储的指令或程序代码时,能够实现本申请实施例提供的公有云的租户业务管理方法。
另一种可能的实现方式中,存储器12也可以和处理器11集成在一起。
通信接口13,用于管理装置10与其他设备(如代理模块或数据库等)通过通信网络连接,所述通信网络可以是以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area networks,WLAN)等。
通信接口13可以包括用于接收数据的接收单元,以及用于发送数据的发送单元。
输入输出接口14,用于实现管理装置10和租户之间的人机交互。输入输出接口24可以是鼠标,键盘、显示屏等器件,当然不限于此。
作为示例,管理装置10可以通过输入输出接口(例如显示屏)向租户显示实例集群中虚拟实例的拓扑关系图等。
总线15,可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。
为便于表示,图1中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要指出的是,图1中示出的结构并不构成对该管理装置10的限定,除图1所示部件之外,该管理装置10可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本申请实施例还提供一种公有云的租户业务管理***。该公有云的租户业务管理***包括上述的管理装置和至少一个代理模块。为简单描述,在本申请实施例下文中将该“公有云的租户业务管理***”简称为“管理***”。
其中,代理模块可以部署于网络设备中,一个网络设备中可以部署一个代理模块。这里,该网络设备可以是任意联网的物理节点,该物理节点例如可以是物理机。其中,一个物理节点上可以运行有一个或多个虚拟实例,该虚拟实例可以是虚拟机业务或容器业务等,当然不限于此。
具体的,该代理模块可以用于确定运行于部署该代理模块的网络设备的虚拟实例的拓扑信息。其中,虚拟实例的拓扑信息包括该虚拟实例的标识号、与该虚拟实例之间具有依赖关系的虚拟实例的标识号、以及该依赖关系。
该代理模块还可以用于检测运行于部署该代理模块的网络设备、且作为依赖(dependency)服务端的虚拟实例的性能信息,以及检测运行于该网络设备上的虚拟实例所依赖的虚拟实例的性能信息。然后,该代理模块可以基于检测到的虚拟实例的性能信息确定虚拟实例的性能分数。
该代理模块还可以用于检测部署该代理模块的网络设备的第一资源利用信息,以及检测该网络设备上所运行的虚拟实例的第二资源利用信息。
其中,代理模块检测虚拟实例的性能信息、基于虚拟实例的性能信息确定虚拟实例性能分数、以及检测第一资源利用信息和第二资源利用信息的过程,可以参考下文方法中的描述,这里不作赘述。
管理装置可以和上述至少一个代理模块连接通信,并获取到该至少一个代理模块所确定的虚拟实例的拓扑信息,该至少一个代理模块所检测到的虚拟实例的性能信息和基于该性能信息所确定的性能分数,以及该至少一个代理模块所检测到的第一资源利用信息和第二资源利用信息。
这样,管理装置即可基于获取的虚拟实例的拓扑信息,确定出租户购买的多个虚拟实例中用于支持同一应用服务的虚拟实例的实例集群,并将该实例集群的拓扑关系图通过云服务控制界面显示给租户。
其中,具有依赖关系的多个虚拟实例可以构成一个实例集群。对于任一个实例集群而言,该实例集群用于实现一个应用服务,该实例集群中的不同虚拟实例,用于执行该应用服务中的不同任务或进程。其中,管理装置如何确定实例集群的具体说明可以参考下文方法的描述,这里不作赘述。
另外,管理装置还可以将获取到的实例集群中虚拟实例的性能信息显示在上述的拓扑关系图上,以告知租户虚拟实例当前的性能状况。
进一步的,管理装置还可以根据获取到的虚拟实例的性能分数和资源利用信息,在全局角范围内确定性能存在异常的异常虚拟实例,并将异常虚拟实例标记在上述的拓扑关系图上,以通知租户对异常的虚拟实例进行处理。
参考图2a,图2a示出了上述管理***的一种架构示意图。如图2a所示,管理***20包括管理装置10和m个代理模块21。
其中,管理装置10和m个代理模块21直接连接通信,这样,管理装置10即可接收到该m个代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息,并对这些信息做进一步处理。
参考图2b,图2b示出了上述管理***的另一种架构示意图。如图2b所示,管理***20包括管理装置10、m个代理模块21以及数据库22。
其中,管理装置10和数据库22连接通信,m个代理模块21和数据库22连接通信。
这样,该m个代理模块即可向数据库22上报确定出的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。然后,管理装置10即可从数据库22中读取到这些信息,并对读取到的信息做进一步处理。
可以理解的是,本申请实施例对上文中所述的应用服务不作具体限定,该应用服务例如可以是网页(web)应用服务、视频应用服务、购物应用服务、外卖应用服务、或打车应用服务等应用服务中的任一种,当然不限于此。
应理解,上述的应用服务可以通过多个虚拟实例实现其功能。
作为示例,以上述的应用服务是网页应用服务为例,参考图3,图3示出了一种网页应用服务的架构图。
如图3所示,实现该网页应用服务可以的节点可以包括:负载均衡器301,应用服务器302、应用服务器303以及数据库304。这里,负载均衡器301,应用服务器302、应用服务器303以及数据库304的功能可以分别通过不同的虚拟实例实现。
例如,如图3所示,负载均衡器301可以通过虚拟实例1实现其功能,应用服务器302可以通过虚拟实例2实现其功能,应用服务器303可以通过虚拟实例3实现其功能,以及,数据库304可以通过虚拟实例4实现其功能。
这样,通过具有对应依赖关系的虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4,即可实现上述的网页应用服务所提供的服务。也就是说,虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4构成了上述网页应用服务的实力集群。
其中,虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4可以是运行于相同网络设备上的虚拟实例,也可以是运行于不同网络设备上的虚拟实例,本申请实施例对此不作限定。
如果图3中的虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4是运行于不同网络设备上的虚拟实例,则通过本申请实施例所提供方法在获取虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4的拓扑关系图时,需要在用于运行虚拟实例1的网络设备中部署代理模块1,在用于运行虚拟实例2的网络设备中部署代理模块2,在用于运行虚拟实例3的网络设备中部署代理模块3,以及,在用于运行虚拟实例4的网络设备中部署有代理模块4。
这样,基于代理模块1、代理模块2、代理模块3以及代理模块4分别上报的各个虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息,管理装置即可确定出虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4的拓扑关系图,以及检测出性能存在异常的异常虚拟实例。
可以理解,这里的代理模块1、代理模块2、代理模块3以及代理模块4,即可以是图2中所描述的代理模块,管理装置即可以是图2中所描述的管理装置。
其中,上述代理模块获取以及上报虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息,以及管理装置对这些信息做进一步处理的过程,可以参考下文方法的描述,这里不作赘述。
下面结合附图,对本申请实施例提供的公有云的租户业务管理方法进行说明。
参考图4,图4示出了本申请实施例提供的一种公有云的租户业务管理方法的流程示意图。该方法可以应用于图3或图4所示的管理***中,为清楚描述,下文以该方法应用于图4所示的管理***中为例进行说明。
该方法可以包括以下步骤:
S101、代理模块采集报文头信息。
其中,该代理模块可以是图4所示管理***40中的任一个代理模块21,对此不作限定。
具体的,代理模块可以从部署该代理模块的网络设备的网络接口卡(networkinterface card,NIC)发送接收队列中采集待发送或已接收到的业务报文的报文头信息。
其中,该网络设备上运行有一个或多个虚拟实例,该一个或多个虚拟实例均通过该网络设备的NIC发送或接收业务报文。这样,代理模块从该网络设备的NIC发送接收队列中采集到的待发送或已接收到的业务报文的报文头信息,即为运行于该网络设备的一个或多个虚拟实例所发送或接收的业务报文的报文头信息。
其中,该报文头信息包括业务报文的网际互连协议头(internet protocolheader,IP header)和传输控制协议头(transmission control protocol header,TCPheader)。
这里,IP header包括业务报文的源地址(source IP address)、目标地址(destination IP address)以及包大小(IP packet length)。
TCP header包括业务报文的源端口(source port)、目标端口(destinationport)以及控制标志位(control flags)。
为简单描述,本申请实施例在下文中将上述目标地址和目标端口统称为目标地址信息,将上述源地址和源端口统称为源地址信息。
应理解,上述的目标地址信息用于标识接收业务报文的虚拟实例,上述的源地址信息用于标识发送业务报文的虚拟实例。上述的包大小用于标识业务报文的载荷(payload)大小,当包大小为0时,即表示业务报文的载荷为空。上述的控制标志位用于标识业务报文的类型,例如控制标志位如果是ack标志,则表示该业务报文是业务确认报文。
作为示例,当虚拟实例采用TCP/IP的通信模型,则代理模块采集TCP报文的前64个字节,该64字节的内容即包括该TCP报文的目标地址信息和源地址信息等,即包括该TCP报文的目标地址、目标端口、源地址、源端口、包大小以及控制标志位等信息。
此外,代理模块还采集NIC发送接收队列中待发送或已接收到的业务报文的时间戳,该时间戳用于标识发送或接收该业务报文的具体时间。
可以看出,在本申请实施例所提供方法中,代理模块只采集业务报文的报文头信息,该报文头信息即可用于后续确定虚拟实例的拓扑信息和性能信息等信息。可见,通过该方法确定虚拟实例的拓扑信息和性能信息等信息时,不会涉及用户的数据信息,从而充分保障了用户的数据信息安全,即保证了用户数据的隐私安全。
S102、代理模块基于采集到的报文头信息,确定虚拟实例的拓扑信息。
其中,虚拟实例的拓扑信息包括该虚拟实例的标识号、与该虚拟实例具有依赖关系的虚拟实例的标识号、以及该依赖关系。这里,虚拟实例的标识号用于唯一标识该虚拟实例。
具体的,代理模块可以基于采集到的报文头信息中的控制标志位,确定出具有依赖关系的两个虚拟实例,这样,代理模块即可以确定出虚拟实例的拓扑信息。
以上述部署有代理模块的网络设备是第一网络设备为例,可选的,当代理模块所采集到的报文头信息是第一网络设备的NIC发送队列中待发送业务报文的报文头信息,且代理模块基于所采集到的报文头信息中的控制标志位,确定该报文头信息是连接请求确认报文中的报文头信息时,则代理模块将该报文头信息中的目标地址信息所标识的虚拟实例确定为本地(local)服务端,以及将该报文头信息中的源地址信息所标识的虚拟实例确定为依赖(dependency)服务端。
应理解,在建立TCP连接时,通常需要通过三次握手过程来建立TCP连接。
以客户端请求和服务端之间建立TCP连接为例,参考图5,图5示出了客户端和服务端之间通过三次握手过程来建立TCP连接的示意图。
如图5所示,客户端先向服务端发送连接请求报文,该连接请求报文中的控制标志位包括syn标志。
接着,服务端接收到该连接请求报文后,如果同意建立TCP连接,则向客户端发送连接请求确认报文。这里,该连接请求确认报文中的控制标志位包括syn标志和ack标志。
然后,客户端接收到连接请求确认报文后,即确定服务端已同意和自身建立TCP连接,这时,客户端即向服务端发送连接确认报文。其中,该连接确认报文中的控制标志位包括ack标志。
当服务端接收到该连接确认报文后,即该客户端和该服务端之间的TCP连接建立成功。这样,该客户端即可通过该TCP连接向服务端发送业务请求报文,以及通过该TCP连接接收服务端发送的业务请求响应报文等。
应理解,在一个客户端和一个服务端之间,可以建立有多个TCP连接。
这样的话,当代理模块从第一网络设备的NIC发送队列中采集到的报文头信息中的控制标志位包括syn标志和ack标志,则代理模块确定包括该报文头信息的业务报文是两个虚拟实例之间建立TCP连接时的连接请求确认报文。
然后,代理模块即可将该报文头信息中的目标地址信息所标识的虚拟实例确定为本地服务端,以及将该报文头信息中的源地址信息所标识的虚拟实例确定为依赖服务端。
其中,作为本地服务端的虚拟实例依赖于作为依赖服务端的虚拟实例。换句话说,作为依赖服务端的虚拟实例是作为本地服务端的虚拟实例的依赖。
应理解,作为本地服务端的虚拟实例需要作为依赖服务端的虚拟实例来提供服务,即作为依赖服务端的虚拟实例向作为本地服务端的虚拟实例提供服务。
作为示例,当代理模块所采集到的报文头信息是网络设备1的NIC发送队列中待发送业务报文的报文头信息,且该报文头信息中的控制标志位包括sny标志和ack标志时,这种情况下,代理模块即将该报文头信息中目标地址信息所标识的虚拟实例0确定为本地(local)服务端,以及将该报文头信息中的源地址信息所标识的虚拟实例1确定为依赖服务端。也就是说,虚拟实例0依赖于虚拟实例1。
可选的,当代理模块所采集到的报文头信息是第一网络设备的NIC接收队列中接收到的业务报文的报文头信息,且代理模块基于所采集到的报文头信息中的控制标志位,确定该报文头信息是连接请求确认报文中的报文头信息时,则代理模块将该报文头信息中的目标地址信息所标识的虚拟实例确定为本地(local)服务端,以及将该报文头信息中的源地址信息所标识的虚拟实例确定为依赖(dependency)服务端。
其中,代理模块基于所采集到的报文头信息中的控制标志位,确定该报文头信息是连接请求确认报文中的报文头信息的具体过程,可以参考上文描述,这里不再赘述。
作为示例,当代理模块所采集到的报文头信息是网络设备1的NIC接收队列中接收到的业务报文的报文头信息,且该报文头信息中的控制标志位包括sny标志和ack标志时,这种情况下,代理模块即将该报文头信息中目标地址信息所标识的虚拟实例1确定为本地服务端,以及将该报文头信息中的源地址信息所标识的虚拟实例2确定为依赖服务端。也就是说,虚拟实例1依赖于虚拟实例2。
然后,代理模块可以基于确定出的具有依赖关系的虚拟实例,确定出虚拟实例的拓扑信息。
可选的,代理模块可以将确定出的拓扑信息添加至拓扑关系集中。应理解,代理模块中配置有该拓扑关系集。
其中,拓扑关系集中包括有多个虚拟实例的拓扑信息。应理解,对于该多个虚拟实例中的任一个虚拟实例而言,该任一个虚拟实例的拓扑信息包括该任一个虚拟实例的标识号、与该任一个虚拟实例具有依赖关系的虚拟实例的标识号、以及该依赖关系。
作为示例,当代理模块中预置的拓扑关系集通过拓扑关系表的形式实现,该拓扑关系表中的不同列可以用于体现虚拟实例之间的依赖关系,则当代理模块确定出虚拟实例0依赖于虚拟实例1,且虚拟实例1依赖于虚拟实例2,则将虚拟实例0、虚拟实例1以及虚拟实例2添加至如表1所示的拓扑关系表中:
表1
本地服务端 | 依赖服务端 |
虚拟实例0 | 虚拟实例1 |
虚拟实例1 | 虚拟实例2 |
…… | … |
应理解,代理模块中配置的拓扑关系集可以是代理模块在第一次采集到连接请求确认报文的报文头信息后建立的拓扑关系集,也可以是代理模块预先获取到的拓扑关系集,本申请实施例对此不作限定。
S103、代理模块基于报文头信息,确定虚拟实例的性能信息。
当代理模块获取到的报文头信息中的包大小的值不为0时,说明包括该报文头信息的业务报文的载荷不为空,则代理模块则基于该报文头信息确定作为依赖服务端的虚拟实例的性能信息。
其中,载荷不为空的业务报文通常称为数据报文。
应理解,作为依赖服务端的虚拟实例的性能信息,可以用于表征作为依赖服务端的虚拟实例在为其他虚拟实例提供服务时的性能。
对于作为依赖服务端的虚拟实例中的任一个虚拟实例而言,该任一个虚拟实例的性能信息可以包括:在预设周期内,该任一个虚拟实例的报文交互时延、该任一个虚拟实例接收到的业务请求的数量、或该任一个虚拟实例未回应的业务请求的数量中的至少一种。这里,该预设周期可以是代理模块采集报文头信息的采样周期。
其中,该任一个虚拟实例在预设周期内的报文交互时延,是指该任一个虚拟实例在该预设周期内所实现的报文交互过程对应报文交互时延。该报文交互过程对应的报文交互时延,是指该任一个虚拟实例接收到第一个业务请求报文的时刻,到该任一个虚拟实例在接收到第一个业务请求报文后第一次连续发送的业务响应报文中最后一个业务响应报文的时刻之间的时间差。
应理解,一个报文交互过程对应一个报文交互时延。
当该任一个虚拟实例在预设周期内实现了多个报文交互过程,则该任一个虚拟实例在该预设周期内的报文交互时延,即为该多个报文交互过程所对应的多个报文交互时延的平均报文交互时延。
这里,代理模块可以基于采集到的报文头信息中的时间戳,确定接收或发送包括该报文头信息的报文的具体时刻。这样,基于上述任一个虚拟实例接收到第一个业务请求报文的时刻,以及接收到该第一个业务请求报文后第一次连续发送的业务响应报文中最后一个业务响应报文的时刻,即可确定出该任一个虚拟实例的交互时延。
其中,代理模块如何根据所采集到的报文头信息,确定包括该报文头信息的报文是业务请求报文,或是业务响应报文,可以参考下文描述,这里不作赘述。
作为示例,参考图6,图6示出了一种虚拟实例的报文交互时延的示意图。
以虚拟实例是VM 1为例,如图6中的(a)所示,在预设周期T内,rq1是VM 1接收到的第一个业务请求报文,rs1是VM 1接收到业务请求报文rq1后第一次连续发送的业务响应报文中最后一个业务响应报文。rq2是VM 1发送业务响应报文rs1后第一个接收到的业务请求报文,rs2是VM 1接收到业务请报文rq2之后、且在预设周期T内第一次连续发送的业务响应报文中最后一个业务响应报文。
这样,VM 1在预设周期T内实现了2次业务报文交互过程,这2次业务报文交互过程包括第1次交互过程:VM 1接收到业务请求报文rq1后,对其进行处理,然后发送业务请求报文rq1的业务响应报文rs1的过程。如图6中的(a)所示,该交互过程的交互时间为t1,该t1即为业务请求报文rq1中报文头信息里的时间戳指示的时刻1和业务响应报文rs1中报文头信息里的时间戳指示的时刻2的差值。
前述的2次业务报文交互过程还包括第2次交互过程:VM 1接收到业务请求报文rq2后,对其进行处理,然后发送业务请求报文rq2的业务响应报文rs2的过程。如图6中的(a)所示,该交互过程的交互时间为t2,该t2即为业务请求报文rq2中报文头信息里的时间戳指示的时刻3和业务响应报文rs2中报文头信息里的时间戳指示的时刻4的差值。
因此,VM 1在预设周期T内的报文交互时延即为预设周期T内,VM 1所实现的2次业务报文交互过程的平均交互时间,即VM 1的报文交互时延为[(t1+t2)/2]。
如图6中的(b)所示,在第一个预设周期T1内,rq1是VM 1接收到的第一个业务请求报文,rs1是VM 1接收到业务请求报文rq1后第一次连续发送的业务响应报文中最后一个业务响应报文。rq2是VM 1发送业务响应报文rs1后第一个接收到的业务请求报文。
在第二个预设周期T2内,rs2是VM 1第一次连续发送的业务响应报文中最后一个业务响应报文,rq3是VM 1发送业务响应报文rs2后第一个接收到的业务请求报文,rs3是VM1接收到业务请报文rq3之后、且在预设周期T2内第一次连续发送的业务响应报文中最后一个业务响应报文。
这样,VM 1在预设周期T1内实现了1次业务报文交互过程,该业务报文交互过程为:VM 1接收到业务请求报文rq1后,对其进行处理,然后发送业务请求报文rq1的业务响应报文rs1的过程。如图6中的(b)所示,该交互过程的交互时间为t1,该t1即为业务请求报文rq1中报文头信息里的时间戳指示的时刻1和业务响应报文rs1中报文头信息里的时间戳指示的时刻2的差值。
跨域预设周期T1和预设周期T2,VM 1还实现了1次业务报文交互过程,该业务报文交互过程为:VM 1在预设周期T1内接收到业务请求报文rq2后,对其进行处理,然后在预设周期T2内发送业务请求报文rq2的业务响应报文rs2的过程。如图6中的(b)所示,该交互过程的交互时间为t2,该t2即为业务请求报文rq2中报文头信息里的时间戳指示的时刻3和业务响应报文rs2中报文头信息里的时间戳指示的时刻4的差值。
VM 1在预设周期T2内实现了1次业务报文交互过程,该业务报文交互过程为:VM 1接收到业务请求报文rq3后,对其进行处理,然后发送该业务请求报文rq3的业务响应报文rs3的过程。如图6中的(b)所示,该交互过程的交互时间为t3,该t3即为业务请求报文rq3中报文头信息里的时间戳指示的时刻5和业务响应报文rs3中报文头信息里的时间戳指示的时刻6的差值。
因此,在一种可能的情况中,VM 1在预设周期T1内的报文交互时延,可以是预设周期T1内,以及跨越预设周期T1和预设周期T2,VM 1所实现的2次业务报文交互过程的平均交互时间,即VM 1在预设周期T1内的报文交互时延为[(t1+t2)/2]。
这种情况下,预设周期T2内VM 1的报文交互时延,可以是预设周期T2内VM 1所实现的1次业务报文交互过程的交互时间,即预设周期T2内VM 1的报文交互时延为t3。
在另一种可能的情况中,VM 1在预设周期T1内的报文交互时延,可以是预设周期T1内VM 1所实现的1次业务报文交互过程的交互时间,即VM 1在预设周期T1内的报文交互时延为t1。
这种情况下,VM 1在预设周期T2内的报文交互时延,可以是预设周期T2内,以及跨越预设周期T1和预设周期T2,VM 1所实现的2次业务报文交互过程的平均交互时间,即VM 1在预设周期T2内的报文交互时延为[(t2+t3)/2]。
为清楚描述,本申请实施例在下文中将跨越两个预设周期的报文交互过程对应的交互时延,用来确定该两个预设周期中靠后的预设周期内虚拟实例的报文交互时延。
进一步的,如果上述任一个虚拟实例同时通过多个TCP连接与其他虚拟实例进行报文交互,则该任一个虚拟实例在预设周期内的报文交互时延,是该预设周期内该任一个虚拟实例通过该多个TCP连接所实现的多个报文交互过程对应的平均报文交互时延。
作为示例,参考图7,图7示出了另一种虚拟实例的报文交互时延的示意图。
以虚拟实例是VM 1为例,如图7所示,VM 1通过3个TCP连接与其他虚拟实例进行报文交互,该3个TCP连接包括TCP连接1,TCP连接2以及TCP连接3。
对于TCP连接1而言,在第x个预设周期Tx内,rq1-1是VM 1接收到的第一个业务请求报文,rs1-1是VM 1接收到业务请求报文rq1-1后第一次连续发送的业务响应报文中最后一个业务响应报文。rq1-2是VM 1发送业务响应报文rs1-1后接收到的第一个业务请求报文,rs1-2是VM 1接收到业务请报文rq1-2之后、且预设周期Tx内第一次连续发送的业务响应报文中最后一个业务响应报文。
这样,如图7所示,VM 1在预设周期Tx通过TCP连接1实现了2次报文交互过程,且该2次报文交互过程的交互时间分别为t1-1和t1-2。
对于TCP连接2而言,在第x个预设周期Tx内,rq2-1是VM 1接收到的第一个业务请求报文,rs2-1是VM 1接收到业务请报文rq2-1之后、且在预设周期Tx内第一次连续发送的业务响应报文中最后一个业务响应报文。
这样,如图7所示,VM 1在预设周期Tx通过TCP连接2实现了1次报文交互过程,且该报文交互过程的交互时间分别为t2-1。
对于TCP连接3而言,在第x-1个预设周期Tx-1内,rq3-1是VM 1发送的最后一个业务响应报文rs3-0后发送的第一个业务请求报文。在第x个预设周期Tx内,rs3-1是VM 1第一次连续发送的业务响应报文中最后一个业务响应报文,rq3-2是VM 1发送业务响应报文rs3-1后接收到的第一个业务请求报文,rs3-2是VM 1接收到业务请报文rq3-2之后、且在预设周期Tx内第一次连续发送的业务响应报文中最后一个业务响应报文。
这样,如图7所示,VM 1在预设周期Tx通过TCP连接3实现了2次报文交互过程,且该2次报文交互过程的交互时间分别为t3-1和t3-2。
这样的话,VM 1在预设周期Tx内通过3个TCP连接实现的报文交互过程对应的平均报文交互时延即为:[t1-1+t1-2+t2-1+t3-1+t3-2]/4。
另外,代理模块还统计上述任一个虚拟实例在预设周期内接收到的业务请求的数量,以及,统计该任一个虚拟实例在预设周期内发送的业务响应的数量。
这样,基于统计出的业务请求的数量和业务响应的数量,代理模块即可确定出该任一个虚拟实例在预设周期内未回应的业务请求的数量。
应理解,该未回应的业务请求的数量,即为代理模块在预设周期内所统计出的业务请求的数量和业务响应的数量之差。
其中,代理模块将上述任一个虚拟实例在预设周期内接收到的第一个业务请求报文确定为一个业务请求,以及将该任一个虚拟实例在预设周期内发送业务响应报文之后接收到的第一业务请求报文,确定为一个业务请求。这样,代理模块即可统计出该任一个虚拟实例在预设周期内接收到的业务请求的数量。
另外,代理模块还将上述任一个虚拟实例在预设周期内发送的最后一个业务响应报文确定为一个业务响应,以及将该任一个虚拟实例在预设周期内接收到业务请求报文之前发送的最后一个业务响应报文,确定为一个业务响应。这样,代理模块即可统计出该任一个虚拟实例在预设周期内发送的业务响应的数量。
这样,基于代理模块在预设周期内所统计出的业务请求的数量和业务响应的数量,代理模块即确定出上述任一个虚拟实例在预设周期内未回应的业务请求的数量。
作为示例,结合图6,如图6中的(a)所示,在预设周期T内,代理模块统计到VM 1接收到的业务请求的数量是2,且统计到的VM 1发送的业务响应的数量是2。
如图6中的(b)所示,在预设周期T1内,代理模块统计到VM 1接收到的业务请求的数量是2,且统计到的VM 1发送的业务响应的数量是2。在预设周期T2内,代理模块统计到VM1接收到的业务请求的数量是1,且统计到的VM 1发送的业务响应的数量是2。
当然,如果上述任一个虚拟实例通过多个TCP连接与其他虚拟实例进行报文交互,则代理模块所统计的预设周期内的接收到的业务请求以及业务响应的数量,是该任一个虚拟实例通过该多个TCP连接进行报文交互时,所有的业务请求和业务响应的数量。
这样,代理模块所确定的该任一个虚拟实例未回应的业务请求的数量,即为该任一个虚拟实例通过该多个TCP连接进行报文交互时,所有未回应的业务请求的数量。代理模块具体的统计过程这里不再赘述。
下面,对代理模块如何根据所采集到的报文头信息确定包括该报文头信息的报文是业务请求报文或是业务响应报文的过程予以说明。
具体的,代理模块可以基于上述的拓扑关系集,确定所采集到的报文头信息中的目标地址信息所标识的虚拟实例是本地服务端还是依赖服务端,以及确定所采集到的报文头信息中的源地址信息所标识的虚拟实例是本地服务端还是依赖服务端。这样,代理模块即可以确定出该报文头信息中所指示的作为依赖服务端的虚拟实例。
作为示例,如果代理模块采集到的报文头信息中的目标地址信息标识的虚拟实例是虚拟实例1,源地址信息标识的虚拟实例是虚拟实例2,则基于表1所示的拓扑关系表,代理模块可以确定虚拟实例1是本地服务端,以及确定即虚拟实例2是依赖服务端。
这样,代理模块即可以确定该报文头信息中的源地址信息标识的虚拟实例,即虚拟实例2是作为依赖服务端的虚拟实例。
然后,代理模块可以基于预置的运行于第一网络设备上的所有虚拟实例的网际互连协议(internet protocol,IP)地址和端口号,确定代理模块所采集到的报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例,是否是第一网络设备所运行的虚拟实例。
当用于指示作为依赖服务端的虚拟实例的地址信息,是运行于第一网络设备上的虚拟实例的地址信息,则表示该作为依赖服务端的虚拟实例是运行于第一网络设备的虚拟实例。
应理解,代理模块中预置有运行于第一网络设备上的所有虚拟实例的IP地址和端口号。
作为示例,当运行于第一网络设备的虚拟实例的IP地址和端口号包括(IP 1,port1)以及(IP 2,port 2)时,如果代理模块所采集到的报文头信息中的指示作为依赖服务端的虚拟实例的地址信息是(IP 1,port 1)时,则代理模块确定该报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例是第一网络设备运行的虚拟实例。
如果代理模块所采集到的报文头信息中的指示作为依赖服务端的虚拟实例的地址信息是(IP 0,port 0)时,则代理模块确定该报文头信息中的地址信息所指示的作为依赖的虚拟实例不是第一网络设备运行的虚拟实例。
这样的话,如果代理模块确定所采集到的报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例,是第一网络设备所运行的虚拟实例,且该地址信息是该报文头信息中的目标地址信息,则代理模块确定包括该报文头信息的报文是该作为依赖服务端的虚拟实例接收到的业务请求报文。
作为示例,如果代理模块确定所采集到的报文头信息1中的地址信息所指示的作为依赖服务端的虚拟实例1,是第一网络设备所运行的虚拟实例,且标识虚拟实例1的地址信息是报文头信息1中的目标地址信息,则代理模块确定包括报文头信息1的报文,是运行于第一网络设备的虚拟实例1接收到的业务请求报文。
如果代理模块确定所采集到的报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例,是第一网络设备所运行的虚拟实例,且该地址信息是源地址信息,则代理模块确定包括该报文头信息的报文是该作为依赖服务端的虚拟实例待发送出去的业务响应报文。
作为示例,如果代理模块确定所采集到的报文头信息1中的地址信息所指示的作为依赖服务端的虚拟实例1,是第一网络设备所运行的虚拟实例,且标识虚拟实例1的地址信息是报文头信息1中的源地址信息,则代理模块确定包括报文头信息1的报文,是运行于第一网络设备的虚拟实例1待发送出去的业务响应报文。
如果代理模块确定所采集到的报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例,不是第一网络设备所运行的虚拟实例,且该地址信息是目标地址信息,则代理模块确定包括该报文头信息的报文是第一网络设备运行的虚拟实例发送给作为依赖服务端的虚拟实例的业务请求报文,即该报文是作为依赖服务端的虚拟实例接收到的业务请求报文。
作为示例,如果代理模块确定所采集到的报文头信息1中的地址信息所指示的作为依赖服务端的虚拟实例1,不是第一网络设备所运行的虚拟实例,且标识虚拟实例1的地址信息是报文头信息1中的目标地址信息,则代理模块确定包括报文头信息1的报文,是第一网络设备运行的虚拟实例发送给作为依赖服务端的虚拟实例1的业务请求报文,即该报文是作为依赖服务端的虚拟实例1接收到的业务请求报文。
如果代理模块确定所采集到的报文头信息中的地址信息所指示的作为依赖服务端的虚拟实例,不是第一网络设备所运行的虚拟实例,且该地址信息是源地址信息,则代理模块确定包括该报文头信息的报文是第一网络设备运行的虚拟实例从作为依赖服务端的虚拟实例接收到的业务响应报文,即该报文是作为依赖服务端的该虚拟实例发送出去的业务响应报文。
作为示例,如果代理模块确定所采集到的报文头信息1中的地址信息所指示的作为依赖服务端的虚拟实例1,不是第一网络设备所运行的虚拟实例,且标识虚拟实例1的地址信息是报文头信息1中的源地址信息,则代理模块确定包括报文头信息1的报文,是第一网络设备运行的虚拟实例从作为依赖服务端的虚拟实例1接收到的业务响应报文,即该报文是作为依赖服务端的该虚拟实例1发送出去的业务响应报文。
可选的,代理模块可以将基于采集到的报文头信息所确定出的作为依赖服务端的虚拟实例的性能信息,记录在上述的拓扑关系集中。
示例性的,结合表1,如果虚拟实例1是运行于第一网络设备的虚拟实例,虚拟实例0和虚拟实例1运行于其他网络设备的虚拟实例。则部署于第一网络设备的代理模块通过上述描述的方法,可以检测到作为虚拟实例0的依赖服务端的虚拟实例1的性能信息,以及可以检测到作为虚拟实例1的依赖服务端的虚拟实例2的性能信息。
具体如表2所示:
表2
由上文可以看出,作为依赖服务端的虚拟实例可以是运行于第一网络设备的虚拟实例,也可以是与第一网络设备上运行的虚拟实例通过TCP连接通信的、运行于其他网络设备上的虚拟实例。
因此,可以看出,部署于第一网络设备的代理模块不仅可以基于采集到的报文头信息,可以获取到运行于第一网络设备的作为依赖服务端的虚拟实例的性能信息,还可以获取到运行于其他网络设备上的作为依赖服务端的虚拟实例的性能信息。也就是说,部署于第一网络设备的代理模块不仅可以检测到运行于第一网络设备的虚拟实例的性能信息,还可以检测到运行于其他网络设备上的虚拟实例的性能信息。
由上文还可以看出,在本申请实施例所提供的方法中,代理模块仅基于载荷不为空的数据报文的报文头信息确定作为依赖服务端的虚拟实例的性能信息。这是由于载荷为空的业务报文通常是控制报文(例如链路探测报文等),而控制报文通常仅用于链路的流量控制,即控制报文通常与虚拟实例所提供的服务无关。
因此,本申请实施例所提供方法只对数据报文的报文头进行分析,能够节省资源,以及提高资源利用率。
S104、代理模块基于虚拟实例的性能信息,确定虚拟实例的性能分数。
具体的,代理模块检测到作为依赖服务端、且运行于第一网络设备的虚拟实例的性能信息后,可以基于该性能信息以及该性能信息对应的预设规则为该虚拟实例进行投票,从而得到该虚拟实例的性能分数。
这里,性能信息以及该性能信息对应的预设规则,用于代理模块对虚拟实例的性能进行评估,从而确定该虚拟实例的性能是正常或是异常。
其中,当虚拟实例的性能信息中包括虚拟实例的报文交互时延,则该性能信息对应的预设规则可以是:预设周期内虚拟实例的报文交互时延小于第一预设阈值。这里,本申请实施例对第一预设阈值的取值不作具体限定。
当虚拟实例的性能信息中包括虚拟实例未回应的业务请求的数量,则该性能信息对应的预设规则可以是:预设周期内虚拟实例未回应的业务请求的数量小于第二预设阈值,或者,预设周期内虚拟实例未回应的业务请求的数量大于第二预设阈值,且接收到的业务请求的数量大于第三预设阈值。这里,本申请实施例对第二预设阈值以及第三预设阈值的取值不作具体限定。
应理解,上述虚拟实例的性能信息和该性能信息对应的预设规则仅为示例性说明。
这样,当代理模块确定检测到的作为依赖服务端且运行于第一网络设备的虚拟实例的性能信息,不满足该性能信息对应的预设规则,即代理模块可以确定该虚拟实例的性能有异常。这种情况下,代理模块为该虚拟实例投异常票。
当代理模块确定检测到的作为依赖服务端且运行于第一网络设备的虚拟实例的性能信息,满足该性能信息对应的预设规则,即代理模块可以确定该虚拟实例的性能正常。这种情况下,代理模块对该虚拟实例不作处置。
示例性的,当代理模块确定该虚拟实例的性能有异常时,则为该虚拟实例投1分。该1分即可表示代理模块为该虚拟实例投了一张异常票。当代理模块确定该虚拟实例的性能正常时,则不作处置。
进一步的,当代理模块为作为依赖服务端且运行于第一网络设备的虚拟实例(例如第一虚拟实例)投异常票后,代理模块还基于检测到的该第一虚拟实例所依赖的第二虚拟实例的性能信息,以及该性能信息对应的预设规则,为该第二虚拟实例进行投票。
具体的,对于作为依赖服务端且运行于第一网络设备的第一虚拟实例而言,基于上述的拓扑关系集,代理模块可以确定出该第一虚拟实例的依赖是第二虚拟实例。
应理解,该第二虚拟实例可以是运行于除第一网络设备之外的任意网络设备上的虚拟实例。
这样,当代理模块为第一虚拟实例投异常票后,代理模块还进一步基于检测到的第二虚拟实例的性能信息和该性能信息对应的预设规则,为第二虚拟实例进行投票。
其中,当代理模块确定第二虚拟实例的性能信息不满足该性能信息对应的预设规则,即代理模块可以确定该第二虚拟实例的性能有异常。这种情况下,代理模块为该第二虚拟实例投异常票。
当代理模块确定第二虚拟实例的性能信息满足该性能信息对应的预设规则,即代理模块可以确定该第二虚拟实例的性能正常。这种情况下,代理模块为该第二虚拟实例投正常票。
示例性的,当代理模块确定第二虚拟实例的性能有异常,则为第二虚拟实例投1分。该1分即可表示代理模块为该虚拟实例投了一张异常票。当代理模块确定第二虚拟实例的性能正常,则为第二虚拟实例投-1分。该-1分即可表示代理模块为该虚拟实例投了一张正常票。
应理解,上述正常票可以看做是代理模块基于第二虚拟实例的性能信息确定第二虚拟实例正常时,为第二虚拟实例所投的补偿票。当管理装置在全局范围内统计虚拟实例的性能分数时,该补偿票可以减少性能信息对第二虚拟实例性能的误判。
其中,管理装置在全局范围内统计虚拟实例的性能分数的过程可以参考下文,这里不作赘述。
结合表2,如表3所示,虚拟实例1是运行于第一网络设备的虚拟实例,当代理模块检测到作为依赖的虚拟实例1的性能信息不满足该性能信息对应的预设规则,则代理模块为虚拟实例1投1分。
进一步的,代理模块确定检测到的作为虚拟实例1所依赖的虚拟实例2的性能信息是否满足该性能信息对应的预设规则,当不满足,则为虚拟实例2投1分;当满足,则为虚拟实例2投-1分。
表3
应理解,每个预设周期,代理模块可以为虚拟实例进行一次投票打分。
S105、代理模块获取资源利用信息。
其中,资源利用信息包括第一资源利用信息和第二资源利用信息。
第一资源利用信息可以是第一网络设备的资源利用信息,该第一资源利用信息用于确定第一网络设备的资源利用率。
通常,第一资源利用信息可以包括:第一网络设备的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
第二资源利用信息可以是运行于第一网络设备上的每个虚拟实例的资源利用信息,该第二资源利用信息用于确定该每个虚拟实例的资源利用率。
通常,第二资源利用信息可以包括:运行于第一网络设备的每个虚拟实例的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
可以看出,第一资源利用信息仅指示第一网络设备的资源利用信息,而第二资源利用信息则指示一类资源利用信息,该一类资源利用信息即为运行于第一网络设备上的每个虚拟实例的资源利用信息。
示例性的,如果第一网络设备上行运行有2个虚拟实例,例如分别为虚拟实例1和虚拟实例2,则上述第二资源利用信息包括虚拟实例1的资源利用信息和虚拟实例2的资源利用信息。
S106、代理模块向数据库上报虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
其中,代理模块可以实时的向数据库上报虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
作为示例,代理模块可以在每个预设周期结束时确定出虚拟实例的性能信息以及性能分数后,向数据库上报确定出的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
这种情况下,代理模块上报的资源利用信息可以是每个预设周期结束时代理模块获取到的资源利用信息。
或者,代理模块也可以按照预设时长为周期,向数据库上报虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。其中,该预设时长大于上述的预设周期。
这种情况下,代理模块上报的资源利用信息可以是为每个预设时长结束时代理模块获取到的资源利用信息。
具体的,代理模块可以通过通信接口,将上述确定的运行于第一网络设备的虚拟实例的拓扑信息、该拓扑信息所指示的作为依赖服务端的虚拟实例的性能信息和性能分数、以及资源利用信息发送至数据库。作为响应,数据库获取到这些信息。
作为示例,代理模块可以通过kafka通道,将上述确定的运行于第一网络设备的虚拟实例的拓扑信息、该拓扑信息所指示的作为依赖服务端的虚拟实例的性能信息和性能分数、以及资源利用信息传输至数据库。作为响应,数据库获取到这些信息。
需要说明的是,为了节省传输资源,代理模块在上报运行于第一网络设备的虚拟实例的拓扑信息时,可以仅将包括运行于第一网络设备的虚拟实例的标识号和该虚拟实例依赖的虚拟实例的标识号的拓扑信息上报,而无需上报包括将运行于第一网络设备的虚拟实例作为依赖服务端的虚拟实例的标识号的拓扑信息。
这是由于,管理装置基于每个网络设备上报的包括运行于该网络设备的虚拟实例的标识号和该虚拟实例依赖的虚拟实例标识号的拓扑信息,即可确定出全局拓扑关系图。这里,管理装置确定拓扑关系图具体过程可以参考下文S108-S109的描述,这里不作赘述。
这种情况下,应理解,如果运行于第一网络设备的虚拟实例仅作为依赖服务端,而不依赖于其他虚拟实例,即代理模块可以不上报该虚拟实例的拓扑信息。
可以理解的是,由于在本申请实施例提供的公有云的租户业务管理方法所应用的管理***中,可以包括有多个代理模块,该多个代理模块分别部署于多个网络设备中。这样,该多个代理模块均可以实时或周期性的向数据库上报各自获取的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
相应的,数据库即可获取到多个代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
S107、管理装置从数据库获取代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
具体的,管理装置可以向租户提供云服务控制界面,并在云服务控制界面上提供拓扑关系图显示接口。这样,管理装置即可通过拓扑关系图显示接口接收到租户输入的触发命令。
然后,基于该触发命令,管理装置即可从数据库获取到多个代理模块所上报的该租户购买的多个虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
作为示例,参考图8,图8示出了一种管理装置接收租户的触发命令的示意图。
租户可以通过账户和密码登入管理装置提供的云服务控制界面,例如图8所示的云服务控制界面80。在云服务控制界面80上,可以显示有该租户通过云服务控制界面所购买的多个虚拟实例,例如图8所示的虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4等。
在云服务控制界面80上,管理装置可以提供拓扑关系图显示接口,例如图8所示的接口选项“显示拓扑关系图81”。这样,当租户通过使用鼠标(或键盘等)输入器件选中接口选项“显示拓扑关系图81”,即表示租户向管理装置输入了触发命令。作为响应,管理装置即接收到该触发命令。
然后,管理装置可以基于接收到的触发命令向数据库发送信息获取请求,该信息获取请求用于指示从数据库中获取上述租户所购买的多个虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
这样,数据库即可基于该信息获取请求,将多个代理模块所上报信息中的该租户所购买的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息,发送至管理装置。作为响应,管理装置即获取到这些信息。
这样的话,管理装置即可基于获取到的多个虚拟实例的拓扑信息确定该租户购买的多个虚拟实例中用于支持同一应用服务的虚拟实例的拓扑关系图。然后,管理装置即可通过云服务控制界面向租户显示该拓扑关系图。
其中,管理装置确定租户购买的多个虚拟实例中用于支持同一应用服务的虚拟实例的拓扑关系图的具体过程可以参考S108的描述,这里不作赘述。
可选的,管理装置还可以基于获取到的多个虚拟实例的性能分数和资源利用信息,确定性能存在异常的异常虚拟实例。这样,管理装置即可基于获取到的多个虚拟实例的性能信息,通过云服务控制界面向租户显示标记有每个虚拟实例性能信息、以及标记有异常虚拟实例的拓扑关系图。
其中,管理装置确定异常的虚拟实例以及通过云服务控制界面向租户显示标记有每个虚拟实例性能信息、以及标记有异常虚拟实例的拓扑关系图的具体描述可以参考S109-S110的描述,这里不作赘述。
应理解,租户可以通过云服务控制界面购买多个虚拟实例,该多个虚拟实例包括S101-S105中所述的第一网络设备上运行的虚拟实例,当然不限于此。
应理解,管理装置通过云服务控制界面向租户显示标记有每个虚拟实例性能信息、以及标记有异常虚拟实例的拓扑关系图后,管理装置还可以实时的从数据库获取代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息,或者周期性的从数据库获取代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息。
这样的话,管理装置即可根据实时或周期性获取到的这些信息,更新当前在云服务控制界面所显示的拓扑关系图。本申请实施例对此不作赘述。
S108、管理装置基于获取到的虚拟实例的拓扑信息,确定用于支持同一应用服务的虚拟实例的实例集群,以及生成该实例集群的拓扑关系图。
由上文描述可知,管理装置获取到的虚拟实例的拓扑信息,是多个代理模块向数据库所上报的租户所购买的多个虚拟实例的拓扑信息。这样,根据获取到的租户所购买的多个虚拟实例的拓扑信息,管理装置可以确定出具有拓扑关联的多个虚拟实例。
然后,管理装置将具有拓扑关联的多个虚拟实例确定为一个实例集群。
应理解,该实例集群中的虚拟实例均用于支持同一应用服务。具体的,该实例集群中的多个虚拟实例分别用于执行该应用服务中的不同任务或进程。
作为示例,如果管理装置获取到的虚拟实例的拓扑信息如表4所示:
表4
本地服务端 | 依赖服务端 |
虚拟实例1 | 虚拟实例2 |
虚拟实例1 | 虚拟实例3 |
虚拟实例2 | 虚拟实例4 |
虚拟实例3 | 虚拟实例4 |
虚拟实例5 | 虚拟实例6 |
虚拟实例6 | 虚拟实例7 |
则基于表4的拓扑信息可以看出,虚拟实例1依赖于虚拟实例2和虚拟实例3,虚拟实例2依赖于虚拟实例4,虚拟实例3依赖于虚拟实例4。并且,虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4中的任一个虚拟实例,和虚拟实例5、虚拟实例6、虚拟实例7之间不存在依赖关系,因此,管理装置可以确定虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4之间具有拓扑关联关系,即虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4构成实例集群1。
此外,基于表4的拓扑信息还可以看出,虚拟实例5依赖于虚拟实例6,虚拟实例6依赖于虚拟实例7,则管理装置可以确定虚拟实例5、虚拟实例6以及虚拟实例7之间具有拓扑关联关系,即虚拟实例5、虚拟实例6以及虚拟实例7构成实例集群2。
这样,管理装置基于实例集群中虚拟实例之间的拓扑关联关系,即可生成该实例集群的拓扑关系图。
结合表4,参考图9,图9示出了管理装置基于表4的拓扑信息生成的拓扑关系图。
如图9中的(a)所示,图9中的(a)示出了管理装置基于表4的拓扑信息生成的拓扑关系图91。拓扑关系图91示出了虚拟实例1、虚拟实例2、虚拟实例3以及虚拟实例4之间依赖关系。
如图9中的(b)所示,图9中的(b)示出了管理装置基于表4的拓扑信息生成的拓扑关系图92。拓扑关系图92示出了虚拟实例5、虚拟实例6以及虚拟实例7之间依赖关系。
S109、管理装置基于获取到的多个虚拟实例的性能分数和资源利用信息,确定性能存在异常的异常虚拟实例。
由上文描述可知,代理模块不仅可以对运行于第一网络设备、且作为依赖的虚拟实例进行投票,以得到该虚拟实例的性能分数,还可以对运行于其他网络设备、且作为运行于第一网络设备的虚拟实例的依赖的虚拟实例进行投票,以得到该虚拟实例的性能分数。
作为示例,结合表4,以网络设备上报拓扑信息时,仅上报包括该网络设备上运行的虚拟实例的标识号,以及该虚拟实例依赖的虚拟实例的标识号的拓扑信息为例,如果虚拟实例1运行于网络设备1,虚拟实例2运行于网络设备2,虚拟实例3运行于网络设备3,虚拟实例4运行于网络设备4,则指示虚拟实例1依赖于虚拟实例2的拓扑信息1,以及指示虚拟实例1依赖于虚拟实例3的拓扑信息2,可以是网络设备1上报的拓扑信息。指示虚拟实例2依赖于虚拟实例4的拓扑信息3可以是网络设备2上报的拓扑信息,指示虚拟实例3依赖于虚拟实例4的拓扑信息4可以是网络设备3上报的拓扑信息。
这样的话,对于网络设备1而言,网络设备1可以为运行于网络设备1、且作为依赖服务端的虚拟实例1进行投票,以得到虚拟实例1的性能分数。网络设备1还可以对运行于网络设备2、且作为运行于网络设备1的虚拟实例1的依赖服务端的虚拟实例2进行投票,以得到虚拟实例2的性能分数。网络设备1还可以对运行于网络设备3、且作为运行于网络设备1的虚拟实例1的依赖服务端的虚拟实例3进行投票,以得到虚拟实例3的性能分数。也就是说,网络设备1可以通过投票得到虚拟实例1、虚拟实例2以及虚拟实例3的性能分数。
对于网络设备2而言,网络设备2可以为运行于网络设备2、且作虚拟实例1的依赖服务端的虚拟实例2进行投票,以得到虚拟实例2的性能分数。网络设备2还可以对运行于网络设备4、且作为虚拟实例2的依赖服务端的虚拟实例4进行投票,以得到虚拟实例4的性能分数。也就是说,网络设备2可以通过投票得到虚拟实例2和虚拟实例4的性能分数。
对于网络设备3而言,网络设备3可以为运行于网络设备3、且作虚拟实例1的依赖服务端的虚拟实例3进行投票,以得到虚拟实3的性能分数。网络设备3还可以对运行于网络设备4、且作为虚拟实例3的依赖服务端的虚拟实例4进行投票,以得到虚拟实例4的性能分数。也就是说,网络设备3可以通过投票得到虚拟实例3和虚拟实例4的性能分数。
对于网络设备4而言,网络设备4可以为运行于网络设备4、且作虚拟实例2(和/或虚拟实例3)的依赖服务端的虚拟实例4进行投票,以得到虚拟实4的性能分数。也就是说,网络设备4可以通过投票得到虚拟实例4的性能分数。
这样的话,当管理装置获取到多个代理模块上报的相同虚拟实例的性能分数后,可以对对所获取到的性能分数予以汇聚统计,从而得到全局范围内不同代理模块对该相同虚拟实例投票后得到的性能分数。
可选的,管理装置可以将获取到的多个代理模块对相同虚拟业务进行投票后得到性能分数予以加和,然后除以该多个代理模块的数量,即可得到全局范围内不同代理模块对该相同虚拟实例投票后得到的性能分数。
作为示例,如果管理装置获取到部署于上述网络设备1、网络设备2、网络设备3以及网络设备4的4个代理模块所上报的如表4所示虚拟实例的性能分数如表5所示:
表5
这样的话,对于虚拟实例1,管理装置可以确定虚拟实例1的性能分数为1。
对于虚拟实例2,管理装置可以确定虚拟实例2的性能分数为(-1+1)/2=0。
对于虚拟实例3,管理装置可以确定虚拟实例3的性能分数为(1+1)/2=1。
对于虚拟实例4,管理装置可以确定虚拟实例4的性能分数为(1-1+1)/3=1/3。
具体可以如表6所示:
表6
依赖服务端 | 性能分数 |
虚拟实例1 | 1 |
虚拟实例2 | 0 |
虚拟实例3 | 1 |
虚拟实例4 | 1/3 |
然后,一种可能的实现方式,管理装置可以将虚拟实例在全局范围内得到的性能分数大于第四预设阈值的虚拟实例,确定为初始异常虚拟实例。
另一种可能的实现方式中,管理装置可以在全局范围内确定出性能异常从大到小排名前m的虚拟实例,并将该m个虚拟实例确定为初始异常虚拟实例。其中,性能异常排名前m的虚拟实例,即为全局范围内不同代理模块对虚拟实例投票后得到的性能分数从高到底排名前m的虚拟实例。
其中需要说明的是,如果至少两个虚拟实例的全局性能分数排名相同,即该至少两个虚拟实例的全局性能分数相同,则排名相同的虚拟实例中越靠近底层依赖服务端的虚拟实例,其性能排名靠前。
作为示例,如果虚拟实例1依赖于虚拟实例2,虚拟实例2依赖于虚拟实例3,则在虚拟实例1、虚拟实例2以及虚拟实例3中,底层依赖服务端的虚拟实例是虚拟实例3。
如果管理装置在全局范围内确定出的虚拟实例1、虚拟实例2以及虚拟实例3的性能分数相同,则基于虚拟实例1、虚拟实例2以及虚拟实例3之间的依赖关系,管理装置可以确定虚拟实例3的的性能异常排名高于虚拟实例2的性能异常排名,虚拟实例2的的性能异常排名高于虚拟实例1的性能异常排名。
当管理装置确定出初始异常虚拟实例后,在一种可能的实现方式中,管理装置可以将确定出的初始异常虚拟实例,确定为性能存在异常的异常虚拟实例。
在另一种可能的实现方式中,管理装置可以基于获取到的资源利用信息,在上述确定出的初始异常虚拟实例中确定性能存在异常的异常虚拟实例。
具体的,对于上述确定的初始异常虚拟实例中的任一个初始异常虚拟实例而言,管理装置可以先确定出运行该任一个初始异常虚拟实例的网络设备。然后基于获取到的该网络设备的第一资源利用信息,确定该网络设备的资源利用率是否正常。
其中,管理装置可以通过判断第一资源利用信息是否高于或低于第一阈值范围,来确定第一资源利用信息所指示的网络设备的资源利用率是否正常。
这里,第一阈值范围可以是基于历史的第一资源利用信息中CPU利用率、内存利用率、磁盘利用率或网络时延等信息的平均值确定的。
这样的话,当第一资源利用信息中的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一个高于或低于第一阈值范围,则管理装置可以确定第一资源利用信息所指示的网络设备的资源利用率是异常的。
当第一资源利用信息中的CPU利用率、内存利用率、磁盘利用率或网络时延均在第一阈值范围内,则管理装置可以确定第一资源利用信息所指示的网络设备的资源利用率是正常的。
管理装置还基于获取到的该任一个初始异常虚拟实例的第二资源利用信息,确定该任一个初始异常虚拟实例的资源利用率是否正常。
其中,管理装置可以通过判断第二资源利用信息是否高于或低于第二阈值范围,来确定第二资源利用信息所指示的虚拟实例的资源利用率是否正常。
这里,第二阈值范围可以是基于历史的第二资源利用信息中CPU利用率、内存利用率、磁盘利用率或网络时延等信息的平均值确定的。
这样的话,当第二资源利用信息中的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一个高于或低于第二阈值范围,则管理装置可以确定第二资源利用信息所指示的虚拟实例的资源利用率是异常的。
当第二资源利用信息中的CPU利用率、内存利用率、磁盘利用率或网络时延均在第二阈值范围内,则管理装置可以确定第二资源利用信息所指示的虚拟实例的资源利用率是正常的。
这样,在一种可能的情况中,当运行该任一个初始异常虚拟实例的网络设备的资源利用率异常,则管理装置可以确定该网络设备异常。
这种情况下,管理装置可以指示***管理员将该任一个初始异常虚拟实例从该网络设备中迁移到别的网络设备中,以解决该任一个初始异常虚拟实例当前得到的性能分数异常的问题。
在另一种可能的情况中,当运行该任一个初始异常虚拟实例的网络设备的资源利用率正常,且该任一个初始异常虚拟实例的资源利用率也正常,则管理装置可以确定该任一个虚拟实例和/或该网络设备出现了未知异常。
这种情况下,管理装置可以向***管理员发出未知异常的告警消息。
在又一种可能的情况中,当运行该任一个初始异常虚拟实例的网络设备的资源利用率正常,且该任一个初始异常虚拟实例的资源利用率异常,则管理装置可以进一步确定运行于该网络设备上其他虚拟实例中是否存在初始异常虚拟实例,以及确定该其他虚拟实例的资源利用率是否正常。
如果该其他虚拟实例中不存在初始异常虚拟实例,且该其他虚拟实例的资源利用率均正常,则管理装置可以将该任一个初始异常虚拟实例确定为性能存在异常的异常虚拟实例。
如果该其他虚拟实例中存在初始异常虚拟实例,且该其他虚拟实例的资源利用率存在异常的情况,则管理装置可以确定该网络设备和/或运行于该网络设备的虚拟实例出现了未知异常。这种情况下,管理装置可以向***管理员发出未知异常的告警消息。
应理解,上述的***管理员可以是云服务提供商的***管理员,或者是虚拟实例异常检测方案提供商的***管理员,本申请实施例对此不作具体限定。
可以理解的是,本申请实施例对步骤S108和步骤S109的执行时序不作限定。例如,本申请实施例可以先执行S108,后执行S109。或者,本申请实施例也可以同时执行S108和S109,对此不作限定。
S110、管理装置基于获取的虚拟实例的性能信息以及确定出的异常虚拟实例,向租户显示实例集群的拓扑关系图。
具体的,管理装置可以通过云服务控制界面,向租户显示在S108所生成的拓扑关系图。
作为示例,结合图8,参考图10,如图10所示,管理装置可以通过云服务控制界面80,向租户显示其所购买的包括多个虚拟示例的实例集群1的拓扑关系图91。其中,拓扑关系图91即为管理装置基于表4的拓扑信息生成的如图9中的(a)所示的拓扑关系图91,详细描述可以参考上文,这里不再赘述。
可选的,管理装置可以基于获取到的虚拟实例的性能信息,在通过云服务控制界面向租户所显示的拓扑关系图中,显示该拓扑关系图中每个虚拟实例的性能信息。
其中,该性能信息的描述可以参考上文,这里不作赘述。
作为示例,结合图10,参考图11,如图11所示,管理装置通过云服务控制界面80向租户显示的拓扑关系图91中,显示该拓扑关系图91中每个虚拟实例的性能信息。
例如,在该拓扑关系图91中的虚拟实例1的节点处显示虚拟实例1的性能信息1,在该拓扑关系图91中的虚拟实例2的节点处显示虚拟实例2的性能信息2,在该拓扑关系图91中的虚拟实例3的节点处显示虚拟实例3的性能信息3,以及在该拓扑关系图91中的虚拟实例4的节点处显示虚拟实例4的性能信息4。
可选的,管理装置还可以基于在S109确定出的异常虚拟实例,在通过云服务控制界面向租户所显示的拓扑关系图中,标记处异常虚拟实例。
其中,本申请实施例对如何标记异常虚拟实例的具体实现方式不作具体限定,例如可以将拓扑关系图中异常虚拟实例所在节点标记为红色,将拓扑关系图中除异常虚拟实例之外的其他虚拟实例所在节点标记为绿色。或者,将拓扑关系图中异常虚拟实例所在节点的背景色标记为黑色,将拓扑关系图中除异常虚拟实例之外的其他虚拟实例所在节点的背景色标记为白色,当然不限于此。
作为示例,结合图11,参考图12a,如果管理装置基于S109所述方法确定拓扑关系图91中的虚拟实例3是异常虚拟实例,则如图12a所示,管理装置通过云服务控制界面80向租户显示的拓扑关系图91中,异常虚拟实例(即虚拟实例3)所在节点的背景色标记为黑色,除异常虚拟实例之外的虚拟实例(即虚拟实例1、虚拟实例2以及虚拟实例4)所在节点的背景色标记为白色。
应理解,如果租户通过云服务控制界面购买的多个虚拟实例中,包括支持不同应用服务的虚拟实例,则管理装置可以通过该租户的云服务控制界面,显示支持不同应用服务的多个实例集群的拓扑关系图。
作为示例,结合图11和图12a,参考图12b,如果管理装置基于S109所述方法,确定出租户支持不同应用服务的实例集群的拓扑关系图包括拓扑关系图91和拓扑关系图92,则如图12b所示,管理装置可以通过云服务控制界面80向租户显示该拓扑关系图91和拓扑关系图92。
综合图10、图11、图12a以及图12b可以看出,通过在租户的云服务控制界面上显示该租户所购买虚拟实例的拓扑关系图,在该拓扑关系图上显示每个虚拟实例的实时性能信息,以及在该拓扑关系图上标记出异常虚拟实例,租户即可非常直观的了解到其购买的虚拟实例的性能情况,并在发现异常虚拟实例时,予以相应处理,从而保证了该租户向终端用户所提供的应用服务的正常运行。
综上,本申请实施例提供了一种公有云的租户业务管理方法,该方法通过采集报文头信息确定出租户购买的多个虚拟实例之间的依赖关系,并进一步基于该多个虚拟实例之间的依赖关系,生成用于指示支持同一应用服务的实例集群中虚拟实例之间拓扑关联关系的拓扑关系图。其中,具有拓扑关联关系的虚拟实例,即为具有依赖关系的虚拟实例。进一步的,该方法将该拓扑关系图显示给租户,从而通过实现对实例集群中虚拟实例之间拓扑关系的可视化,提高了租户在管理其购买的多个虚拟实例时的用户体验。
进一步的,本申请实施例所提供的方法通过采集到的报文头信息确定出虚拟实例的性能信息,并将虚拟实例的性能信息显示在拓扑关系图中,进一步提高了租户在管理其购买的多个虚拟实例时的用户体验。
再进一步的,本申请实施例所提供的方法通过采集到的报文头信息确定出异常的虚拟实例,进而在拓扑关系图中标记该异常虚拟实例,这样,即实现了在虚拟实例异常时向用户告警的目的,即进一步的提高了租户在管理其购买的多个虚拟实例时的用户体验。
此外,本申请实施例提供通过采集到的报文头信息确定异常虚拟实例的方法,相比于在虚拟实例内部部署检测模块,并通过检测模块检测虚拟实例的资源利用率,和/或通过检测模块基于控制报文协议(internet control message protocol,ICMP)的ping操作所检测的虚拟实例的网络性能的方式,来确定虚拟实例的性能异常情况的方法,本申请实施例提供所提供的方法能够提高对异常虚拟实例的定位精度,以及提高用户数据的安全性。
这是由于,单纯的资源利用信息并不能实际体现虚拟实例的性能异常情况,并且ping操作所检测到网络时延,也不能直接反映虚拟实例自身的性能情况。因此通过检测模块检测虚拟实例的资源利用率,和/或通过检测模块基于ICMP的ping操作所检测的虚拟实例的网络性能的方式,来确定虚拟实例的性能异常情况的方法,其定位精度差,即通过这种方式确定的异常虚拟实例可能并不是真正的存在性能异常的虚拟实例。
而本申请实施例所提供的方法,基于采集到的报文头信息可以确定出虚拟实例的性能信息,这样,基于该性能信息以及资源利用信息来定位性能存在异常的异常虚拟实例,其定位精度高。
另外,通过在虚拟实例内部部署检测模块为侵入式检测,这样会侵害到用户数据的隐私性。而本申请实施例所提供方法仅需采集业务报文的报文头信息,而不涉及业务报文的数据信息。即本申请实施例所提供方法能够保证用户数据隐私,即提高了用户数据的安全性。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对管理装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图13所示,图13示出了本申请实施例提供的一种管理装置130的结构示意图。管理装置130可以运行于云平台,并用于执行上述的公有云的租户业务管理方法,例如用于执行图4所示的方法。其中,管理装置130可以包括显示单元131和确定单元132。
显示单元131,用于提供云服务控制界面。确定单元132,用于确定租户通过云服务控制界面购买的多个虚拟实例,以及,用于在多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群。显示单元131,还用于在云服务控制界面显示实例集群中虚拟实例的拓扑关系图。
作为示例,结合图4,显示单元131可以用于执行步骤S110,确定单元132可以用于执行步骤S108。
可选的,管理装置130还包括获取单元133。显示单元131,还用于提供拓扑关系图显示接口。其中,该拓扑关系图显示接口用于接收租户输入的触发命令。获取单元133,用于根据触发命令,获取实例集群中虚拟实例的拓扑信息。显示单元131,用于在云服务控制界面显示基于拓扑信息得到的实例集群中虚拟实例的拓扑关系图。
作为示例,结合图4,显示单元131可以用于执行步骤S110,获取单元133可以用于执行步骤S107。
可选的,上述拓扑信息是多个虚拟实例中的任两个虚拟实例之间在建立连接通信时,基于建立连接通信的建立连接请求确认报文的报文头信息确定的。
可选的,获取单元133,还用于获取实例集群中每个虚拟实例的性能信息。显示单元131,还用于在上述的拓扑关系图中显示实例集群中每个虚拟实例的性能信息。
作为示例,结合图4,获取单元133可以用于执行步骤S107,显示单元131可以用于执行步骤S110。
可选的,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息是基于该任一个虚拟实例作为依赖服务端时发送或接收到的报文的报文头信息确定的。
可选的,上述的报文头信息包括报文的源地址、源端口、目标地址以及目标端口。
可选的,对于上述实例集群中的任一个虚拟实例而言,该任一个虚拟实例的性能信息包括:在预设周期内,该任一个虚拟实例的报文交互时延、该任一个虚拟实例接收业务请求的数量、或该任一个虚拟实例未回应的业务请求的数量中的至少一种。
可选的,上述实例集群中每个虚拟实例的性能信息,用于确定每个虚拟实例在实现上述应用服务时的性能分数;每个虚拟实例在实现上述应用服务时的性能分数用于确定异常的虚拟实例。
管理装置130还包括:标记单元134,用于在上述拓扑关系图中标记实例集群中性能存在异常的异常虚拟实例。
作为示例,结合图4,标记单元134可以用于执行步骤S110。
可选的,如果实例集群中每个虚拟实例在实现上述应用服务时的性能分数中存在高于阈值的性能分数,则性能分数高于阈值的虚拟实例是异常虚拟实例。
如果实例集群中每个虚拟实例在实现上述应用服务时的性能分数中不存在高于阈值的性能分数,则实例集群中不存在异常虚拟实例。
可选的,获取单元133,还用于获取运行上述实例集群中每个虚拟实例的网络设备的第一资源利用信息,以及,用于获取上述实例集群中每个虚拟实例的第二资源利用信息。其中,第一资源利用信息用于确定网络设备的资源利用率,第二资源利用信息用于确定虚拟实例的资源利用率。
确定单元132,还用于基于该第一资源利用信息、该第二资源利用信息以及每个虚拟实例在实现上述应用服务时的性能分数,确定上述异常虚拟实例。
作为示例,结合图4,获取单元133可以用于执行步骤S107,确定单元132可以用于执行步骤S109。
可选的,上述第一资源利用信息包括网络设备的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。上述第二资源利用信息包括虚拟实例的CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
可选的,上述的虚拟实例包括虚拟机实例或容器实例中的任一种。
可选的,实现上述应用服务的节点可以包括负载均衡节点、应用服务器节点以及数据库节点实现。其中,该负载均衡节点、该应用服务器节点以及该数据库节点的功能可以分别通过不同的虚拟实例实现。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种管理装置130的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
作为示例,结合图1,管理装置130中的显示单元131可以通过图1中的输入输入接口14来实现其功能。确定单元132和标记单元134可以通过图1中的处理器11执行图1中的存储器12中的程序代码来实现其功能。获取单元133可以通过图1中的通信接口13实现其功能。
本申请实施例还提供一种芯片***140,如图14所示,该芯片***140包括至少一个处理器和至少一个接口电路。
作为示例,当该芯片***140包括一个处理器和一个接口电路时,则该一个处理器可以是图14中实线框所示的处理器141(或者是虚线框所示的处理器141),该一个接口电路可以是图14中实线框所示的接口电路142(或者是虚线框所示的接口电路142)。
当该芯片***140包括两个处理器和两个接口电路时,则该两个处理器包括图14中实线框所示的处理器141和虚线框所示的处理器141,该两个接口电路包括图14中实线框所示的接口电路142和虚线框所示的接口电路142。对此不作限定。
处理器141和接口电路142可通过线路互联。例如,接口电路142可用于接收信号(例如获取代理模块上报的虚拟实例的拓扑信息、性能信息、性能分数以及资源利用信息等)。又例如,接口电路142可用于向其它装置(例如处理器141)发送信号。
示例性的,接口电路142可读取存储器中存储的指令,并将该指令发送给处理器141。当该指令被处理器141执行时,可使得验证AS对的装置执行上述实施例中的各个步骤。当然,该芯片***140还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请另一实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在管理装置上运行时,该管理装置执行上述方法实施例所示的方法流程中该管理装置执行的各个步骤。
在一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。
图15示意性地示出本申请实施例提供的计算机程序产品的概念性局部视图,该计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。
在一个实施例中,计算机程序产品是使用信号承载介质150来提供的。该信号承载介质150可以包括一个或多个程序指令,其当被一个或多个处理器运行时可以提供以上针对图4描述的功能或者部分功能。因此,例如,参考图4中S101~S110的一个或多个特征可以由与信号承载介质150相关联的一个或多个指令来承担。此外,图15中的程序指令也描述示例指令。
在一些示例中,信号承载介质150可以包含计算机可读介质151,诸如但不限于,硬盘驱动器、紧密盘(CD)、数字视频光盘(DVD)、数字磁带、存储器、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等等。
在一些实施方式中,信号承载介质150可以包含计算机可记录介质152,诸如但不限于,存储器、读/写(R/W)CD、R/W DVD、等等。
在一些实施方式中,信号承载介质150可以包含通信介质153,诸如但不限于,数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路、等等)。
信号承载介质150可以由无线形式的通信介质153(例如,遵守IEEE 1202.11标准或者其它传输协议的无线通信介质)来传达。一个或多个程序指令可以是,例如,计算机可执行指令或者逻辑实施指令。
在一些示例中,诸如针对图4描述的管理装置可以被配置为,响应于通过计算机可读介质151、计算机可记录介质152、和/或通信介质153中的一个或多个程序指令,提供各种操作、功能、或者动作。
应该理解,这里描述的布置仅仅是用于示例的目的。因而,本领域技术人员将理解,其它布置和其它元素(例如,机器、接口、功能、顺序、和功能组等等)能够被取而代之地使用,并且一些元素可以根据所期望的结果而一并省略。
另外,所描述的元素中的许多是可以被实现为离散的或者分布式的组件的、或者以任何适当的组合和位置来结合其它组件实施的功能实体。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。
计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid statedisk,SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (25)
1.一种公有云的租户业务管理方法,其特征在于,所述方法运行于云平台,所述方法包括:
提供云服务控制界面;
确定租户通过所述云服务控制界面购买的多个虚拟实例;
在所述多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群;
在所述云服务控制界面显示所述实例集群中虚拟实例的拓扑关系图;
所述方法还包括:
获取所述实例集群中每个虚拟实例的性能信息;所述实例集群中每个虚拟实例的性能信息,用于确定所述每个虚拟实例在实现所述应用服务时的性能分数;所述每个虚拟实例在实现所述应用服务时的性能分数用于确定性能存在异常的异常虚拟实例;
在所述拓扑关系图中标记所述实例集群中的异常虚拟实例。
2.根据权利要求1所述的方法,其特征在于,所述在所述云服务控制界面显示所述实例集群中虚拟实例的拓扑关系图,包括:
提供拓扑关系图显示接口,所述拓扑关系图显示接口用于接收所述租户输入的触发命令;
根据所述触发命令,获取所述实例集群中虚拟实例的拓扑信息;
在所述云服务控制界面显示所述实例集群中虚拟实例的拓扑关系图,所述拓扑关系图是基于所述拓扑信息得到的。
3.根据权利要求1或2所述的方法,其特征在于,所述拓扑信息是所述多个虚拟实例中的任两个虚拟实例之间在建立连接通信时,基于建立连接通信的建立连接请求确认报文的报文头信息确定的。
4.根据权利要求1或2所述的方法,其特征在于,
对于所述实例集群中的任一个虚拟实例,所述任一个虚拟实例的性能信息是基于所述任一个虚拟实例作为依赖服务端时发送或接收到的报文的报文头信息确定的。
5.根据权利要求4所述的方法,其特征在于,所述报文头信息包括报文的源地址、源端口、目标地址以及目标端口。
6.根据权利要求1或2或5所述的方法,其特征在于,
对于所述实例集群中的任一个虚拟实例,所述任一个虚拟实例的性能信息包括:在预设周期内,所述任一个虚拟实例的报文交互时延、所述任一个虚拟实例接收业务请求的数量、或所述任一个虚拟实例未回应的业务请求的数量中的至少一种。
7.根据权利要求1所述的方法,其特征在于,
如果所述实例集群中每个虚拟实例在实现所述应用服务时的性能分数中存在高于阈值的性能分数,则性能分数高于阈值的虚拟实例是异常虚拟实例;
如果所述实例集群中每个虚拟实例在实现所述应用服务时的性能分数中不存在高于阈值的性能分数,则所述实例集群中不存在异常虚拟实例。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取运行所述实例集群中每个虚拟实例的网络设备的第一资源利用信息,以及获取所述实例集群中每个虚拟实例的第二资源利用信息,所述第一资源利用信息用于确定所述网络设备的资源利用率,所述第二资源利用信息用于确定虚拟实例的资源利用率;
基于所述第一资源利用信息、所述第二资源利用信息以及所述每个虚拟实例在实现所述应用服务时的性能分数,确定所述异常虚拟实例。
9.根据权利要求8所述的方法,其特征在于,所述第一资源利用信息包括所述网络设备的中央处理器CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
10.根据权利要求1或2或5或7或8或9所述的方法,其特征在于,所述虚拟实例包括虚拟机实例或容器实例中的任一种。
11.根据权利要求1或2或5或7或8或9所述的方法,其特征在于,实现所述应用服务的节点包括负载均衡节点、应用服务器节点以及数据库节点实现;其中,所述负载均衡节点、所述应用服务器节点以及所述数据库节点的功能分别通过不同的虚拟实例实现。
12.一种公有云的租户业务管理装置,其特征在于,所述装置运行于云平台,所述装置包括:
显示单元,用于提供云服务控制界面;
确定单元,用于确定租户通过所述云服务控制界面购买的多个虚拟实例;以及,用于在所述多个虚拟实例中确定用于支持同一应用服务的虚拟实例的实例集群;
所述显示单元,还用于在所述云服务控制界面显示所述实例集群中虚拟实例的拓扑关系图;
所述装置还包括获取单元;获取所述实例集群中每个虚拟实例的性能信息;所述实例集群中每个虚拟实例的性能信息,用于确定所述每个虚拟实例在实现所述应用服务时的性能分数;所述每个虚拟实例在实现所述应用服务时的性能分数用于确定性能存在异常的异常虚拟实例;
所述装置还包括标记单元,用于在所述拓扑关系图中标记所述实例集群中的异常虚拟实例。
13.根据权利要求12所述的装置,其特征在于,
所述显示单元,还用于提供拓扑关系图显示接口,所述拓扑关系图显示接口用于接收所述租户输入的触发命令;
所述获取单元,还用于根据所述触发命令,获取所述实例集群中虚拟实例的拓扑信息;
所述显示单元,用于在所述云服务控制界面显示所述实例集群中虚拟实例的拓扑关系图,所述拓扑关系图是基于所述拓扑信息得到的。
14.根据权利要求12或13所述的装置,其特征在于,所述拓扑信息是所述多个虚拟实例中的任两个虚拟实例之间在建立连接通信时,基于建立连接通信的建立连接请求确认报文的报文头信息确定的。
15.根据权利要求12或13所述的装置,其特征在于,
对于所述实例集群中的任一个虚拟实例,所述任一个虚拟实例的性能信息是基于所述任一个虚拟实例作为依赖服务端时发送或接收到的报文的报文头信息确定的。
16.根据权利要求15所述的装置,其特征在于,所述报文头信息包括报文的源地址、源端口、目标地址以及目标端口。
17.根据权利要求12或13或16所述的装置,其特征在于,
对于所述实例集群中的任一个虚拟实例,所述任一个虚拟实例的性能信息包括:在预设周期内,所述任一个虚拟实例的报文交互时延、所述任一个虚拟实例接收业务请求的数量、或所述任一个虚拟实例未回应的业务请求的数量中的至少一种。
18.根据权利要求12所述的装置,其特征在于,
如果所述实例集群中每个虚拟实例在实现所述应用服务时的性能分数中存在高于阈值的性能分数,则性能分数高于阈值的虚拟实例是异常虚拟实例;
如果所述实例集群中每个虚拟实例在实现所述应用服务时的性能分数中不存在高于阈值的性能分数,则所述实例集群中不存在异常虚拟实例。
19.根据权利要求12所述的装置,其特征在于,
所述获取单元,还用于获取运行所述实例集群中每个虚拟实例的网络设备的第一资源利用信息,以及获取所述实例集群中每个虚拟实例的第二资源利用信息,所述第一资源利用信息用于确定所述网络设备的资源利用率,所述第二资源利用信息用于确定虚拟实例的资源利用率;
所述确定单元,还用于基于所述第一资源利用信息、所述第二资源利用信息以及所述每个虚拟实例在实现所述应用服务时的性能分数,确定所述异常虚拟实例。
20.根据权利要求19所述的装置,其特征在于,所述第一资源利用信息包括所述网络设备的中央处理器CPU利用率、内存利用率、磁盘利用率或网络时延中的至少一种。
21.根据权利要求12或13或16或18或19或20所述的装置,其特征在于,所述虚拟实例包括虚拟机实例或容器实例中的任一种。
22.根据权利要求12或13或16或18或19或20所述的装置,其特征在于,实现所述应用服务的节点包括负载均衡节点、应用服务器节点以及数据库节点实现;其中,所述负载均衡节点、所述应用服务器节点以及所述数据库节点的功能分别通过不同的虚拟实例实现。
23.一种公有云的租户业务管理装置,其特征在于,所述装置包括:存储器和一个或多个处理器,所述存储器用于存储计算机指令,所述处理器用于调用所述计算机指令,以执行如权利要求1-11中任一项所述的方法。
24.一种公有云的租户业务管理***,其特征在于,所述***包括如权利要求12-22中任一项所述的公有云的租户业务管理装置和多个代理模块,所述多个代理模块分别部署于不同的网络设备中;
对于所述多个代理模块中的任一个代理模块,所述任一个代理模块用于获取虚拟实例的拓扑信息、性能信息、性能分数或资源利用信息中的至少一种;其中,所述资源利用信息包括运行于部署所述任一个代理模块的网络设备的资源利用信息,以及所述网络设备上运行的虚拟实例的资源利用信息。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行权利要求1-11中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011630366.9A CN114697319B (zh) | 2020-12-30 | 2020-12-30 | 一种公有云的租户业务管理方法及装置 |
EP21914529.9A EP4270183A4 (en) | 2020-12-30 | 2021-12-29 | METHOD AND DEVICE FOR MANAGING A PUBLIC CLOUD-TENANT SERVICE |
PCT/CN2021/142621 WO2022143797A1 (zh) | 2020-12-30 | 2021-12-29 | 一种公有云的租户业务管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011630366.9A CN114697319B (zh) | 2020-12-30 | 2020-12-30 | 一种公有云的租户业务管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114697319A CN114697319A (zh) | 2022-07-01 |
CN114697319B true CN114697319B (zh) | 2023-06-16 |
Family
ID=82135046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011630366.9A Active CN114697319B (zh) | 2020-12-30 | 2020-12-30 | 一种公有云的租户业务管理方法及装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4270183A4 (zh) |
CN (1) | CN114697319B (zh) |
WO (1) | WO2022143797A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7519700B1 (en) * | 2005-02-18 | 2009-04-14 | Opnet Technologies, Inc. | Method and system for topological navigation of hierarchical data groups |
CN103514310A (zh) * | 2012-06-26 | 2014-01-15 | 上海宝信软件股份有限公司 | 一种it基础设施拓扑可视化编辑与展示方法 |
CN109803018A (zh) * | 2019-01-24 | 2019-05-24 | 云南电网有限责任公司信息中心 | 一种基于Mesos和YARN结合的DCOS云管理平台 |
CN111597099A (zh) * | 2020-05-19 | 2020-08-28 | 山东汇贸电子口岸有限公司 | 一种监测部署于云平台的应用运行质量的无侵入仿真方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110289119A1 (en) * | 2010-05-20 | 2011-11-24 | Sybase, Inc. | Methods and systems for monitoring server cloud topology and resources |
CN103747059B (zh) * | 2013-12-26 | 2016-10-05 | 华中科技大学 | 一种面向多租户的云计算服务器集群网络保障方法和*** |
CN110865867B (zh) * | 2015-12-21 | 2023-08-25 | 华为云计算技术有限公司 | 应用拓扑关系发现的方法、装置和*** |
CN107305487A (zh) * | 2016-04-18 | 2017-10-31 | 北京万合鸿瑞科技有限公司 | 一种基于vmware虚拟化助手管理软件*** |
CN107305471A (zh) * | 2016-04-18 | 2017-10-31 | 北京万合鸿瑞科技有限公司 | 一种基于vmware虚拟化的存储资源拓扑*** |
CN106502760B (zh) * | 2016-09-21 | 2019-06-21 | 华为技术有限公司 | 一种虚拟机亲和性策略可视化的方法及装置 |
CN107135095B (zh) * | 2017-04-10 | 2020-06-12 | 清华大学 | 虚拟机网络拓扑的可视化编辑方法及*** |
US11010185B2 (en) * | 2018-01-30 | 2021-05-18 | Vmware, Inc. | Monitoring applications running on containers |
CN109040276B (zh) * | 2018-08-20 | 2022-03-22 | 郑州云海信息技术有限公司 | 一种构建云平台的方法、装置、计算机存储介质及终端 |
US11106480B2 (en) * | 2019-01-25 | 2021-08-31 | Vmware, Inc. | Systems, methods, and apparatus to improve containerized application visibility |
-
2020
- 2020-12-30 CN CN202011630366.9A patent/CN114697319B/zh active Active
-
2021
- 2021-12-29 WO PCT/CN2021/142621 patent/WO2022143797A1/zh unknown
- 2021-12-29 EP EP21914529.9A patent/EP4270183A4/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7519700B1 (en) * | 2005-02-18 | 2009-04-14 | Opnet Technologies, Inc. | Method and system for topological navigation of hierarchical data groups |
CN103514310A (zh) * | 2012-06-26 | 2014-01-15 | 上海宝信软件股份有限公司 | 一种it基础设施拓扑可视化编辑与展示方法 |
CN109803018A (zh) * | 2019-01-24 | 2019-05-24 | 云南电网有限责任公司信息中心 | 一种基于Mesos和YARN结合的DCOS云管理平台 |
CN111597099A (zh) * | 2020-05-19 | 2020-08-28 | 山东汇贸电子口岸有限公司 | 一种监测部署于云平台的应用运行质量的无侵入仿真方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4270183A4 (en) | 2024-03-13 |
EP4270183A1 (en) | 2023-11-01 |
CN114697319A (zh) | 2022-07-01 |
WO2022143797A1 (zh) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11641319B2 (en) | Network health data aggregation service | |
US20210119890A1 (en) | Visualization of network health information | |
CN109787859B (zh) | 基于网络拥塞探测的智能限速方法、装置及存储介质 | |
US10243820B2 (en) | Filtering network health information based on customer impact | |
US10505819B2 (en) | Method and apparatus for computing cell density based rareness for use in anomaly detection | |
CN110247784B (zh) | 确定网络拓扑结构的方法和装置 | |
US10911263B2 (en) | Programmatic interfaces for network health information | |
CN108696428B (zh) | 基于隧道技术的路由探测方法、路由节点和中心服务器 | |
CN110659109B (zh) | 一种openstack集群虚拟机监控***及方法 | |
CN108173678B (zh) | 客户端数据发送方法、客户端连接异常显示方法及装置 | |
CN103117879A (zh) | 一种计算机硬件运行参数网络监测*** | |
CN109768899A (zh) | 网站可用性监测方法、装置、设备及介质 | |
US9590885B1 (en) | System and method of calculating and reporting of messages expiring from a queue | |
US20170353363A1 (en) | Systems and methods for managing network operations | |
CN108574627B (zh) | 一种sdn网络多控制域协同管理方法和*** | |
CN111405531A (zh) | 一种提高通信质量的方法、介质、终端和装置 | |
CN117370053A (zh) | 一种面向信息***业务运行全景监测方法及*** | |
CN114697319B (zh) | 一种公有云的租户业务管理方法及装置 | |
US7254638B2 (en) | Method and apparatus for identifying slow links and for providing application-based responses to slow links in a distributed computer network | |
TW201303753A (zh) | 應用於影像監控平台的分散式運算系統 | |
EP3306471A1 (en) | Automatic server cluster discovery | |
CN109508356B (zh) | 数据异常预警方法、装置、计算机设备及存储介质 | |
CN113766363A (zh) | 故障监控方法、装置及计算设备 | |
CN113542044A (zh) | 网络质量监测方法、装置及计算设备 | |
CN116932332B (zh) | Dpu运行状态监控方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |