CN116107687A - 集群资源自动伸缩方法、装置及系统 - Google Patents

集群资源自动伸缩方法、装置及系统 Download PDF

Info

Publication number
CN116107687A
CN116107687A CN202111318247.4A CN202111318247A CN116107687A CN 116107687 A CN116107687 A CN 116107687A CN 202111318247 A CN202111318247 A CN 202111318247A CN 116107687 A CN116107687 A CN 116107687A
Authority
CN
China
Prior art keywords
cloud
cluster
telescopic
resource
threshold
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.)
Pending
Application number
CN202111318247.4A
Other languages
English (en)
Inventor
黄晓杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Lizhi Network Technology Co ltd
Original Assignee
Guangzhou Lizhi Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Lizhi Network Technology Co ltd filed Critical Guangzhou Lizhi Network Technology Co ltd
Priority to CN202111318247.4A priority Critical patent/CN116107687A/zh
Publication of CN116107687A publication Critical patent/CN116107687A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及一种集群资源自动伸缩方法、装置及系统。该方法包括:预先获取来自云端层创建并配置好伸缩组,内部设定好相应的伸缩参数项,通过实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,依据当前资源使用率值判定是否请求云端利用伸缩组来创建还是删除云端服务器,最后通知终端。通过上述方法,本申请能够在业务流量繁忙的情况下,自动请求云端来创建云端服务器,让新创建的云端服务器自动加入本地服务集群实现扩容,而在业务流量情况不繁忙的情况下,自动请求云端来删除云端服务器实现缩容,从而提高运维效率,节约资源,达到灵活控制成本的目的。

Description

集群资源自动伸缩方法、装置及系统
技术领域
本申请涉及计算机技术领域,尤其涉及集群资源自动伸缩方法、装置及系统。
背景技术
容器云技术已成为计算机业界内深受追捧的主流技术。
目前在相关技术中,利用容器云技术的主流方式有两种:
第一种是通过直接购买云厂商的容器云集群服务,这种方式的优点在于门槛低,用户可以直接“开箱”使用,但其缺点也是明显的,由于价格成本高,并且不少互联网公司其中间件和数据库都部署在自己的IDC(Internet Data Center,互联网数据中心)并没有在云端上,这会使得连带推高用户的带宽支出;
第二种则是用户在自己的IDC上自建容器云集群,同时让容器云集群与IDC的中间件和数据库互联互通,以此来达到节省成本的目的,但上述方式由于需要专业人员完成,因此技术门槛高,且由于需要自购硬件设备的原因,在业务淡季流量低峰时段,容易造成硬件资源闲置的浪费。
发明内容
为解决或部分解决相关技术中存在的问题,本申请提供一种集群资源自动伸缩方法、装置及系统,能够根据业务流量情况自动扩容或者缩容,提高运维效率,节约资源,灵活控制成本。
本申请的第一方面提供了一种集群资源自动伸缩方法,包括:
获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
生成用户通知,把所述用户通知发送至终端。
优选的,所述根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器包括:
若所述当前资源使用率值大于所述扩容阈值,请求所述云端利用所述伸缩组按照所述扩容策略来创建所述云端服务器,创建的所述云端服务器自动加入至所述集群资源内;
若所述当前资源使用率值小于缩容阈值,请求所述云端利用所述伸缩组按照创建时间的先后顺序来删除的所述云端服务器。
优选的,由所述云端利用所述伸缩组创建的所述云端服务器是所述伸缩组根据所述扩容策略来对应选择创建所述云端服务器的数量,其中创建出来的所述云端服务器的各项硬件参数指标等于所述启动配置。优选的,所述告警触发策略的触发阈值为最高值。优选的,所述实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值包括:
实时接收来自集群资源的所述请求指令,所述请求指令由所述集群资源的弹性伸缩机制在增加或者删除Pod时触发容器PostStart钩子或者容器PreStop钩子时生成;
根据所述请求指令对所述集群资源进行资源使用率扫描,生成所述生成当前资源使用率值。
优选的,所述当前资源使用率值包括当前CPU资源使用率值和当前内存资源使用率值。
优选的,所述伸缩参数项还包括白名单,将已创建好的或者正在使用的所述云端服务器加入至所述白名单中。
本申请的第二方面提供了一种集群资源自动伸缩装置,包括:
获取模块,用于获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定模块,用于设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
扫描模块,用于实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
请求模块,用于根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
通知模块,用于生成用户通知,把所述用户通知发送至终端。
本申请的第三方面提供了一种集群资源自动伸缩系统,包括云端、集群资源自动伸缩装置、集群资源及终端;
所述云端用于创建伸缩组,所述伸缩组配置有有启动配置和告警触发策略;
所述集群资源自动伸缩装置用于获取来自所述云端的所述伸缩组;设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;实时接收来自所述集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;生成用户通知,把所述用户通知发送至所述终端;
所述集群资源用于实时向所述集群资源自动伸缩装置发送的所述请求指令;
所述终端用于接收所述集群资源自动伸缩装置发送的所述用户通知。
优选的,所述集群资源自动伸缩装置包括:
获取模块,用于获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定模块,用于设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
扫描模块,用于实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
请求模块,用于根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
通知模块,用于生成用户通知,把所述用户通知发送至终端。
本申请提供的技术方案可以包括以下有益效果:
本申请的技术方案,预先获取来自云端层创建并配置好伸缩组,内部设定好相应的伸缩参数项,通过实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,依据当前资源使用率值判定是否请求云端利用伸缩组来创建还是删除云端服务器,最后通知终端。通过上述方法,本申请能够在业务流量繁忙的情况下,自动请求云端来创建云端服务器,让新创建的云端服务器自动加入本地服务集群实现扩容,而在业务流量情况不繁忙的情况下,自动请求云端来删除云端服务器实现缩容,从而提高运维效率,节约资源,达到灵活控制成本的目的。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
通过结合附图对本申请示例性实施方式进行更详细地描述,本申请的上述以及其它目的、特征和优势将变得更加明显,其中,在本申请示例性实施方式中,相同的参考标号通常代表相同部件。
图1是本申请实施例示出的集群资源自动伸缩方法的流程示意图;
图2是本申请实施例示出的集群资源自动伸缩装置的结构示意图;
图3是本申请实施例示出的集群资源自动伸缩方法的另一流程示意图;
图4是本申请实施例示出的集群资源自动伸缩系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本申请的实施方式。虽然附图中显示了本申请的实施方式,然而应该理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
目前在相关技术中,实现容器云技术的主流方式有两种,第一种是购买云厂商的容器云集群服务,第二种则是购买硬件设备用户自行搭建。虽然上述方式各有优点,但存在成本高、技术门槛高的缺陷。
针对上述问题,本申请实施例提供了一种集群资源自动伸缩方法,能够根据业务流量情况自动扩容或者缩容,提高运维效率,节约资源,灵活控制成本。为了便于理解本申请实施例方案,以下结合附图详细描述本申请实施例的技术方案。
请参阅图1,一种集群资源自动伸缩方法,包括如下步骤:
步骤S11、获取来自云端的伸缩组,伸缩组配置有启动配置和告警触发策略。
要说明的是,云端可以分为公用云和私有云,用户可以根据自己选择合适的云端,但考虑到成本原因,优选采用公用云。伸缩组是实现扩容以及缩容的重要单元,伸缩组配置有启动配置和告警触发策略,启动配置是用户自行规定的所需要创建的云端服务器的各项硬件性能参数,例如启动配置包括镜像文件、系统盘内存大小、数据盘大小、CPU类型、地域等参数指标,当伸缩组创建云端服务器时,创建出来的云端服务器的各项硬件参数指标等于启动配置。而告警触发策略则是规定当需要扩容时需要云端利用伸缩组按照启动配置创建出几台数量的云端服务器,告警触发策略是针对扩容设定的,对于缩容,云端会按照内部规定每次请求关闭一台云端服务器。
还要说明的是,不管是公用云还是私有云,其内部都会有配套的监控性能,监控创建出来的云端服务器是否有存在超负荷或者闲置的状态,若云端服务器处于超负荷状态,则云端还内部自行创建出新的云端服务器,若云端服务器处于闲置状态,则云端内部自行删除掉云端服务器。但由于云端监控的只是云端服务器的状态,无法监控集群资源内的资源使用率情况,若云端服务器在没有超负荷的状态下运行着某项重要服务,此时若云端判定云端服务器可以进行删除,则运行着重要服务的云端服务器则会被删除,着对于用户而言是不利的,因此,为了不让云端自主创建或者删除云端服务器,通过把告警触发策略的触发值设定成最高值,就能够让云端永远也不会自主进行扩容或者缩容,而是根据外部输入的请求指令来决定到底是创建还是删除云端服务器。
步骤S12、设定伸缩参数项,伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定扩容阈值以及缩容阈值,同时选定相应的告警触发策略作为扩容策略。
要说明的是,获取到云端的伸缩组后,则可以设定相应的伸缩参数项,伸缩参数项即扩容或缩容参数项,伸缩参数项包含扩容阈值、扩容策略以及缩容阈值,扩容阈值以及缩容阈值用户可以根据实际情况进行灵活设定,扩容策略则是对应告警触发策略。
还要说明的是,为了增加缩容的灵活性以及针对性,伸缩参数项还可以包括白名单,可将已创建好的或者正在使用的云端服务器加入至白名单中,被加入至白名单的云端服务器无法被删除。白名单的好处在于当某个云端服务器运行着重要服务时,且此云端服务器没有处于超负荷状态,为了避免云端因触发缩容操作而把此云端服务器删除,把此云端服务器加入至白名单,即使后续云端触发缩容操作,云端也不可能会将此云端服务器选择删除,因此,白名单的设定可以提高对集群资源缩容的灵活性以及针对性。
步骤S13、实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,生成当前资源使用率值。
进一步地,在其中一个实施例中,步骤S13的具体操作为:
步骤S131、实时接收来自集群资源的请求指令,请求指令由集群资源的弹性伸缩机制在增加或者删除Pod时触发容器PostStart钩子或者容器PreStop钩子时生成;
步骤S132、根据请求指令对集群资源进行资源使用率扫描,生成生成当前资源使用率值。
要说明的是,完成伸缩参数项的配置后,等待来自集群资源的请求指令,根据请求指令来判定是否对集群资源进行资源使用率进行扫描,若扫描,则会对应生成当前资源使用率值,当前资源使用率值包括两个值,一个是当前CPU资源使用率值,另一个是当前内存资源使用率值。若不扫描,则等待下一个请求指令。
还要说明的是,实时接收请求指令并不意味着每时每刻都在接收,用户可以自行设定接收时间间隔,例如可以设定成每间隔30秒接收一次请求指令;又如可以设定成每间隔40秒。
步骤S14、根据当前资源使用率值判定是否请求云端利用伸缩组来创建或者删除云端服务器。
进一步地,在其中一个实施例中,步骤S14的具体操作为:
步骤S141、若当前资源使用率值大于扩容阈值,请求云端利用伸缩组按照扩容策略来创建云端服务器,创建的云端服务器会自动加入至集群资源内;
步骤S142、若当前资源使用率值小于缩容阈值,请求云端利用伸缩组按照创建时间的先后顺序来删除的云端服务器。
要说明的是,由于当前资源使用率值包括当前CPU资源使用率值和当前内存资源使用率值,只要满足当前CPU资源使用率值或者当前内存资源使用率值当中的一个大于扩容阈值或者小于缩容阈值时就可以进行扩容或者缩容。即当当前CPU资源使用率值或者当前内存资源使用率值当中的一个大于扩容阈值时,请求云端利用伸缩组按照扩容策略来创建云端服务器,创建的云端服务器会自动加入至集群资源内。当当前CPU资源使用率值或者当前内存资源使用率值当中的一个小于缩容阈值时,则请求云端利用伸缩组按照创建时间的先后顺序来删除的云端服务器。
还要说明的是,云端利用伸缩组删除云端服务器时,是按照云端服务器的创建时间先后顺序进行删除。例如,云端服务器A的创建时间是2021年9月10日,云端服务器B的创建时间是2021年9月11日,则在缩容的过程中,会优先把云端服务器A选择成首选的删除对象进行删除。
步骤S15、生成用户通知,把用户通知发送至终端。
要说明的是,成功完成扩容或者缩容操作后,会生成用户通知,把用户通知发送至终端提示用户。
本申请的方法,预先获取来自云端层创建并配置好伸缩组,内部设定好相应的伸缩参数项,随后实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,依据当前资源使用率值判定是否请求云端利用伸缩组来创建还是删除云端服务器,最后通知终端。通过上述方法,能够在业务流量繁忙的情况下,自动请求云端来创建云端服务器,让新创建的云端服务器自动加入本地服务集群实现扩容,等到流量低峰段在请求云端删除掉部分云端服务器,以此来提高运维效率。此外,由于本申请无须额外购买硬件设备来搭建服务器,而是依靠云端创建的云端服务器来实现扩容或者缩容,能够极大地降低运维成本,实现灵活控制成本的目的。
请参阅图3,本申请的基于集群资源自动伸缩系统10的集群资源自动伸缩方法,该系统包括云端、集群资源自动伸缩装置、集群资源及终端。该方法包括:
步骤S1001、云端用于创建伸缩组,伸缩组配置有有启动配置和告警触发策略。
要说明的是,云端可以是公有云也可以是私有云,云端创建伸缩组,伸缩组是云端用于创建云端服务器的关键单元,其内配置有启动配置和告警触发策略,启动配置是伸缩组创建云端服务器参照的各项硬件参数表,而告警触发策略则是规定当需要扩容时需要云端利用伸缩组按照启动配置创建出几台数量的云端服务器,告警触发策略是针对扩容设定的,对于缩容,云端会按照内部规定每次请求关闭一台云端服务器。
步骤S1002、集群资源自动伸缩装置用于设定伸缩参数项,伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定扩容阈值以及缩容阈值,同时选定相应的告警触发策略分配至扩容策略;实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,生成当前资源使用率值;根据当前资源使用率值判定是否请求云端利用伸缩组来创建或者删除云端服务器;用于生成用户通知,把用户通知发送至终端。
要说明的是,集群资源自动伸缩装置是实现集群资源扩容或者缩容的核心部分。
步骤S1003、集群资源用于集群资源用于实时向集群资源自动伸缩装置发送的请求指令。
要说明的是,集群资源的基本结构是一台中控控制器及若干物理服务器,每一物理服务器均与中控控制器通讯连接,中控控制器是作为集群资源的核心者,负责对每一物理服务器的控制,而物理服务器上面运行有各种各样的程序,用于提供给客户某项服务。
步骤S1004、终端用于接收集群资源自动伸缩装置发送的用户通知。
要说明的是,终端的类型有很多,例如终端可以是电脑、手机、企业微信等。应当理解,终端是离用户最近的点,当完成相应的扩容以及缩容操作时,用户通知就是从终端显示告知用户。
本申请的方法,通过集群资源自动伸缩装置结合云端和集群资源的方式,利用集群资源自动伸缩装置作为监控以及扫描集群资源当前资源使用率的装置,当集群资源需要进行扩容时,集群资源自动伸缩装置请求云端创建出新的云端服务器自动加入至集群资源内,从而缓解流量高峰时段。当集群资源需要缩容时,集群资源自动伸缩装置请求云端删除部分云端服务器,以此来释放掉闲置资源。通过上述方法,用户无须再额外购买硬件设备来搭建集群资源,能够极大地降低运维成本,同时本申请的方法灵活性也非常高。
以上提供了一种集群资源自动伸缩方法,请参阅图2,本申请提供一种集群资源自动伸缩装置800,包括获取模块810、设定模块820、扫描模块830、请求模块840及通知模块850。
获取模块810用于获取来自云端的伸缩组,伸缩组配置有启动配置和告警触发策略。
设定模块820用于设定伸缩参数项,伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定扩容阈值以及缩容阈值,同时选定相应的告警触发策略作为扩容策略。
伸缩参数项包含扩容阈值、扩容策略以及缩容阈值,扩容阈值以及缩容阈值。为了增加缩容的灵活性以及针对性,伸缩参数项还可以包括白名单,将已创建好的或者正在使用的云端服务器加入至白名单中,被加入至白名单的云端服务器无法被删除。白名单可以提高对集群资源缩容的灵活性以及针对性。
扫描模块830用于实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,生成当前资源使用率值。
要说明的是,当前资源使用率值包括两个值,一个是当前CPU资源使用率值,另一个是当前内存资源使用率值。
请求模块840用于根据当前资源使用率值判定是否请求云端利用伸缩组来创建或者删除云端服务器。
由于当前资源使用率值包括当前CPU资源使用率值和当前内存资源使用率值,只要满足当前CPU资源使用率值或者当前内存资源使用率值当中的一个大于扩容阈值或者小于缩容阈值时就可以进行扩容或者缩容。即当当前CPU资源使用率值或者当前内存资源使用率值当中的一个大于扩容阈值时,请求云端利用伸缩组按照扩容策略来创建云端服务器,创建的云端服务器会自动加入至集群资源内。当当前CPU资源使用率值或者当前内存资源使用率值当中的一个小于缩容阈值时,则请求云端利用伸缩组按照创建时间的先后顺序来删除的云端服务器。
通知模块850用于生成用户通知,把用户通知发送至终端。
本申请的集群资源自动伸缩装置800,通过获取模块810获取云端的伸缩组,利用设定模块820设定好伸缩参数项,扫描模块830实时获取来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,对扫描得到的当前资源使用率值进行阈值比对产生比对结果,请求模块840依据比对结果来决定请求云端是扩容还是缩容,最后通知模块850生成用户通知提示用户。本申请的装置能够在业务流量繁忙的情况下,通过请求云端来创建云端服务器,让新创建的云端服务器自动加入本地服务集群实现扩容,等到流量低峰段在请求云端删除掉部分云端服务器,以此来提高运维效率。此外,由于本申请无须额外购买硬件设备来搭建服务器,而是依靠云端创建的云端服务器来实现扩容或者缩容,能够极大地降低运维成本,实现灵活控制成本的目的。
请参阅图4,本申请提供一种集群资源自动伸缩系统10,包括云端700、集群资源自动伸缩装置800、集群资源900及终端1000。
云端700用于创建伸缩组,伸缩组配置有有启动配置和告警触发策略。
伸缩参数项即扩容或缩容参数项,伸缩参数项包含扩容阈值、扩容策略以及缩容阈值,扩容阈值以及缩容阈值用户可以根据实际情况进行灵活设定,扩容策略则是对应告警触发策略。
为了增加缩容的灵活性以及针对性,伸缩参数项还可以包括白名单,可将已创建好的或者正在使用的云端服务器加入至白名单中,被加入至白名单的云端服务器无法被删除。白名单的好处在于当某个云端服务器运行着重要服务时,且此云端服务器没有处于超负荷状态,为了避免云端因触发缩容操作而把此云端服务器删除,把此云端服务器加入至白名单,即使后续云端触发缩容操作,云端也不可能会将此云端服务器选择删除,因此,白名单的设定可以提高对集群资源缩容的灵活性以及针对性。
集群资源自动伸缩装置800用于获取来自云端700的伸缩组;设定伸缩参数项,伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定扩容阈值以及缩容阈值,同时选定相应的告警触发策略作为扩容策略;实时接收来自集群资源的请求指令,根据请求指令对集群资源进行资源使用率扫描,生成当前资源使用率值;根据当前资源使用率值判定是否请求云端利用伸缩组来创建或者删除云端服务器;生成用户通知,把用户通知发送至终端。
要说明的是,集群资源自动伸缩装置800是实现集群资源扩容或者缩容的核心部分。
在本申请中,请参阅图3,集群资源自动伸缩装置800包括获取模块810、设定模块820、扫描模块830、请求模块840及通知模块850。获取模块810用于获取来自云端700的伸缩组,伸缩组配置有启动配置和告警触发策略,启动配置内规定是创建出来的云端服务器的各项硬件性能参数,而告警触发策略则是告诉伸缩组该创建多少数量的云端服务器。设定模块820用于设定伸缩参数项,伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定扩容阈值以及缩容阈值,同时选定相应的告警触发策略分配至扩容策略,扩容阈值以及缩容阈值的设定值用户可以自行设定,扩容策略对应的是由云端获取到的告警触发策略。
集群资源900用于实时向集群资源自动伸缩装置800发送的请求指令。
终端1000用于接收集群资源自动伸缩装置800发送的用户通知。
本申请的系统,通过集群资源自动伸缩装置800结合云端700和集群资源900的方式,利用集群资源自动伸缩装置800作为监控以及扫描集群资源900当前资源使用率的装置,当集群资源900需要进行扩容时,集群资源自动伸缩装置800请求云端700创建出新的云端服务器自动加入至集群资源900内,从而缓解流量高峰时段。当集群资源900需要缩容时,集群资源自动伸缩装置800请求云端700删除部分云端服务器,以此来释放掉闲置资源。通过上述系统,用户无须再额外购买硬件设备来搭建集群资源900,能够极大地降低运维成本,同时本申请的系统10灵活性也非常高。
下面结合一个具体的应用场景来说明本申请的技术方案:
云端700采用腾讯云,集群自动伸缩装置800采用K8S集群自动伸缩装置,集群资源900则是K8S集群资源,终端1000采用企业微信。
先在腾讯云内创建伸缩组,同时为伸缩组配置有启动配置和告警触发策略。K8S集群自动伸缩装置内设定好伸缩参数项,当K8S集群资源的弹性伸缩机制(Horizontal PodAutoscaling,简称HPA)在增加或者删除Pod时对应触发容器PostStart钩子或者容器PreStop钩子时会生成请求指令,K8S集群自动伸缩装置接收到请求指令后会扫描K8S集群资源内的当前资源使用率值,当前资源使用率值包括当前CPU使用率值及当前内存资源使用率值,若当前内存资源使用率值大于扩容阈值,则K8S集群自动伸缩装置请求腾讯云利用伸缩组创建新的云端服务器来面对流量高峰,若当前内存资源使用率值小于缩容阈值时,则K8S集群自动伸缩装置请求腾讯云利用伸缩组删除部分云端服务器来释放闲置资源。当完成扩容或者缩容操作后,K8S集群自动伸缩装置会生成用户通知发送至企业微信,企业微信的用户会接收到用户通知获知已完成扩容或者缩容操作。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种集群资源自动伸缩方法,其特征在于,包括:
获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
生成用户通知,把所述用户通知发送至终端。
2.根据权利要求1所述的集群资源自动伸缩方法,其特征在于,所述根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器包括:
若所述当前资源使用率值大于所述扩容阈值,请求所述云端利用所述伸缩组按照所述扩容策略来创建所述云端服务器,创建的所述云端服务器自动加入至所述集群资源内;
若所述当前资源使用率值小于缩容阈值,请求所述云端利用所述伸缩组按照创建时间的先后顺序来删除的所述云端服务器。
3.根据权利要求2所述的集群资源自动伸缩方法,其特征在于,由所述云端利用所述伸缩组创建的所述云端服务器是所述伸缩组根据所述扩容策略来对应选择创建所述云端服务器的数量,其中创建出来的所述云端服务器的各项硬件参数指标等于所述启动配置。
4.根据权利要求1所述的集群资源自动伸缩方法,其特征在于,所述告警触发策略的触发阈值为最高值。
5.根据权利要求1所述的集群资源自动伸缩方法,其特征在于,所述实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值包括:
实时接收来自集群资源的所述请求指令,所述请求指令由所述集群资源的弹性伸缩机制在增加或者删除Pod时触发容器PostStart钩子或者容器PreStop钩子时生成;
根据所述请求指令对所述集群资源进行资源使用率扫描,生成所述生成当前资源使用率值。
6.根据权利要求5所述的集群资源自动伸缩方法,其特征在于,所述当前资源使用率值包括当前CPU资源使用率值和当前内存资源使用率值。
7.根据权利要求1所述的集群资源自动伸缩方法,其特征在于,所述伸缩参数项还包括白名单,将已创建好的或者正在使用的所述云端服务器加入至所述白名单中。
8.一种集群资源自动伸缩装置,其特征在于,包括:
获取模块,用于获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定模块,用于设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
扫描模块,用于实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
请求模块,用于根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
通知模块,用于生成用户通知,把所述用户通知发送至终端。
9.一种集群资源自动伸缩系统,其特征在于,包括云端、集群资源自动伸缩装置、集群资源及终端;
所述云端用于创建伸缩组,所述伸缩组配置有有启动配置和告警触发策略;
所述集群资源自动伸缩装置用于获取来自所述云端的所述伸缩组;设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;实时接收来自所述集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;生成用户通知,把所述用户通知发送至所述终端;
所述集群资源用于实时向所述集群资源自动伸缩装置发送的所述请求指令;
所述终端用于接收所述集群资源自动伸缩装置发送的所述用户通知。
10.根据权利要求9所述的集群资源自动伸缩系统,其特征在于,包括:
获取模块,用于获取来自云端的伸缩组,所述伸缩组配置有启动配置和告警触发策略;
设定模块,用于设定伸缩参数项,所述伸缩参数项包括扩容阈值、扩容策略以及缩容阈值,设定所述扩容阈值以及缩容阈值,同时选定相应的所述告警触发策略作为所述扩容策略;
扫描模块,用于实时接收来自集群资源的请求指令,根据所述请求指令对所述集群资源进行资源使用率扫描,生成当前资源使用率值;
请求模块,用于根据所述当前资源使用率值判定是否请求所述云端利用所述伸缩组来创建或者删除云端服务器;
通知模块,用于生成用户通知,把所述用户通知发送至终端。
CN202111318247.4A 2021-11-09 2021-11-09 集群资源自动伸缩方法、装置及系统 Pending CN116107687A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111318247.4A CN116107687A (zh) 2021-11-09 2021-11-09 集群资源自动伸缩方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111318247.4A CN116107687A (zh) 2021-11-09 2021-11-09 集群资源自动伸缩方法、装置及系统

Publications (1)

Publication Number Publication Date
CN116107687A true CN116107687A (zh) 2023-05-12

Family

ID=86254813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111318247.4A Pending CN116107687A (zh) 2021-11-09 2021-11-09 集群资源自动伸缩方法、装置及系统

Country Status (1)

Country Link
CN (1) CN116107687A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116893884A (zh) * 2023-09-11 2023-10-17 中移(苏州)软件技术有限公司 容器化应用服务资源扩缩容方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116893884A (zh) * 2023-09-11 2023-10-17 中移(苏州)软件技术有限公司 容器化应用服务资源扩缩容方法、装置、设备及存储介质
CN116893884B (zh) * 2023-09-11 2023-12-12 中移(苏州)软件技术有限公司 容器化应用服务资源扩缩容方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN110602087B (zh) 智能投屏方法、装置、智能终端及服务器
CN106302632B (zh) 一种基础镜像的下载方法以及管理节点
CN105357296A (zh) 一种Docker云平台下弹性缓存系统
CN112165520B (zh) 投屏控制方法、投屏接收端及存储介质
CN101335641A (zh) 一种升级设备的方法、装置及系统
CN110471749B (zh) 任务处理方法、装置、计算机可读存储介质和计算机设备
KR20090123474A (ko) 복수의 단말 장치의 원격 관리 시스템과 방법, 복수의 단말장치 및 복수의 관리 장치와 접속하는 인터페이스 장치와방법, 및, 그 방법들을 실행시키기 위한 프로그램이 기록된컴퓨터로 판독 가능한 기록 매체
CN102055644A (zh) 分布式目录服务系统中负载管理的方法、装置和系统
CN116107687A (zh) 集群资源自动伸缩方法、装置及系统
CN109947081B (zh) 网联车辆控制方法及装置
CN113259493B (zh) 基于Ukey机柜的Ukey信息获取方法、装置、设备和存储介质
US20150242177A1 (en) Image forming system, relay server, communication controlling method and non-transitory computer readable recording medium
CN113037851B (zh) 一种基于存储实现的针对云手机系统超分的方法
CN117221326A (zh) 软件负载均衡调度方法、系统、电子设备和存储介质
CN112333284A (zh) 基于5g智能网关数据传输方法、系统及存储介质
CN115981670A (zh) 容器集群业务部署方法、装置、服务器及存储介质
CN110196842A (zh) 文件存储方法、管理方法、装置、服务器及存储介质
RU2522995C2 (ru) Способ и устройство создания одноранговой группы в одноранговом приложении и способ применения одноранговой группы
WO2016173169A1 (zh) 一种连接状态控制方法、装置及系统
CN110099208B (zh) 一种视频监控系统中跨级跨域升级摄像机的方法及装置
CN111479137B (zh) 线路地址的提供方法、装置、服务器及存储介质
CN110798512A (zh) 一种集中式数据推送方法、智能终端及存储介质
CN111797169A (zh) 数据存证方法、设备和存储介质
CN110866027A (zh) 一种提高区块链查询效率的系统及方法
CN114726806B (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