CN110417614B - 云服务器自检方法、装置、设备及计算机可读存储介质 - Google Patents
云服务器自检方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110417614B CN110417614B CN201910525623.3A CN201910525623A CN110417614B CN 110417614 B CN110417614 B CN 110417614B CN 201910525623 A CN201910525623 A CN 201910525623A CN 110417614 B CN110417614 B CN 110417614B
- Authority
- CN
- China
- Prior art keywords
- cloud server
- port
- server instance
- load
- abnormal load
- 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
Images
Classifications
-
- 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/50—Testing arrangements
-
- 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
-
- 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
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及云技术领域,公开了一种云服务器自检方法,包括以下步骤:基于预置的间隔自检时间,监控当前是否达到自检时间;若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口;若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。本发明还公开了一种云服务器自检装置、设备及计算机可读存储介质。本发明保证云服务业务正常运行,实现自动化运营,无需人工干预,根据用户预设策略创建和释放云服务器实例。
Description
技术领域
本发明涉及云技术领域,尤其涉及关于云服务器自检方法、装置、设备及可读存储介质。
背景技术
随着现代社会互联网技术的发展,云计算技术作为新一代的IT模式也得到了越来越广泛的应用。云计算技术从网格计算,并行计算和分布式计算发展而来,用户可以利用它来便捷地按需通过网络访问一个可配置的计算资源(如计算、网络、存储、应用和服务等)的共享池,只需最小化的管理工作量或服务提供商干预就可以快速地开通或释放资源。
随着企业的应用业务量是每年递增的,对云服务器的需求也越来越多,运维人员难以做到时刻检查服务器的健康状态,进而实时替换,这样需要耗费大量的人工成本,无法保证业务系统时时稳定运行。
发明内容
本发明的主要目的在于提供一种关于云服务器自检方法、装置、设备及可读存储介质,旨在解决如何实现云服务器定时自检,自动化运营的技术问题。
为实现上述目的,本发明提供的一种关于云服务器自检方法,所述云服务器自检方法包括:
基于预置的自检时间间隔,监控当前是否达到自检时间;
若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
可选地,所述若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口还包括:
若当前达到自检时间,则通过负载均衡设备统计所述伸缩组内端口的负载情况,其中,所述负载包括分发流量、流入流出速率;
判断所述伸缩组内端口的负载是否低于或高于预置负载阈值区间;
若所述伸缩组内存在端口的负载低于或高于预置负载阈值区间,则所述端口负载异常;
若所述伸缩组内端口的负载均在预置负载阈值区间内,则所述伸缩组内的端口均负载正常。
可选地,所述若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常包括:
若检测到所述伸缩组存在负载异常的端口,则基于所述负载异常的端口,确定所述负载异常的端口对应的云服务器实例;
检测所述负载异常的端口对应的云服务器实例,并统计当前检测时间;
若当前检测时间大于预置检测超时时间,则判定检测超时;
统计检测超时次数;
若连续出现检测超时,且超时次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
若未出现连续检测超时且次数达到预置次数阈值,则判断所述负载异常的端口对应的云服务器实例运行正常。
可选地,所述若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常还包括:
若检测到所述伸缩组存在负载异常的端口,则上报统计所述负载异常的端口对应的云服务器实例,并统计所述负载异常的端口对应的云服务器实例异常次数;
若所述负载异常的端口对应的云服务器实例存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
若所述负载异常的端口对应的云服务器实例未存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
可选地,所述若所述负载异常的端口对应的云服务器实例运行不正常,移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组包括:
若所述负载异常的端口对应的云服务器实例运行不正常,则调用负载均衡设备配置控制接口;
通过所述负载均衡设备,将所述负载异常的端口对应的云服务器实例状态调整为关闭;
请求所述负载均衡设备停止向所述负载异常的端口对应的云服务器实例分发新的流量,并断开与所述负载异常的端口对应的云服务器实例的连接;
移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
可选地,在若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组的步骤之后,还包括:
检测所述伸缩组中的云服务器实例数量;
若所述云服务器实例数量小于预置最小值,则复制正常的云服务器实例加入伸缩组;
若所述云服务器实例数量大于预置最大值,则随机移除高于部分的云服务器实例。
可选地,在若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组的步骤之后,还包括:
检测所述伸缩组云服务器实例负载情况,其中,所述负载包括内存利用率、cpu利用率、磁盘读写速率、流入流出速率、设备连接数;
当所述伸缩组云服务器实例的实时负载平均值大于预设最大阈值时,根据预置伸缩规则,增加所述伸缩组的云服务器实例,其中,所述规则为增加或减少N个云服务器实例,N为整数;
当伸缩组的实时负载平均值小于预设最小阈值时,根据预置伸缩规则,减少所述伸缩组的云服务器实例。
进一步地,为实现上述目的,本发明还提供一种云服务器自检装置,所述云服务器自检装置包括:
监控模块,用于基于预置的自检时间间隔,监控当前是否达到自检时间;
第一检测模块,用于若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
第二检测模块,用于若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
第一移除模块,用于若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
可选地,第一检测模块还包括:
统计单元,用于若当前达到自检时间,则通过负载均衡设备统计所述伸缩组内端口的负载情况,其中,所述负载包括分发流量、流入流出速率;
第一判断单元,用于判断所述伸缩组内端口的负载是否低于或高于预置负载阈值区间;
第一确定单元,用于若所述伸缩组内存在端口的负载低于或高于预置负载阈值区间,则所述端口负载异常;
第二确定单元,用于若所述伸缩组内端口的负载均在预置负载阈值区间内,则所述伸缩组内的端口均负载正常。
可选地,所述第二检测模块还包括:
第三确定单元,用于若检测到所述伸缩组存在负载异常的端口,则基于所述负载异常的端口,确定所述负载异常的端口对应的云服务器实例;
第二统计单元,用于检测所述负载异常的端口对应的云服务器实例,并统计当前检测时间;
第二判断单元,用于若当前检测时间大于预置检测超时时间,则判定检测超时;
第三统计单元,用于统计检测超时次数;
第四确定单元,用于若连续出现检测超时,且超时次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
第五确定单元,用于若未出现连续检测超时且次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
可选地,所述第二检测模块还包括:
上报单元,用于若检测到所述伸缩组存在负载异常的端口,则上报统计所述负载异常的端口对应的云服务器实例,并统计所述负载异常的端口对应的云服务器实例异常次数;
第六确定单元,用于若所述负载异常的端口对应的云服务器实例存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
第七确定单元,用于若所述负载异常的端口对应的云服务器实例未存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
可选地,所述第一移除模块还包括:
配置单元,用于若所述负载异常的端口对应的云服务器实例运行不正常,则调用负载均衡设备配置控制接口;
调整单元,用于通过所述负载均衡设备,将所述负载异常的端口对应的云服务器实例状态调整为关闭;
连接单元,用于请求所述负载均衡设备停止向所述负载异常的端口对应的云服务器实例分发新的流量,并断开与所述负载异常的端口对应的云服务器实例的连接;
移除单元,用于移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
可选地,所述云服务器自检装置还包括:
第三检测模块,用于检测所述伸缩组中的云服务器实例数量;
复制模块,用于若所述云服务器实例数量小于预置最小值,则复制正常的云服务器实例加入伸缩组;
第二移除模块,用于若所述云服务器实例数量大于预置最大值,则随机移除超出部分的云服务器实例。
可选地,所述云服务器自检装置还包括:
第四检测模块,用于检测所述伸缩组云服务器实例负载情况,其中,所述负载包括内存利用率、cpu利用率、磁盘读写速率、流入流出速率、设备连接数;
新增模块,用于当所述伸缩组云服务器实例的实时负载平均值大于预设最大阈值时,根据预置伸缩规则,新增所述伸缩组的云服务器实例,其中,所述规则为新增或减少N个云服务器实例,N为整数;
减少模块,用于当伸缩组的实时负载平均值小于预设最小阈值时,根据预置伸缩规则,减少所述伸缩组的云服务器实例。
进一步地,为实现上述目的,本发明还提供一种云服务器自检设备,所述云服务器自检设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的云服务器自检程序,所述云服务器自检程序被所述处理器执行时实现如上述任一项所述的云服务器自检方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有云服务器自检程序,所述云服务器自检程序被处理器执行时实现如上述任一项所述的云服务器自检方法的步骤。
本发明基于预置的自检时间间隔,由监控设备监控当前是否达到自检时间,若当前达到自检时间,则检测当前伸缩组内所有云服务器实例端口是否存在负载异常的端口,若存在,基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常,若确定所述负载异常的端口对应的云服务器实例运行不正常,移除所述负载异常的端口对应的云服务器实例,复制运行正常的云服务器实例加入到伸缩组,替代所述运行不正常的云服务器实例,进而保证业务正常运行,实现自动化运营,无需人工干预,根据用户预设策略创建和释放云服务器实例。
附图说明
图1为本发明实施例方案涉及的云服务器自检设备运行环境的结构示意图;
图2为本发明云服务器自检方法一实施例的流程示意图;
图3为图2中步骤S20一实施例的细化流程示意图。;
图4为图2中步骤S30一实施例的细化流程示意图;
图5为图2中步骤S30的另一细化流程示意图;
图6为图2中步骤S40的细化流程示意图;
图7为本发明云服务器自检方法第二实施例的流程示意图;
图8为本发明云服务器自检方法第三实施例的流程示意图;
图9为本发明云服务器自检装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种云服务器自检设备。
参照图1,图1为本发明实施例方案涉及的云服务器自检设备运行环境的结构示意图。
如图1所示,该云服务器自检设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的云服务器自检设备的硬件结构并不构成对云服务器自检设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。其中,操作系统是管理和控制云服务器自检设备和软件资源的程序,支持云服务器自检程序以及其它软件和/或程序的运行。
在图1所示的云服务器自检设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等。而处理器1001可以用于调用存储器1005中存储的云服务器自检程序,并执行以下云服务器自检方法的各实施例的操作。
基于上述云服务器自检设备硬件结构,提出本发明云服务器自检方法的各个实施例。
参照图2,图2为本发明云服务器自检方法一实施例的流程示意图。本实施例中,所述云服务器自检方法包括以下步骤:
步骤S10:基于预置的自检时间间隔,监控当前是否达到自检时间;
目前,随着现代社会互联网技术的发展,云计算技术作为新一代的IT模式也得到了越来越广泛的应用。云计算技术从网格计算,并行计算和分布式计算发展而来,用户可以利用它来便捷地按需通过网络访问一个可配置的计算资源(如计算、网络、存储、应用和服务等)的共享池,只需最小化的管理工作量或服务提供商干预就可以快速地开通或释放资源。当前随着企业的应用业务量是每年递增的,对云服务器的需求也越来越多,运维人员难以做到时刻检查服务器的健康状态,进而实时替换,这样需要耗费大量的人工成本,无法保证业务系统时时稳定运行。
本实施例中,监控当前时间,并进行时间计算,判断当前是否达到预置的自检时间间隔,其中,预置的自检时间间隔可以根据用户需要,或当前业务应用情况,自定义自检时间间隔。例如,自检时间间隔可以是间隔30秒,1分钟,10分钟,30分钟,1小时等,具体时长不限。
例如,若预置的自检时间间隔为30秒,则伸缩组每30秒自检一次,当最近一次检测时间为12:01:30,则在30秒后,即12:02:00时做再一次检测。
步骤S20:若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
本实施例中,基于负载均衡设备,设置所述当前伸缩组云服务器实例的端口负载阈值区间,若当前时间累积到自检时间,获取当前伸缩组内每个端口的负载信息,检测所述伸缩组云服务器实例的端口负载是否在所述负载阈值区间,若所述伸缩组的端口均在所述负载阈值区间内,则所述伸缩组内部存在负载异常的端口;若所述伸缩组的端口负载存在小于或大于所述负载阈值区间,则所述伸缩组组存在负载异常的端口。
进一步地,所述伸缩组连接负载均衡设备,当接收请求服务时,由所述负载均衡设备对所述伸缩组中云服务器实例进行流量分发。此外,所述负载均衡设备还监听所述伸缩组中云服务器实例端口的负载情况、所述伸缩组的负载均衡策略和所述伸缩组的健康检查配置,定时对所述伸缩组中云服务器实例端口进行检测,基于检测结果执行所述伸缩组的负载均衡策略。
步骤S30:若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
本实施例中,基于上述步骤的检测结果,若检测当前伸缩组内所有云服务器实例端口的分发流量或负载指标,检测所述伸缩组云服务器实例端口是否存在分发流量或负载异常,若检测到所述伸缩组云服务器实例存在流量分发或负载异常的端口,则定位所述流量分发异常的端口,根据预置的检测机制,确定所述负载异常的端口所对应的云服务器实例运行是否正常。其中,预置的检测机制可以实际情况制定,此处不作限定。
例如,检测当前伸缩组中的端口,发现端口A流量分发异常,负载大于或小于预置负载区间,根据当前预置的检测机制,对端口A所对应的1号云服务器实例进行检测,进而判断1号服务器实例运行是否正常。
步骤S40:若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制正常的云服务器实例加入伸缩组;
本实施例中,基于预置的检测机制,若确定所述负载异常的端口对应的云服务器实例运行不正常,通过预置的脚本,调用负载均衡设备配置控制接口,向所述负载均衡设备发送请求,将所述云服务器实例的状态置为关闭,并停止对所述负载异常的端口对应的云服务器实例分发新的请求,断开与所述负载异常的端口对应的云服务器实例的连接,将所述负载异常的端口对应的云服务器实例移出所述伸缩组。
例如,检测当前伸缩组中的端口,发现端口A负载大于或小于预置负载区间,或者分发流量异常,根据当前预置的检测机制,对端口A所对应的1号云服务器实例进行检测,若确定1号云服务器实例运行不正常,则启动预置的脚本,调用负载均衡设备配置控制接口,通知负载均衡设备将1号云服务器实例的状态调整为关闭,并停止对1号云服务器实例分发新的请求,断开与1号云服务器实例的连接,将1号云服务器实例移出伸缩组,并复制一个正常的云服务器实例,加入到伸缩组中,替换1号云服务器实例,承担1号云服务器实例的分发流量。
本实施例基于预置的自检时间间隔,由监控设备监控当前是否达到自检时间,若当前达到自检时间,则检测当前伸缩组内所有云服务器实例端口是否存在负载异常的端口,若存在,基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常,若确定所述负载异常的端口对应的云服务器实例运行不正常,移除所述负载异常的端口对应的云服务器实例,复制运行正常的云服务器实例加入到伸缩组,替代所述运行不正常的云服务器实例,进而保证业务正常运行,实现自动化运营,无需人工干预,根据用户预设策略创建和释放云服务器实例。
参照图3,图3为图2中步骤S20一实施例的细化流程示意图。上述步骤S20还包括:
步骤S201:若当前达到自检时间,则通过负载均衡设备统计所述伸缩组内端口的负载情况,其中,所述负载包括分发流量、流入流出速率;
步骤S202:判断所述伸缩组内端口的负载是否低于或高于预置负载阈值区间;
步骤S203:若所述伸缩组内存在端口的负载低于或高于预置负载阈值区间,则所述端口负载异常;
步骤S204:若所述伸缩组内端口的负载均在预置负载阈值区间内,则所述伸缩组内的端口均负载正常。
本实施例中,实时监控当前时间,当时间达到预置的间隔自检时间,所述伸缩组对组内云服务器实例检测是否运行正常。进一步地,首先检测所述伸缩组内是否存在负载异常的端口,可以通过所述伸缩组连接的负载均衡设备统计所述伸缩组内的端口负载情况。通过比较统计结果与预置负载区间的关系,判断所述伸缩组内的端口负载是否正常。其中,所述负载包括所述伸缩组中云服务器实例的端口负载的分发流量、流入流出速率等。
进一步地,根据所述伸缩组云服务器实例端口的负载情况与预置阈值区间的大小关系,判断所述伸缩组内端口的负载是否正常。其中,若所述伸缩组内存在端口的负载低于或高于预置阈值区间,则所述端口负载异常;若所述伸缩组内端口的负载在预置负载阈值区间之内,则所述伸缩组内的端口均负载正常。
例如,预置A伸缩组中的端口负载分发流量阈值区间为5-8G,通过A伸缩组连接的负载均衡设备,获取A伸缩组中云服务器实例端口的分发流量,若A伸缩组中存在云服务器实例端口的分发流量低于或高于预置的阈值区间,则A伸缩组内低于或高于预置的阈值区间的云服务器实例端口负载不正常;若A伸缩组中的端口分发流量均在预置的阈值区间之内,则A伸缩组中的云服务器实例端口均负载正常。
参照图4,图4为图2中步骤S30一实施例的细化流程示意图。上述步骤S30还包括:
步骤S301:若检测到所述伸缩组存在负载异常的端口,则基于所述负载异常的端口,确定所述负载异常的端口对应的云服务器实例;
步骤S302:检测所述负载异常的端口对应的云服务器实例,并统计当前检测时间;
步骤S303:若检测时间大于预置检测超时时间,则判定检测超时;
步骤S304:统计检测超时次数;
步骤S305:若连续出现检测超时,且超时次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
步骤S306:若未出现连续检测超时且次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
本实施例中,基于上述实施例,当检测到所述伸缩组存在负载异常的端口时,基于所述负载异常的端口,查找所述负载异常端口所属云服务器实例,定位所述云服务器实例,对所述云服务器实例进行检测,统计所述云服务器实例的检测耗费时长,将统计结果与预置检测超时时间做比较,若统计结果大于预置检测超时时间,则本次检测超时。此外,当发现有云服务器实例检测超时时,对该台云服务器实例进行复检,并根据复检的检测结果,统计检测超时次数,若该台云服务器实例连续多次出现检测超时,连续检测超时的次数达到预置次数阈值,则判断该台云服务器运行不正常。
进一步地,通过所述伸缩组负载均衡设备对所述负载异常端口所述云服务器实例进行监听,并统计检测超时次数。
例如,设置检测超时时间为1分钟,当检测到伸缩组中端口a存在负载异常,基于端口a查找所述云服务器实例A,对云服务器实例A进行检测,统计检测云服务器实例A的耗费时长为3分钟,对比预置的检测超时时间1分钟,本次检测超时。此外,在检测到云服务器实例A存在检测超时时,则对云服务器A进行复检,统计复检结果,其中,复检次数可以是预置次数阈值,也可以自定义,若复检结果连续超时,且次数达到预置次数阈值,则云服务器实例A运行不正常。
参照图5,图5为图2中步骤S30的另一细化流程示意图。上述步骤S30还包括:
步骤S3001:若检测到所述伸缩组存在负载异常的端口,则上报统计所述负载异常的端口对应的云服务器实例,并统计所述负载异常的端口对应的云服务器实例异常次数;
步骤S3002:若所述负载异常的端口对应的云服务器实例存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
步骤S3003:若所述负载异常的端口对应的云服务器实例未存在连续多次异常,且异常次数达到预置次数阈值,则判断所述负载异常的端口对应的云服务器实例运行正常。
本实施例中,当检测到所述伸缩组存在负载异常的端口时,判定所述负载异常的端口对应的云服务器实例,上报所述负载异常的端口对应的云服务器实例给所述伸缩组连接的负载均衡设备,记录所述负载异常的端口对应的云服务器实例的本次异常,若再次自检时,再次检测到所述负载异常的端口对应的云服务器实例的端口负载异常,上报所述负载异常的端口对应的云服务器实例二次异常,当所述负载异常的端口对应的云服务器的对应端口连续出现多次异常,且异常次数达到预置次数阈值时,则判定所述负载异常的端口对应的云服务器实例运行不正常。
例如,预设连续3次检测到同一云服务器实例异常,即判定该云服务器实例运行不正常,若在第一次周期检测到当前伸缩组负载异常的端口对应的云服务器实例为云服务器实例A,上报统计为云服务器实例A异常1次,,第二次周期检查,还是发现云服务器实例A异常,上报统计为云服务器实例A异常2次,第三次周期检查发现云服务器实例A依旧异常,上报统计为云服务器实例A异常3次,此时3次检查都发现云服务器实例A异常,则判定云服务器实例A运行不正常。其中,若第三次周期检测发现云服务器实例A正常,则云服务器实例A异常连续次数为2次,未达到预置的阈值,则判定断云服务器实例A运行正常。
参照图6,图6为图2中步骤S40的细化流程示意图。上述步骤S40还包括:
步骤S401:若所述负载异常的端口对应的云服务器实例运行不正常,则调用负载均衡设备配置控制接口;
步骤S402:通过所述负载均衡设备,将所述负载异常的端口对应的云服务器实例状态调整为关闭;
步骤S403:请求所述负载均衡设备停止向所述负载异常的端口对应的云服务器实例分发新的流量,并断开与所述负载异常的端口对应的云服务器实例的连接;
步骤S404:移除所述负载异常的端口对应的云服务器实例,并复制正常的云服务器实例加入伸缩组。
本实施例中,当确定一台云服务器实例运行不正常时,查找该云服务器实例的控制接口,通过预置脚本,调用负载均衡设备配置所述控制接口,基于所述负载均衡设备,通过所述控制接口将该云服务器实例的状态调整为关闭,并停止向该云服务器实例分发新的请求,断开与该云服务器的连接,将该云服务器实例移出伸缩组。
例如,检测当前伸缩组中的端口,发现端口A负载异常,或者分发流量低于正常水平,根据当前预置的检测机制,对端口A所对应的1号云服务器实例进行检测,若确定1号云服务器实例运行不正常,则启动预置的脚本,调用负载均衡设备配置控制接口,通知负载均衡设备将1号云服务器实例的状态调整为关闭,并停止对1号云服务器实例分发新的请求,断开与1号云服务器实例的连接,将1号云服务器实例移出伸缩组。
参照图7,图7为本发明云服务器自检方法第二实施例的流程示意图。基于上述实施例,本实施例中,在步骤S40之后,还包括:
步骤S001:检测所述伸缩组中的云服务器实例数量;
步骤S002:若所述云服务器实例数量小于预置最小值,则复制正常的云服务器实例加入伸缩组;
步骤S003:若所述云服务器实例数量大于预置最大值,则随机移除超出部分的云服务器实例。
本实施例中,在定期自检,在移除运行不正常的云服务器实例后,通过所述伸缩组连接的负载均衡设备,统计所述伸缩组的云服务器实例数量,基于统计结果与预置云服务器实例预置区间,判断所述伸缩组是否需要增加或减少云服务器实例。其中,若所述伸缩组的云服务器实例数量小于预置最小值,则复制正常的云服务器实例加入伸缩组中;若所述云服务器实例数量大于预置最大值,则随机移除超出部分的云服务器实例。
进一步地,所述伸缩组的云服务器实例预置区间可由用户自定义,一般根据实际业务需求而定。例如,当前业务需要云服务器实例50-60台,在一次定期检测中,移除运行不正常的云服务器实例后,伸缩组中的云服务实例低于50台,则复制运行正常的云服务器实例,加入到所述伸缩组,直至达到50台云服务器实例,再根据业务需要考虑是否再进行增加;若所述伸缩组中的云服务器实例高于60台,则随机选择云服务器实例进行移除,直至云服务器实例数量降到60台以内。
参照图8,图8为本发明云服务器自检方法第三实施例的流程示意图。基于上述实施例,本实施例中,在步骤S40之后,还包括:
步骤S0001:检测所述伸缩组云服务器实例负载情况,其中,所述负载包括内存利用率、cpu利用率、磁盘读写速率、流入流出速率、设备连接数;
步骤S0002:当所述伸缩组云服务器实例的实时负载平均值大于预设最大阈值时,根据预置伸缩规则,新增所述伸缩组的云服务器实例,通过负载均衡设备,均匀分配所述伸缩组云服务器实例的负载任务,其中,所述规则为新增或减少N个云服务器实例,N为整数;
步骤S0003:当伸缩组的实时负载平均值小于预设最小阈值时,根据预置伸缩规则,减少所述伸缩组的云服务器实例,通过负载均衡设备,均匀分配所述伸缩组云服务器实例的负载任务。
本实施例中,在定期自检,移除运行不正常的云服务器实例后,检测当前伸缩组云服务器实例的负载情况,基于检测结果与所述伸缩组预置负载区间,判断所述伸缩组是否需要新增或减少云服务器实例。其中,当所述伸缩组中云服务器实例的实时负载平均值大于预设最大阈值时,根据预置伸缩规则,相应的减少云服务器实例;当所述伸缩组中云服务器实例的实时负载平均值小于预置最小阈值时,根据预置伸缩规则,相应的新增云服务器实例。
进一步地,所述伸缩组云服务器实例负载情况可以是云服务器实例的内存利用率、CPU利用率、磁盘读写速率、流入流出速率、设备连接数等;伸缩组规则为增加或减少N个云服务器实例,N为整数。例如,例如,预设伸缩规则为增加或减少2个实例,实时监控伸缩组负载的实时负载平均值,则当监控到所述伸缩组负载的实时负载平均值超过预置的最大阈值时,伸缩组相应新增2个实例,新增2个实例通过负载均衡,均匀进行业务流量分发,从而降低资源压力,确保业务系统稳定;而当监控到所述伸缩组负载的实时负载平均值低于预置的最小阈值时,伸缩组相应选择2个实例,移出伸缩组,节省资源成本。
本发明还提供一种云服务器自检装置。
参照图9,图9为本发明云服务器自检装置一实施例的功能模块示意图。本实施例中,所述云服务器自检装置包括:
监控模块10,用于基于预置的间隔自检时间,监控当前是否达到自检时间;
第一检测模块20,用于若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
第二检测模块30,用于若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
移除模块40,用于若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
本实施例中,监控模块10基于预置的间隔自检时间,监控当前时间是否达到自检时间,第一检测模块20在当前时间达到自检时间时,检测当前伸缩组内是否存在负载异常的端口,第二检测模块30在检测到所述伸缩组中存在所述负载异常的端口时,基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常,移除模块40在所述负载异常的端口对应的云服务器实例运行不正常时,移除所述负载异常端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
本发明还提供一种计算机可读存储介质。
本实施例中,所述计算机可读存储介质上存储有云服务器自检程序,所述云服务器自检程序被处理器执行时实现如上述任一项实施例中所述的云服务器自检方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
Claims (9)
1.一种云服务器自检方法,其特征在于,所述云服务器自检方法包括以下步骤:
基于预置的自检时间间隔,监控当前是否达到自检时间;
若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组;
所述若所述负载异常的端口对应的云服务器实例运行不正常,移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组包括:
若所述负载异常的端口对应的云服务器实例运行不正常,则调用负载均衡设备配置控制接口;
通过所述负载均衡设备,将所述负载异常的端口对应的云服务器实例状态调整为关闭;
请求所述负载均衡设备停止向所述负载异常的端口对应的云服务器实例分发新的流量,并断开与所述负载异常的端口对应的云服务器实例的连接;
移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
2.如权利要求1所述的云服务器自检方法,其特征在于,所述若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口还包括:
若当前达到自检时间,则通过负载均衡设备统计所述伸缩组内端口的负载情况;其中,所述负载包括分发流量、流入流出速率;
判断所述伸缩组内端口的负载是否低于或高于预置负载阈值区间;
若所述伸缩组内存在端口的负载低于或高于预置负载阈值区间,则所述端口负载异常;
若所述伸缩组内端口的负载均在预置负载阈值区间内,则所述伸缩组内的端口均负载正常。
3.如权利要求1所述的云服务器自检方法,其特征在于,所述若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常包括:
若检测到所述伸缩组存在负载异常的端口,则基于所述负载异常的端口,确定所述负载异常的端口对应的云服务器实例;
检测所述负载异常的端口对应的云服务器实例,并统计当前检测时间;
若当前检测时间大于预置检测超时时间,则判定检测超时;
统计检测超时次数;
若连续出现检测超时,且超时次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
若未出现连续检测超时且次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
4.如权利要求1所述的云服务器自检方法,其特征在于,所述若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应的云服务器实例是否运行正常还包括:
若检测到所述伸缩组存在负载异常的端口,则上报统计所述负载异常的端口对应的云服务器实例,并统计所述负载异常的端口对应的云服务器实例异常次数;
若所述负载异常的端口对应的云服务器实例存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行不正常;
若所述负载异常的端口对应的云服务器实例未存在连续多次异常,且异常次数达到预置次数阈值,则判定所述负载异常的端口对应的云服务器实例运行正常。
5.如权利要求1所述的云服务器自检方法,其特征在于,在若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组的步骤之后,还包括:
检测所述伸缩组中的云服务器实例数量;
若所述云服务器实例数量小于预置最小值,则复制正常的云服务器实例加入伸缩组;
若所述云服务器实例数量大于预置最大值,则随机移除超出部分的云服务器实例。
6.如权利要求1所述的云服务器自检方法,其特征在于,在若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组的步骤之后,还包括:
检测所述伸缩组云服务器实例负载情况,其中,所述负载包括内存利用率、cpu利用率、磁盘读写速率、流入流出速率、设备连接数;
当所述伸缩组云服务器实例的实时负载平均值大于预设最大阈值时,根据预置伸缩规则,新增所述伸缩组的云服务器实例,其中,所述规则为新增或减少N个云服务器实例,N为整数;
当伸缩组的实时负载平均值小于预设最小阈值时,根据预置伸缩规则,减少所述伸缩组的云服务器实例。
7.一种云服务器自检装置,其特征在于,所述云服务器自检装置包括:
监控模块,用于基于预置的间隔自检时间,监控当前是否达到自检时间;
第一检测模块,用于若当前达到自检时间,则检测当前伸缩组内是否存在负载异常的端口,其中,所述伸缩组为面向同一场景的云服务器实例集合;
第二检测模块,用于若检测到所述伸缩组中存在所述负载异常的端口,则基于预置检测机制,检测所述负载异常的端口对应云服务器实例是否运行正常;
移除模块,用于若所述负载异常的端口对应的云服务器实例运行不正常,则移除所述负载异常的端口对应的云服务器实例,并复制正常的云服务器实例加入伸缩组;
所述若所述负载异常的端口对应的云服务器实例运行不正常,移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组包括:
若所述负载异常的端口对应的云服务器实例运行不正常,则调用负载均衡设备配置控制接口;
通过所述负载均衡设备,将所述负载异常的端口对应的云服务器实例状态调整为关闭;
请求所述负载均衡设备停止向所述负载异常的端口对应的云服务器实例分发新的流量,并断开与所述负载异常的端口对应的云服务器实例的连接;
移除所述负载异常的端口对应的云服务器实例,并复制运行正常的云服务器实例加入伸缩组。
8.一种云服务器自检设备,其特征在于,所述云服务器自检设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的云服务器自检程序,所述云服务器自检程序被所述处理器执行时实现如权利要求1-6中任一项所述的云服务器自检方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有云服务器自检程序,所述云服务器自检程序被处理器执行时实现如权利要求1-6中任一项所述的云服务器自检方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910525623.3A CN110417614B (zh) | 2019-06-18 | 2019-06-18 | 云服务器自检方法、装置、设备及计算机可读存储介质 |
PCT/CN2019/102564 WO2020252902A1 (zh) | 2019-06-18 | 2019-08-26 | 云服务器自检方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910525623.3A CN110417614B (zh) | 2019-06-18 | 2019-06-18 | 云服务器自检方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417614A CN110417614A (zh) | 2019-11-05 |
CN110417614B true CN110417614B (zh) | 2022-04-26 |
Family
ID=68359263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910525623.3A Active CN110417614B (zh) | 2019-06-18 | 2019-06-18 | 云服务器自检方法、装置、设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110417614B (zh) |
WO (1) | WO2020252902A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111045877A (zh) * | 2019-11-15 | 2020-04-21 | 西安海的电子科技有限公司 | 一种计算机自检方法 |
CN111382326B (zh) * | 2020-03-17 | 2023-06-30 | 北京三快在线科技有限公司 | 实例组创建方法、装置、服务器及存储介质 |
CN114095200B (zh) * | 2021-09-28 | 2023-12-01 | 阿里巴巴(中国)有限公司 | 资源访问权限管理方法、装置、电子设备及介质 |
CN114048098B (zh) * | 2021-11-15 | 2024-07-16 | 盐城天眼察微科技有限公司 | 异常服务实例的监控方法及其装置 |
CN114710503A (zh) * | 2022-04-21 | 2022-07-05 | 思必驰科技股份有限公司 | 服务调度的方法及电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156212A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金控股股份有限公司 | 一种基于用户感知的弹性伸缩方法及系统 |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238022A (zh) * | 2010-04-23 | 2011-11-09 | 中兴通讯股份有限公司 | 一种网络管理系统及数据采集方法 |
CN102684936A (zh) * | 2011-03-11 | 2012-09-19 | 北京千橡网景科技发展有限公司 | 用于监测服务器的运行状态的方法、设备和系统 |
CN103713981A (zh) * | 2013-12-31 | 2014-04-09 | 国网山东省电力公司 | 一种数据库服务器性能检测和预警方法 |
CN104394224A (zh) * | 2014-11-28 | 2015-03-04 | 无锡华云数据技术服务有限公司 | 一种负载均衡系统 |
CN105391797B (zh) * | 2015-12-03 | 2019-02-22 | 北京航空航天大学 | 基于sdn的云服务器负载均衡方法及装置 |
CN106921508B (zh) * | 2015-12-25 | 2021-02-19 | 中兴通讯股份有限公司 | 虚拟化网元故障自愈方法及装置 |
CN105791033A (zh) * | 2016-05-09 | 2016-07-20 | 浪潮电子信息产业股份有限公司 | 一种调控服务器运行状态的方法、装置及系统 |
CN107911399B (zh) * | 2017-05-27 | 2020-10-16 | 广东网金控股股份有限公司 | 一种基于负载预测的弹性伸缩方法及系统 |
CN109150644A (zh) * | 2017-06-28 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种对服务器进行健康检测的方法及装置 |
CN109274707B (zh) * | 2017-07-18 | 2022-02-22 | 阿里巴巴集团控股有限公司 | 一种负载调度方法及装置 |
CN108965485B (zh) * | 2018-09-30 | 2021-10-15 | 北京金山云网络技术有限公司 | 容器资源的管理方法、装置和云平台 |
CN109412841A (zh) * | 2018-09-30 | 2019-03-01 | 北京金山云网络技术有限公司 | 虚拟机资源的调整方法、装置和云平台 |
-
2019
- 2019-06-18 CN CN201910525623.3A patent/CN110417614B/zh active Active
- 2019-08-26 WO PCT/CN2019/102564 patent/WO2020252902A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156212A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金控股股份有限公司 | 一种基于用户感知的弹性伸缩方法及系统 |
CN109257440A (zh) * | 2018-10-29 | 2019-01-22 | 南京南瑞信息通信科技有限公司 | 一种基于服务注册中心的服务发现和客户端负载均衡方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2020252902A1 (zh) | 2020-12-24 |
CN110417614A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110417614B (zh) | 云服务器自检方法、装置、设备及计算机可读存储介质 | |
CN111049705B (zh) | 一种监控分布式存储系统的方法及装置 | |
US10972344B2 (en) | Automated adjustment of subscriber policies | |
CN111355610A (zh) | 一种基于边缘网络的异常处理方法及装置 | |
CN111209110B (zh) | 一种实现负载均衡的任务调度管理方法、系统和存储介质 | |
CN107577441B (zh) | 一种osd慢盘处理方法、系统、装置及计算机存储介质 | |
CN108572898A (zh) | 一种控制接口的方法、装置、设备、以及存储介质 | |
US10142997B2 (en) | Method and apparatus for adjusting physical resource, and controller | |
KR950023101A (ko) | 계층 구조를 갖는 분산 교환 시스템의 상위 프로세서 과부하 제어 방법 | |
CN108255703B (zh) | 一种sql脚本的故障修复方法及其终端 | |
EP2899918A1 (en) | Method, apparatus and system for detecting network element load imbalance | |
CN111339466A (zh) | 接口管理方法、装置、电子设备及可读存储介质 | |
US9836342B1 (en) | Application alerting system and method for a computing infrastructure | |
CN109510730B (zh) | 分布式系统及其监控方法、装置、电子设备及存储介质 | |
CN111555918B (zh) | 一种回源优化方法、装置及电子设备 | |
CN106793093B (zh) | 一种业务处理方法及装置 | |
CN111710403A (zh) | 医疗设备的监管方法、设备及可读存储介质 | |
CN116431344A (zh) | 金融服务资源降级策略的配置方法及其装置、电子设备 | |
CN115118782A (zh) | 数据控制方法、装置、电子设备及计算机可读存储介质 | |
CN107957942B (zh) | 一种sql脚本的故障修复方法及其终端 | |
CN112783637B (zh) | 一种资源调控方法和装置 | |
CN110493071B (zh) | 消息系统资源均衡装置、方法及设备 | |
KR20130091130A (ko) | 복합 장애 조건을 이용하여 시스템 장애를 판단하는 시스템 장애 모니터링 방법 및 서버 | |
JP5364932B2 (ja) | タイムアウト監視システム及びタイムアウト監視プログラム | |
TWI749072B (zh) | 異常訊務偵測伺服器及其異常訊務偵測方法 |
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 |