CN109189568A - 一种集群资源管理方法及装置 - Google Patents

一种集群资源管理方法及装置 Download PDF

Info

Publication number
CN109189568A
CN109189568A CN201811024083.2A CN201811024083A CN109189568A CN 109189568 A CN109189568 A CN 109189568A CN 201811024083 A CN201811024083 A CN 201811024083A CN 109189568 A CN109189568 A CN 109189568A
Authority
CN
China
Prior art keywords
resource
namespace
node
limit
container
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
CN201811024083.2A
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.)
Shandong Wave Cloud Mdt Infotech Ltd
Original Assignee
Shandong Wave Cloud Mdt Infotech 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 Shandong Wave Cloud Mdt Infotech Ltd filed Critical Shandong Wave Cloud Mdt Infotech Ltd
Priority to CN201811024083.2A priority Critical patent/CN109189568A/zh
Publication of CN109189568A publication Critical patent/CN109189568A/zh
Pending legal-status Critical Current

Links

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Abstract

本发明提供了一种集群资源管理方法及装置,预先搭建Kubernetes平台,还包括:在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;设置命名空间的空间数量和所述至少两个节点中的每一个所述节点对应的预留资源;在所述集群中创建所述空间数量个命名空间;确定每一个所述节点对应的节点资源;根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。本方案能够提高集群运行的稳定性。

Description

一种集群资源管理方法及装置
技术领域
本发明涉及集群管理技术领域,特别涉及一种集群资源管理方法及装置。
背景技术
Kubernetes是一个基于容器技术的开放平台,在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性和高可用性。
现有技术中,kubernetes的集群资源是有限的,需要合理规划使用,否则会造成集群资源不足或资源分配不合理等情况,最终影响集群的使用。因此,需要提供一种集群资源管理方法及装置,合理分配集群的资源,提高集群运行的稳定性。
发明内容
本发明实施例提供了一种集群资源管理方法及装置,能够提高集群运行的稳定性。
第一方面,本发明实施例提供了一种集群资源管理方法,预先搭建Kubernetes平台,还包括:
在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;
设置命名空间的空间数量和所述至少两个节点中的每一个所述节点对应的预留资源;
在所述集群中创建所述空间数量个命名空间;
确定每一个所述节点对应的节点资源;
根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
优选地,
在所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源之前,进一步包括:
设置每一个所述节点对应的驱逐资源;
则,
所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
优选地,
所述通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
优选地,
所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源,包括:
针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
优选地,
在所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源之前,进一步包括:
确定外部是否添加PodResource对象;
如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;
否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
第二方面,本发明实施例提供了一种集群资源管理装置,包括:
创建管理单元,用于预先搭建Kubernetes平台;在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;在所述集群中创建所述空间数量个命名空间;
节点管理单元,用于确定所述创建管理单元创建的每一个所述节点对应的节点资源;根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
容器管理单元,根据所述节点管理单元设置的每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
优选地,
所述节点管理单元,进一步用于设置每一个所述节点对应的驱逐资源;通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
优选地,
所述节点管理单元,用于通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
优选地,
所述容器管理单元,用于针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
优选地,
所述容器管理单元,进一步用于确定外部是否添加PodResource对象;如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
在本发明实施例中,通过在搭建的Kubernetes平台中创建集群,并设置命名空间的空间数量以及设置集群中每一个节点的预留资源,可以在集群中创建命名空间后,根据每一个节点对应的节点资源、预留资源和命名空间的空间数量,设置各个命名空间的限额资源,再根据命名空间的限额资源,设置命名空间中的容器组的容器资源,即可从资源预留、资源限额角度限制对kubernetes集群资源的无限制占用,即保证了集群资源的合理分配,又能提高集群运行的稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种集群资源管理方法的流程图;
图2是本发明一实施例提供的另一种集群资源管理方法的流程图;
图3是本发明一实施例提供的一种集群资源管理装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种集群资源管理方法,包括:
步骤101:预先搭建Kubernetes平台;
步骤102:在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;
步骤103:设置命名空间的空间数量和所述至少两个节点中的每一个所述节点对应的预留资源;
步骤104:在所述集群中创建所述空间数量个命名空间;
步骤105:确定每一个所述节点对应的节点资源;
步骤106:根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
步骤107:根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
在本发明实施例中,通过在搭建的Kubernetes平台中创建集群,并设置命名空间的空间数量以及设置集群中每一个节点的预留资源,可以在集群中创建命名空间后,根据每一个节点对应的节点资源、预留资源和命名空间的空间数量,设置各个命名空间的限额资源,再根据命名空间的限额资源,设置命名空间中的容器组的容器资源,即可从资源预留、资源限额角度限制对kubernetes集群资源的无限制占用,即保证了集群资源的合理分配,又能提高集群运行的稳定性。
在本发明一实施例中,在所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源之前,进一步包括:
设置每一个所述节点对应的驱逐资源;
则,
所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
在本发明实施例中,除了给每一个节点设置对应的预留资源外,还需要设置对应的驱逐资源,避免集群占满节点资源,导致管理人员无法登录节点进行管理操作,从而保证节点的高可用性。通过ResourceQuota的配置,根据每一个节点对应的驱逐资源、节点资源、预留资源以及空间数量,即可设置每个命名空间的限额资源,以限制命名空间最大的CPU和内存。
在本发明一实施例中,所述通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
在本发明实施例中,在确定每一个命名空间的限额资源时,可以对每一个节点对应的节点资源进行求和,并减去每一个节点资源对应的预留资源和驱逐资源,即可获得集群所支配的资源,再将集群所能支配的资源与命名空间的空间数量相除,即可获得每一个命名空间的限额资源。
在本发明一实施例中,所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源,包括:
针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
在本发明实施例中,在确定每一个命名空间的限额资源后,即可通过LimitRange对象给命名空间中的容器组设置默认最大CPU和内存,即将命名空间的限额资源作为容器组的容器资源。
在本发明一实施例中,在所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源之前,进一步包括:
确定外部是否添加PodResource对象;
如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;
否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
在本发明实施例中,在限制命名空间中的容器组的占用资源之前,需要先确定外部是否添加PodResource对象,如果是,则可以通过PodResource对象给容器组设置需求资源和限制资源,即给容器组增加request和limit控制,限制容器组的资源占用情况,否则,可以给命名空间中的容器组设置默认最大的CPU和内存。
为了更加清楚的说明本发明的技术方案及优点,下面对本发明实施例提供的一种集群资源管理方法进行详细说明,如图2所示,具体可以包括以下步骤:
步骤201,预先搭建Kubernetes平台。
具体地,Kubernetes平台为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,可以提高大规模容器集群管理的便捷性和高可用性。
步骤202,在Kubernetes平台中创建集群,其中,集群,包括:至少两个节点。
具体地,如需通过Kubernetes平台对集群资源限额进行管理,需要在Kubernetes平台中创建集群。
举例来说,在预先搭建的Kubernetes平台中创建由节点A、节点B和节点C组成的集群。
步骤203,设置命名空间的空间数量、每一个节点对应的预留资源和对应的驱逐资源。
具体地,用户可以根据实际需求设置集群中命名空间的空间数量,以使按照空间数量创建命名空间,而给每一个节点设置对应的预留资源,可以使得管理人员利用每个节点对应的预留资源进行管理操作,而设置驱逐资源可以在集群中剩余的资源大于预留资源小于等于预留资源与驱逐起源之和时,可以释放至少一个节点的资源,以保障管理人员能够利用预留资源登录节点对其管理,从而保证节点的高可用性。
可以理解的是,用户还可以根据需求设置每个节点最多支持的容器组的个数,例如,节点A支持容器组的数量为6个,节点B支持容器组的数量为2个。
举例来说,设置命名空间的空间数量为2;
节点A、节点B和节点C对应的预留资源均为0.5核CPU,2G内存,驱逐资源均为0.5核CPU,1G内存。
步骤204,在集群中创建空间数量个命名空间。
举例来说,在集群中创建2个命名空间,分别为命名空间D,命名空间E。
步骤205,确定每一个节点对应的节点资源。
具体地,每一个节点都有固定的节点资源,即固定的CPU和内存,确定每个节点对应的节点资源,以便于根据节点资源、驱逐资源和预留资源,确定Kubernetes平台的可用资源。
举例来说,确定节点A对应的节点资源为8核CPU,10G内存;
确定节点B对应的节点资源为10核CPU,16G内存;
确定节点C对应的节点资源为6核CPU,8G内存。
步骤206,通过ResourceQuota对象根据各个驱逐资源、各个节点资源、每一个预留资源和空间数量,设置每一个命名空间的限额资源。
具体地,通过ResourceQuota对象根据以下公式,可以确定每一个命名空间的限额资源,
其中,R表征每一个命名空间的限额资源,Jn表征第n个节点对应的节点资源,Yn表征第n个节点对应的预留资源,Qn表征第n个节点对应的驱逐资源,k表征所述空间数量。
每一个节点对应的节点资源之和,减去每一个预留资源之和,再减去与每一个驱逐资源之和,可获得Kubernetes平台的可用资源,再除以空间数量,即可确定每个命名空间的限额资源,即限制命名空间占用的最大的CPU和内存。
举例来说,根据上述公式可以确定命名空间D和命名空间E的限额资源均为10.5核CPU,12.5G内存。
步骤207,确定外部是否添加PodResource对象,如果是,执行步骤208,否则,执行步骤209。
具体地,在设置命名空间中的容器组的资源上限时,需要先确定外部(例如,用户)是否给容器组增加PodResource对象,如果是,则利用PodResource对象设置容器组的request和limit控制,否则,需要给命名空间增加LimitRange对象,以使通过LimitRange对象对没有设置request和limit的容器组添加默认limit。
步骤208,通过PodResource对象为每一个命名空间中的容器组设置需求资源和限制资源。
具体地,用户可以通过配置PodResource对象,给容器组增加request和limit控制,限制pod的资源占用情况。
步骤209,针对每一个命名空间,通过LimitRange对象将命名空间的限额资源设置为命名空间中的容器组的容器资源。
具体地,对没有设置limit的容器组,需要通过LimitRange对象给命名空间中的容器组设置默认最大CPU和内存。
综上可见,通过资源预留、资源限额角度限制对Kubernetes集群资源的无限制占用,既保证了集群的稳定性,又保证了集群资源的合理分配,通过对命名空间的合理分配资源限额,保证了多租户用户的资源隔离,保证了集群资源的合理分配。主要从以下步骤体现:
(一)节点资源限制
a)节点的资源限制通过资源预留和容器驱逐两种策略保证节点的高可用,并且可以设置每个节点最多支持的容器个数,这个数据在集群创建的时候可以由用户指定。
b)资源预留包括:kube-reserved和system-reserved,分别给节点的Kubelet和操作系统预留部分CPU和内存。
c)容器驱逐策略配置:当节点上内存大于预留资源,小于预留资源与驱逐资源之和时,需要驱逐容器信息,释放容器资源。保证当前节点的稳定。
(二)ResourceQuota
a)要想维持k8s集群的高可用,必须给k8s集群增加资源限额。
b)资源限额通过给每个命名空间增加Resourcequota实现。
(三)LimitRange&PodResource
a)给每个命名空间增加Limitrange对象,对没有设置limit的容器增加默认limit。
b)通过Resourcequota限制容器必须设置Resource信息。
如图3所示,本发明实施例提供了一种集群资源管理装置,包括:
创建管理单元301,用于预先搭建Kubernetes平台;在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;在所述集群中创建所述空间数量个命名空间;
节点管理单元302,用于确定所述创建管理单元301创建的每一个所述节点对应的节点资源;根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
容器管理单元303,根据所述节点管理单元302设置的每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
在本发明实施例中,通过在搭建的Kubernetes平台中创建集群,并设置命名空间的空间数量以及设置集群中每一个节点的预留资源,可以在集群中创建命名空间后,根据每一个节点对应的节点资源、预留资源和命名空间的空间数量,设置各个命名空间的限额资源,再根据命名空间的限额资源,设置命名空间中的容器组的容器资源,即可从资源预留、资源限额角度限制对kubernetes集群资源的无限制占用,即保证了集群资源的合理分配,又能提高集群运行的稳定性。
在本发明一实施例中,所述节点管理单元,进一步用于设置每一个所述节点对应的驱逐资源;通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
在本发明一实施例中,所述节点管理单元,用于通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
在本发明一实施例中,所述容器管理单元,用于针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
在本发明一实施例中,所述容器管理单元,进一步用于确定外部是否添加PodResource对象;如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
本发明各个实施例至少具有如下有益效果:
1、在本发明一实施例中,通过在搭建的Kubernetes平台中创建集群,并设置命名空间的空间数量以及设置集群中每一个节点的预留资源,可以在集群中创建命名空间后,根据每一个节点对应的节点资源、预留资源和命名空间的空间数量,设置各个命名空间的限额资源,再根据命名空间的限额资源,设置命名空间中的容器组的容器资源,即可从资源预留、资源限额角度限制对kubernetes集群资源的无限制占用,即保证了集群资源的合理分配,又能提高集群运行的稳定性。
2、在本发明一实施例中,除了给每一个节点设置对应的预留资源外,还需要设置对应的驱逐资源,避免集群占满节点资源,导致管理人员无法登录节点进行管理操作,从而保证节点的高可用性。通过ResourceQuota的配置,根据每一个节点对应的驱逐资源、节点资源、预留资源以及空间数量,即可设置每个命名空间的限额资源,以限制命名空间最大的CPU和内存。
3、在本发明一实施例中,在确定每一个命名空间的限额资源时,可以对每一个节点对应的节点资源进行求和,并减去每一个节点资源对应的预留资源和驱逐资源,即可获得集群所支配的资源,再将集群所能支配的资源与命名空间的空间数量相除,即可获得每一个命名空间的限额资源。
4、在本发明一实施例中,在确定每一个命名空间的限额资源后,即可通过LimitRange对象给命名空间中的容器组设置默认最大CPU和内存,即将命名空间的限额资源作为容器组的容器资源。
5、在本发明一实施例中,在限制命名空间中的容器组的占用资源之前,需要先确定外部是否添加PodResource对象,如果是,则可以通过PodResource对象给容器组设置需求资源和限制资源,即给容器组增加request和limit控制,限制容器组的资源占用情况,否则,可以给命名空间中的容器组设置默认最大的CPU和内存。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种集群资源管理方法,其特征在于,预先搭建Kubernetes平台,还包括:
在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;
设置命名空间的空间数量和所述至少两个节点中的每一个所述节点对应的预留资源;
在所述集群中创建所述空间数量个命名空间;
确定每一个所述节点对应的节点资源;
根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
2.根据权利要求1所述的方法,其特征在于,
在所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源之前,进一步包括:
设置每一个所述节点对应的驱逐资源;
则,
所述根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
3.根据权利要求2所述的方法,其特征在于,
所述通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源,包括:
通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
4.根据权利要求1至3中任一所述的方法,其特征在于,
所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源,包括:
针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
5.根据权利要求4所述的方法,其特征在于,
在所述根据每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源之前,进一步包括:
确定外部是否添加PodResource对象;
如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;
否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
6.一种集群资源管理装置,其特征在于,包括:
创建管理单元,用于预先搭建Kubernetes平台;在所述Kubernetes平台中创建集群,其中,所述集群,包括:至少两个节点;在所述集群中创建所述空间数量个命名空间;
节点管理单元,用于确定所述创建管理单元创建的每一个所述节点对应的节点资源;根据确定的各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源;
容器管理单元,根据所述节点管理单元设置的每一个所述命名空间的所述限额资源,设置每一个所述命名空间中的容器组的容器资源。
7.根据权利要求6所述的装置,其特征在于,
所述节点管理单元,进一步用于设置每一个所述节点对应的驱逐资源;通过ResourceQuota对象根据各个所述驱逐资源、各个所述节点资源、每一个所述预留资源和所述空间数量,设置每一个所述命名空间的限额资源。
8.根据权利要求7所述的装置,其特征在于,
所述节点管理单元,用于通过ResourceQuota对象根据以下公式确定每一个所述命名空间的限额资源,
其中,R表征每一个所述命名空间的限额资源,Jn表征第n个所述节点对应的所述节点资源,Yn表征第n个所述节点对应的所述预留资源,Qn表征第n个所述节点对应的驱逐资源,所述k表征所述空间数量。
9.根据权利要求6至8中任一所述的装置,其特征在于,
所述容器管理单元,用于针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
10.根据权利要求9所述的装置,其特征在于,
所述容器管理单元,进一步用于确定外部是否添加PodResource对象;如果是,通过所述PodResource对象为每一个所述命名空间中的所述容器组设置需求资源和限制资源;否则,执行所述针对每一个所述命名空间,通过LimitRange对象将所述命名空间的限额资源设置为所述命名空间中的容器组的容器资源。
CN201811024083.2A 2018-09-04 2018-09-04 一种集群资源管理方法及装置 Pending CN109189568A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811024083.2A CN109189568A (zh) 2018-09-04 2018-09-04 一种集群资源管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811024083.2A CN109189568A (zh) 2018-09-04 2018-09-04 一种集群资源管理方法及装置

Publications (1)

Publication Number Publication Date
CN109189568A true CN109189568A (zh) 2019-01-11

Family

ID=64914331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811024083.2A Pending CN109189568A (zh) 2018-09-04 2018-09-04 一种集群资源管理方法及装置

Country Status (1)

Country Link
CN (1) CN109189568A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110011984A (zh) * 2019-03-19 2019-07-12 西安微电子技术研究所 一种基于rest和rpc的分布式集群系统及方法
CN110032447A (zh) * 2019-04-11 2019-07-19 北京百度网讯科技有限公司 用于分配资源的方法和装置
CN110532059A (zh) * 2019-08-09 2019-12-03 济南浪潮数据技术有限公司 K8s集群管理软件的配额管理方法及装置
CN111813564A (zh) * 2020-09-11 2020-10-23 北京达佳互联信息技术有限公司 集群资源管理方法、装置及容器集群管理系统
CN112019475A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 无服务器架构下的资源访问方法、设备、系统及存储介质
CN112416593A (zh) * 2020-11-30 2021-02-26 北京百度网讯科技有限公司 资源管理方法及装置、电子设备、计算机可读介质
CN112783657A (zh) * 2021-01-29 2021-05-11 紫光云技术有限公司 一种适用于云服务的可动态配置资源限制的方法
CN113986468A (zh) * 2021-11-04 2022-01-28 马上消费金融股份有限公司 一种容器注入方法及装置
CN114185642A (zh) * 2021-11-12 2022-03-15 联奕科技股份有限公司 一种基于容器管理平台的智慧校园开发方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105959138A (zh) * 2016-04-29 2016-09-21 深圳前海大数点科技有限公司 基于云计算的微服务动态部署的系统及方法
CN106815338A (zh) * 2016-12-25 2017-06-09 北京中海投资管理有限公司 一种大数据的实时存储、处理和查询系统
CN107045455A (zh) * 2017-06-19 2017-08-15 华中科技大学 一种基于负载预测的Docker Swarm集群资源调度优化方法
US20170235601A1 (en) * 2015-07-13 2017-08-17 Palo Alto Research Center Incorporated Dynamically adaptive, resource aware system and method for scheduling

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170235601A1 (en) * 2015-07-13 2017-08-17 Palo Alto Research Center Incorporated Dynamically adaptive, resource aware system and method for scheduling
CN105959138A (zh) * 2016-04-29 2016-09-21 深圳前海大数点科技有限公司 基于云计算的微服务动态部署的系统及方法
CN106815338A (zh) * 2016-12-25 2017-06-09 北京中海投资管理有限公司 一种大数据的实时存储、处理和查询系统
CN107045455A (zh) * 2017-06-19 2017-08-15 华中科技大学 一种基于负载预测的Docker Swarm集群资源调度优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WULONGHUI: "《Kubernetes技术分析之资源管理》", 《HTTP://DOCKONE.IO/ARTICLE/581》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110011984A (zh) * 2019-03-19 2019-07-12 西安微电子技术研究所 一种基于rest和rpc的分布式集群系统及方法
CN110011984B (zh) * 2019-03-19 2021-07-06 西安微电子技术研究所 一种基于rest和rpc的分布式集群系统及方法
US11146502B2 (en) 2019-04-11 2021-10-12 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for allocating resource
CN110032447A (zh) * 2019-04-11 2019-07-19 北京百度网讯科技有限公司 用于分配资源的方法和装置
CN112019475A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 无服务器架构下的资源访问方法、设备、系统及存储介质
CN112019475B (zh) * 2019-05-28 2021-12-21 阿里巴巴集团控股有限公司 无服务器架构下的资源访问方法、设备、系统及存储介质
CN110532059A (zh) * 2019-08-09 2019-12-03 济南浪潮数据技术有限公司 K8s集群管理软件的配额管理方法及装置
CN110532059B (zh) * 2019-08-09 2022-06-07 济南浪潮数据技术有限公司 K8s集群管理软件的配额管理方法及装置
CN111813564A (zh) * 2020-09-11 2020-10-23 北京达佳互联信息技术有限公司 集群资源管理方法、装置及容器集群管理系统
CN112416593A (zh) * 2020-11-30 2021-02-26 北京百度网讯科技有限公司 资源管理方法及装置、电子设备、计算机可读介质
CN112416593B (zh) * 2020-11-30 2024-01-12 北京百度网讯科技有限公司 资源管理方法及装置、电子设备、计算机可读介质
CN112783657A (zh) * 2021-01-29 2021-05-11 紫光云技术有限公司 一种适用于云服务的可动态配置资源限制的方法
CN113986468A (zh) * 2021-11-04 2022-01-28 马上消费金融股份有限公司 一种容器注入方法及装置
CN114185642A (zh) * 2021-11-12 2022-03-15 联奕科技股份有限公司 一种基于容器管理平台的智慧校园开发方法及系统
CN114185642B (zh) * 2021-11-12 2023-11-17 联奕科技股份有限公司 一种基于容器管理平台的智慧校园开发方法及系统

Similar Documents

Publication Publication Date Title
CN109189568A (zh) 一种集群资源管理方法及装置
CN111966500B (zh) 资源调度方法、装置、电子设备及存储介质
CN108076156B (zh) 一种基于中国云产品的混合云系统
CN110147411A (zh) 数据同步方法、装置、计算机设备及存储介质
CN106385329B (zh) 资源池的处理方法、装置和设备
CN103366022B (zh) 信息处理系统及其处理方法
CN103729236B (zh) 一种限制云计算用户资源使用额度的方法
CN104038444B (zh) 一种资源分配的方法、设备及系统
JP2013247410A (ja) ネットワーク管理装置、通信システムおよびネットワーク管理方法
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
CN111884890B (zh) 一种时间触发总线规划和调度方法
CN106230986A (zh) 一种基于电力PaaS云平台的资源适配调度系统及方法
CN110209574A (zh) 一种基于人工智能的数据开发系统
US20140122671A1 (en) Method for Assigning Logical Addresses to the Connection Ports of Devices of a Server Cluster, and Corresponding Computer Program and Server Cluster
CN106878382A (zh) 一种分布式仲裁集群中动态改变集群规模的方法及装置
CN107977773A (zh) 一种管理多个云平台的多项目资源额度的方法
CN103024791B (zh) 一种通信测试系统中多业务处理模型及处理方法
CN109101320A (zh) 异构处理器平台融合管理系统
CN105700877A (zh) 一种应用部署方法和装置
CN108696373B (zh) 虚拟资源分配方法、nfvo和系统
CN109189431A (zh) 一种客户端升级方法、装置、设备及可读存储介质
CN105721545B (zh) 一种多层次集群管理实现方法
CN106126319B (zh) 中央处理器资源分配方法和计算节点
CN103501509A (zh) 一种均衡无线网络控制器负载的方法及装置
CN112395269B (zh) MySQL高可用组的搭建方法及装置

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190111

RJ01 Rejection of invention patent application after publication