CN114880068A - 预留资源的管理方法、装置、设备和存储介质 - Google Patents

预留资源的管理方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN114880068A
CN114880068A CN202210306092.0A CN202210306092A CN114880068A CN 114880068 A CN114880068 A CN 114880068A CN 202210306092 A CN202210306092 A CN 202210306092A CN 114880068 A CN114880068 A CN 114880068A
Authority
CN
China
Prior art keywords
resource
application
type
current
resources
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
CN202210306092.0A
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.)
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Information 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 Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Information Technology Co Ltd
Priority to CN202210306092.0A priority Critical patent/CN114880068A/zh
Publication of CN114880068A publication Critical patent/CN114880068A/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/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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供一种预留资源的管理方法、装置、设备和存储介质,涉及到云计算技术领域,所述管理方法包括:获取当前应用的应用类型,所述应用类型包括特定类型;根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;若满足,则将所述当前应用的实例调度到所述当前节点。本公开的技术方案可以较为方便地为特定应用预留资源。

Description

预留资源的管理方法、装置、设备和存储介质
技术领域
本公开涉及云计算技术领域,尤其涉及一种预留资源的管理方法、装置、电子设备和非暂态计算机可读存储介质。
背景技术
在基于Kubernetes的云平台中,物理节点资源可以给操作系统进程预留,也可以给Kubernetes守护进程预留,但是不支持给以pod形式运行的一些特定应用预留。而实际场景中,用户经常需要为Kubernetes集群中部署的特定应用预留资源,以便特定应用随时都有可用资源使用。
相关技术中,在给特定应用预留资源时,规划冗余资源容易造成资源浪费,不便调整集群资源规划,资源抢占对系统稳定性有一定影响。
发明内容
本公开提供一种预留资源的管理方法、装置、电子设备和非暂态计算机可读存储介质,用以解决现有技术中特定应用预留资源较为困难的问题,从而较为方便地为特定应用预留资源。
本公开提供一种预留资源的管理方法,包括:获取当前应用的应用类型,所述应用类型包括特定类型;根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;若满足,则将所述当前应用的实例调度到所述当前节点。
根据本公开提供的预留资源的管理方法,所述应用类型还包括普通类型,所述非预留资源供所述特定类型和所述普通类型的应用使用;若所述当前应用的应用类型为普通类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和最大特定类型应用资源后,是否满足当前应用的实例对所述第一资源的最小资源需求,其中,所述最大特定类型应用资源为以下两个数据的较大值:所述当前节点的第一资源的预留资源和所述当前节点的第一资源的已分配给所有特定类型应用的资源;若所述当前应用的类型为特定类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:判断所述当前节点的第一资源的总可分配资源去除已分配给所有应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
根据本公开提供的预留资源的管理方法,所述应用类型还包括普通类型,所述非预留资源仅提供给所述普通类型的应用使用;若所述当前应用的应用类型为普通类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和预留资源后,是否满足当前应用的实例对所述第一资源的最小资源需求;若所述当前应用的类型为特定类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:判断所述当前节点的第一资源的总可分配资源去除已分配给特定类型应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
根据本公开提供的预留资源的管理方法,所述第一资源包括中央处理器、内存和存储中的任一种。
根据本公开提供的预留资源的管理方法,所述获取当前应用的应用类型之前,所述方法还包括:获取所述当前应用的标注数据;根据所述标注数据确定所述当前应用的应用类型。
根据本公开提供的预留资源的管理方法,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求之前,所述方法还包括:获取用户发送的针对目标节点的资源预留指令;根据所述资源预留指令创建所述目标节点的定制资源数据,所述定制资源数据表征所述目标节点的各个资源的预留资源的大小以及使用权限。
根据本公开提供的预留资源的管理方法,所述根据所述资源预留指令创建所述目标节点的定制资源数据之后,所述方法还包括:根据所述定制资源数据为所述目标节点的各个资源对应增加扩展资源,以进行所述目标节点的各个资源的资源调度。
根据本公开提供的一种预留资源的管理装置,包括:获取单元,用于获取当前应用的应用类型,所述应用类型包括特定类型;判断单元,用于根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;调度单元,用于在满足上述条件时,将所述当前应用的实例调度到所述当前节点。
根据本公开提供的预留资源的管理装置,所述应用类型还包括普通类型,所述非预留资源供所述特定类型和所述普通类型的应用使用;若所述当前应用的应用类型为普通类型,所述判断单元还用于:判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和最大特定类型应用资源后,是否满足当前应用的实例对所述第一资源的最小资源需求,其中,所述最大特定类型应用资源为以下两个数据的较大值:所述当前节点的第一资源的预留资源和所述当前节点的第一资源的已分配给所有特定类型应用的资源;若所述当前应用的类型为特定类型,所述判断单元还用于:判断所述当前节点的第一资源的总可分配资源去除已分配给所有应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
根据本公开提供的预留资源的管理装置,所述应用类型还包括普通类型,所述非预留资源仅提供给所述普通类型的应用使用;若所述当前应用的应用类型为普通类型,所述判断单元还用于:判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和预留资源后,是否满足当前应用的实例对所述第一资源的最小资源需求;若所述当前应用的类型为特定类型,所述判断单元还用于:判断所述当前节点的第一资源的总可分配资源去除已分配给特定类型应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
根据本公开提供的预留资源的管理装置,所述第一资源包括中央处理器、内存和存储中的任一种。
根据本公开提供的预留资源的管理装置,所述装置还包括确定单元,用于获取所述当前应用的标注数据;根据所述标注数据确定所述当前应用的应用类型。
根据本公开提供的预留资源的管理装置,所述装置还包括预留管理单元,用于:获取用户发送的针对目标节点的资源预留指令;根据所述资源预留指令创建所述目标节点的定制资源数据,所述定制资源数据表征所述目标节点的各个资源的预留资源的大小以及使用权限。
根据本公开提供的预留资源的管理装置,所述预留管理单元还用于根据所述定制资源数据为所述目标节点的各个资源对应增加扩展资源,以进行所述目标节点的各个资源的资源调度。
本公开还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述预留资源的管理方法的步骤。
本公开还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述预留资源的管理方法的步骤。
本公开提供的预留资源的管理方法、装置、电子设备和非暂态计算机可读存储介质,通过将资源划分为预留资源和非预留资源,并将预留资源提供给特定类型的应用使用,可以为当前应用选择合适的节点进行调度,从而较为方便地实现对特定应用所需的资源进行预留,提高了资源管理的便捷性。
具体地,在本公开的技术方案中,将应用分为普通应用和特定应用两种类型,将节点的可分配资源分为预留资源和非预留资源两种,并规定预留资源仅可以提供给特定应用,通过对当前节点的资源情况和当前应用的pod的资源需求进行pod的调度,实现了对特定应用的资源预留和对物理节点的资源的管理。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开提供的预留资源的管理方法的流程示意图;
图2是本公开提供的资源划分与应用类型关系的示意图之一;
图3是本公开提供的资源划分与应用类型关系的示意图之二;
图4是本公开提供的预留资源的管理装置的结构示意图;
图5是本公开提供的电子设备的结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合本公开中的附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在本公开一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开一个或多个实施例。在本公开一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本公开一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以下对本公开实施例中的技术名词进行解释:
Kubernetes:是一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
Kubernetes集群:基于Kubernetes技术形成,是一种由物理服务器或者虚拟机组成的计算机系统。
pod:是Kubernetes的基础单元,可以理解为应用的实例。
下面结合附图对本公开示例实施方式进行详细说明。
如图1所示的是本公开实施例的预留资源的管理方法的流程图。本公开实施例提供的方法可以由任意具备计算机处理能力的电子设备执行,例如终端设备和/或服务器。如图1所示,该预留资源的管理方法包括:
步骤102,获取当前应用的应用类型,应用类型包括特定类型。
具体地,应用的类型可以为特定类型和普通类型。当前应用的应用类型是特定类型与普通类型中的一种。
步骤104,根据当前应用的应用类型判断当前节点的第一资源是否满足当前应用的实例的资源需求,其中,第一资源被划分为预留资源和非预留资源,预留资源仅提供给特定类型的应用使用。
具体地,第一资源可以为节点的中央处理器、内存和存储三种资源中的任意一种。第一资源满足当前应用的pod的资源需求指的是当前节点的第一资源中可以提供给当前应用的pod的部分资源能够满足当前应用的pod对资源的需求。
步骤106,若满足,则将当前应用的pod调度到当前节点。
本公开实施例的技术方案中,将应用分为普通应用和特定应用两种类型,将节点的可分配资源分为预留资源和非预留资源两种,并规定预留资源仅可以提供给特定应用,通过对当前节点的资源情况和当前应用的pod的资源需求进行pod的调度,实现了对特定应用的资源预留和对物理节点的资源的管理。
在本公开实施例中,第一资源可以为中央处理器、内存和存储中的任一种。例如,可以以中央处理器为第一资源,以内存为第二资源,以存储为第三资源。每一种资源都可以采用本公开实施例的技术方案进行划分得到不同资源区域,不同类型的应用可以根据本公开实施例的技术方案调度到对应的资源区域。
在步骤102之前,需要获取用户发送的针对目标节点的资源预留指令,并根据资源预留指令创建目标节点的定制资源数据,定制资源数据表征目标节点的各个资源的预留资源的大小以及使用权限。
在本公开实施例中,基于Kubernetes CRD扩展机制,定义了节点预留资源的使用方式。CRD全称是Custom Resource Definition,即定制资源定义。在Kubernetes中一切都可视为资源。通过CRD可以向Kubernetes API(Application Programming Interface,应用程序接口)中增加新资源类型,而不需要修改Kubernetes源码来创建自定义的APIserver,该功能大大提高了Kubernetes的扩展能力。
具体地,当需要在某节点上预留资源时,需要创建一个和节点同名的CR(CustomResources,定制资源)。其中,CR包括预留资源类型以及各预留资源类型对应的预留资源大小,其中,预留资源类型可以为中央处理器、内存和存储。
以下为一个CR的实例的内容:
apiVersion:xxxxxxx/v1
kind:ReserveNodeResource
metadata:
name:10.0.0.1
spec:
reservedResource:
cpu:2000m
memory:100Mi
storage:10Gi
在创建定制资源数据后,可以根据定制资源数据为目标节点的各个资源对应增加扩展资源,以进行目标节点的各个资源的资源调度。
具体地,可以在基于Kubernetes list-watch机制监听到资源预留要求CR后,根据资源预留要求CR中的定制资源数据给节点的三种资源各自对应预留一种扩展资源,供后续调度器插件使用,可以设计该扩展资源的内容如下:
apiVersion:v1
kind:Node
metadata:
name:10.0.0.1
status:
allocatable:
cpu:"16"
memory:32569700Ki
storage:299Gi
reserve-cpu:"2"
reserve-storage:10Gi
reserve-memory:100Mi
其中,list-watch(列表监听)是Kubernetes系统中统一的一种消息传递方式,对系统的性能、数据一致性起到关键性的作用。Kubernetes通过List-Watch的机制进行每个组件的协作,保持数据同步,使得每个组件之间的设计实现了解耦。采用该列表监听的方式,可以实现对资源预留要求CR的同步,以根据资源预留要求CR中的定制资源数据为目标节点的各个资源对应增加扩展资源。
本公开实施例的资源预留的管理方法有两种不同的资源管理模式。在这两种模式中,预留资源都仅可以提供给特定应用,但是非预留资源的提供的目标对象不同。
在第一种资源管理模式中,非预留资源既可以提供给普通应用,也可以提供给特定应用。具体地,如图2所示,对于普通应用,不能使用预留资源,只能使用预留资源之外的非预留资源;对于特定应用,既可以使用预留资源,又可以使用预留资源之外的非预留资源。
在第二种资源管理模式中,非预留资源仅可以提供给普通应用。具体地,如图3所示,对于普通应用,只能使用预留资源之外的非预留资源;对于特定应用,只能使用预留资源。
在步骤102之前,还可以获取当前应用的标注数据,并根据标注数据确定当前应用的应用类型。其中,标注数据可以为应用的label(标注)或annotation(标记)。具体地,可以使用调度器增加资源预留插件确定当前应用的应用类型。该插件基于应用的label或annotation判断应用类型,即具有指label或annotation的应用会被归类为特定应用,否则归类为普通应用。
在步骤104中,针对不同类型的应用、不同的资源管理模式,判定节点资源是否满足需求的判断方法不同。
在第一种资源管理模式中,非预留资源供特定类型和普通类型的应用使用。若当前应用的应用类型为普通类型,在步骤104中,可以判断当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和最大特定类型应用资源后,是否满足当前应用的pod对第一资源的最小资源需求,其中,最大特定类型应用资源为以下两个数据的较大值:当前节点的第一资源的预留资源和当前节点的第一资源的已分配给所有特定类型应用的资源。
若当前应用的类型为特定类型,在步骤104中,可以判断当前节点的第一资源的总可分配资源去除已分配给所有应用的资源后,是否满足当前应用的pod对第一资源的最小资源需求。
以CPU为例,若当前应用为普通类型的应用,当前节点的CPU的总可分配资源为S11,已分配给普通类型应用的资源为S12,最大特定类型应用资源为S13,当前应用的pod对CPU的最小资源需求为S14。则S11-S12-S13的值大于S14时,步骤104的判断结果为满足,即当前节点的CPU中的可使用资源满足当前应用的pod的资源需求。其中,S13=max(当前节点CPU的预留资源,sum(当前节点CPU的已分配给特定应用的资源)),即S13取当前节点的CPU的预留资源与当前节点的CPU的已分配给特定应用的资源两个值中的较大值。
若当前应用为特殊类型的应用,当前节点的CPU的总可分配资源为S21,已分配给所有应用的资源为S22,当前应用的pod对CPU的最小资源需求为S23。则S21-S22的值大于S23时,步骤104的判断结果为满足,即当前节点的CPU中的可使用资源满足当前应用的pod的资源需求。
只有步骤104的判断结果为满足,才可以将当前应用的pod调度到当前节点。
在第二种资源管理模式中,非预留资源仅提供给普通类型的应用使用。
若当前应用的应用类型为普通类型,在步骤104中,可以判断当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和预留资源后,是否满足当前应用的pod对第一资源的最小资源需求。
若当前应用的类型为特定类型,在步骤104中,可以判断当前节点的第一资源的总可分配资源去除已分配给特定类型应用的资源后,是否满足当前应用的pod对第一资源的最小资源需求。
以CPU为例,若当前应用为普通类型的应用,当前节点的CPU的总可分配资源为S31,已分配给普通类型应用的资源为S32,预留资源为S33,当前应用的pod对CPU的最小资源需求为S34。则S31-S32-S33的值大于S34时,步骤104的判断结果为满足,即当前节点的CPU中的可使用资源满足当前应用的pod的资源需求。
若当前应用为特殊类型的应用,当前节点的CPU的总可分配资源为S41,已分配给特定类型应用的资源为S42,当前应用的pod对CPU的最小资源需求为S43。则S41-S42的值大于S43时,步骤104的判断结果为满足,即当前节点的CPU中的可使用资源满足当前应用的pod的资源需求。
本公开提供的预留资源的管理方法,通过将资源划分为预留资源和非预留资源,并将预留资源提供给特定类型的应用使用,可以为当前应用选择合适的节点进行调度,从而较为方便地实现对特定应用所需的资源进行预留,提高了资源管理的便捷性。
下面对本公开提供的预留资源的管理装置进行描述,下文描述的预留资源的管理装置与上文描述的预留资源的管理方法可相互对应参照。
如图4所示,本公开实施例的预留资源的管理装置可以包括:
获取单元402,可以用于获取当前应用的应用类型,应用类型包括特定类型。
具体地,应用的类型可以为特定类型和普通类型。当前应用的应用类型是特定类型与普通类型中的一种。
判断单元404,可以用于根据当前应用的应用类型判断当前节点的第一资源是否满足当前应用的实例的资源需求,其中,第一资源被划分为预留资源和非预留资源,预留资源仅提供给特定类型的应用使用。
具体地,第一资源可以为节点的中央处理器、内存和存储三种资源中的任意一种。第一资源满足当前应用的实例的资源需求指的是当前节点的第一资源中可以提供给当前应用的实例的部分资源能够满足当前应用的实例对资源的需求。
调度单元406,可以用于在满足上述条件时,将当前应用的实例调度到当前节点。
本公开实施例的技术方案中,将应用分为普通应用和特定应用两种类型,将节点的可分配资源分为预留资源和非预留资源两种,并规定预留资源仅可以提供给特定应用,通过对当前节点的资源情况和当前应用的实例的资源需求进行实例的调度,实现了对特定应用的资源预留和对物理节点的资源的管理。
本公开实施例的资源预留的管理方法有两种不同的资源管理模式。在这两种模式中,预留资源都仅可以提供给特定应用,但是非预留资源的提供的目标对象不同。
在第一种资源管理模式中,非预留资源既可以提供给普通应用,也可以提供给特定应用。对于普通应用,不能使用预留资源,只能使用预留资源之外的非预留资源;对于特定应用,既可以使用预留资源,又可以使用预留资源之外的非预留资源。
在第二种资源管理模式中,非预留资源仅可以提供给普通应用。对于普通应用,只能使用预留资源之外的非预留资源;对于特定应用,只能使用预留资源。
在本公开实施例中,应用类型还包括普通类型,在第一种资源管理模式中,非预留资源供特定类型和普通类型的应用使用;若当前应用的应用类型为普通类型,判断单元还可以用于:判断当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和最大特定类型应用资源后,是否满足当前应用的实例对第一资源的最小资源需求,其中,最大特定类型应用资源为以下两个数据的较大值:当前节点的第一资源的预留资源和当前节点的第一资源的已分配给所有特定类型应用的资源;若当前应用的类型为特定类型,判断单元还可以用于:判断当前节点的第一资源的总可分配资源去除已分配给所有应用的资源后,是否满足当前应用的实例对第一资源的最小资源需求。
在本公开实施例中,应用类型还包括普通类型,在第二种资源管理模式中,非预留资源仅提供给普通类型的应用使用;若当前应用的应用类型为普通类型,判断单元还可以用于:判断当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和预留资源后,是否满足当前应用的实例对第一资源的最小资源需求;若当前应用的类型为特定类型,判断单元还可以用于:判断当前节点的第一资源的总可分配资源去除已分配给特定类型应用的资源后,是否满足当前应用的实例对第一资源的最小资源需求。
在本公开实施例中,第一资源包括中央处理器、内存和存储中的任一种。例如,可以以中央处理器为第一资源,以内存为第二资源,以存储为第三资源。每一种资源都可以采用本公开实施例的技术方案进行划分得到不同资源区域,不同类型的应用可以根据本公开实施例的技术方案调度到对应的资源区域。
在本公开实施例中,装置还可以包括确定单元,用于获取当前应用的标注数据;根据标注数据确定当前应用的应用类型。其中,标注数据可以为应用的label(标注)或annotation(标记)。具有指label或annotation的应用会被归类为特定应用,否则归类为普通应用。
在本公开实施例中,装置还可以包括预留管理单元,用于:获取用户发送的针对目标节点的资源预留指令;根据资源预留指令创建目标节点的定制资源数据,定制资源数据表征目标节点的各个资源的预留资源的大小以及使用权限。
在本公开实施例中,预留管理单元还可以用于根据定制资源数据为目标节点的各个资源对应增加扩展资源,以进行目标节点的各个资源的资源调度。
由于本公开的示例实施例的预留资源的管理装置的各个功能模块与上述预留资源的管理方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的预留资源的管理方法的实施例。
本公开提供的预留资源的管理装置,通过将资源划分为预留资源和非预留资源,并将预留资源提供给特定类型的应用使用,可以为当前应用选择合适的节点进行调度,从而较为方便地实现对特定应用所需的资源进行预留,提高了资源管理的便捷性。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电处理子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行预留资源的管理方法,该方法包括:获取当前应用的应用类型,所述应用类型包括特定类型;根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;若满足,则将所述当前应用的实例调度到所述当前节点。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本公开还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的预留资源的管理方法,该方法包括:获取当前应用的应用类型,所述应用类型包括特定类型;根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;若满足,则将所述当前应用的实例调度到所述当前节点。
又一方面,本公开还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的预留资源的管理方法,该方法包括:获取当前应用的应用类型,所述应用类型包括特定类型;根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;若满足,则将所述当前应用的实例调度到所述当前节点。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。

Claims (10)

1.一种预留资源的管理方法,其特征在于,所述方法包括:
获取当前应用的应用类型,所述应用类型包括特定类型;
根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;
若满足,则将所述当前应用的实例调度到所述当前节点。
2.根据权利要求1所述的方法,其特征在于,所述应用类型还包括普通类型,所述非预留资源供所述特定类型和所述普通类型的应用使用;
若所述当前应用的应用类型为普通类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:
判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和最大特定类型应用资源后,是否满足当前应用的实例对所述第一资源的最小资源需求,其中,所述最大特定类型应用资源为以下两个数据的较大值:所述当前节点的第一资源的预留资源和所述当前节点的第一资源的已分配给所有特定类型应用的资源;
若所述当前应用的类型为特定类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:
判断所述当前节点的第一资源的总可分配资源去除已分配给所有应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
3.根据权利要求1所述的方法,其特征在于,所述应用类型还包括普通类型,所述非预留资源仅提供给所述普通类型的应用使用;
若所述当前应用的应用类型为普通类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:
判断所述当前节点的第一资源的总可分配资源去除已分配给普通类型应用的资源和预留资源后,是否满足当前应用的实例对所述第一资源的最小资源需求;
若所述当前应用的类型为特定类型,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,包括:
判断所述当前节点的第一资源的总可分配资源去除已分配给特定类型应用的资源后,是否满足当前应用的实例对所述第一资源的最小资源需求。
4.根据权利要求1所述的方法,其特征在于,所述第一资源包括中央处理器、内存和存储中的任一种。
5.根据权利要求1所述的方法,其特征在于,所述获取当前应用的应用类型之前,所述方法还包括:
获取所述当前应用的标注数据;
根据所述标注数据确定所述当前应用的应用类型。
6.根据权利要求1所述的方法,其特征在于,所述根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求之前,所述方法还包括:
获取用户发送的针对目标节点的资源预留指令;
根据所述资源预留指令创建所述目标节点的定制资源数据,所述定制资源数据表征所述目标节点的各个资源的预留资源的大小以及使用权限。
7.根据权利要求6所述的方法,其特征在于,所述根据所述资源预留指令创建所述目标节点的定制资源数据之后,所述方法还包括:
根据所述定制资源数据为所述目标节点的各个资源对应增加扩展资源,以进行所述目标节点的各个资源的资源调度。
8.一种预留资源的管理装置,其特征在于,包括:
获取单元,用于获取当前应用的应用类型,所述应用类型包括特定类型;
判断单元,用于根据所述当前应用的应用类型判断当前节点的第一资源是否满足所述当前应用的实例的资源需求,其中,所述第一资源被划分为预留资源和非预留资源,所述预留资源仅提供给所述特定类型的应用使用;
调度单元,用于在满足上述条件时,将所述当前应用的实例调度到所述当前节点。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述的方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法的步骤。
CN202210306092.0A 2022-03-25 2022-03-25 预留资源的管理方法、装置、设备和存储介质 Pending CN114880068A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210306092.0A CN114880068A (zh) 2022-03-25 2022-03-25 预留资源的管理方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210306092.0A CN114880068A (zh) 2022-03-25 2022-03-25 预留资源的管理方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN114880068A true CN114880068A (zh) 2022-08-09

Family

ID=82667457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210306092.0A Pending CN114880068A (zh) 2022-03-25 2022-03-25 预留资源的管理方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN114880068A (zh)

Similar Documents

Publication Publication Date Title
US11586673B2 (en) Data writing and reading method and apparatus, and cloud storage system
CN106919445B (zh) 一种在集群中并行调度容器的方法和装置
CN111880936B (zh) 资源调度方法、装置、容器集群、计算机设备和存储介质
CN111290828A (zh) 使用容器编排服务进行动态路由
CN110389843B (zh) 一种业务调度方法、装置、设备及可读存储介质
CN114979286B (zh) 容器服务的访问控制方法、装置、设备及计算机存储介质
CN112486642B (zh) 资源调度方法、装置、电子设备及计算机可读存储介质
CN105357042A (zh) 一种高可用集群系统及其主节点和从节点
CN112860387A (zh) 分布式任务调度方法、装置、计算机设备及存储介质
CN113886069A (zh) 一种资源分配方法、装置、电子设备及存储介质
CN113297031A (zh) 容器集群中的容器组防护方法及装置
CN114650170A (zh) 跨集群资源管理方法、装置、设备和存储介质
CN114721824A (zh) 一种资源分配方法、介质以及电子设备
CN107633080B (zh) 一种用户任务处理方法及装置
CN108733536B (zh) 监控管理系统及方法
CN113111666A (zh) 一种实现应用程序的多语言翻译的系统及方法
CN113806027A (zh) 任务编排方法、装置、电子设备和计算机可读存储介质
CN114880068A (zh) 预留资源的管理方法、装置、设备和存储介质
CN112948084B (zh) 任务调度方法及系统
CN114675954A (zh) 任务调度方法及装置
CN114675940A (zh) 应用实例构建方法、装置和设备
CN114722003A (zh) 中心化数据采集方法、装置、设备及存储介质
CN110704382B (zh) 文件部署方法、装置、服务器及存储介质
CN114443302A (zh) 容器集群扩容方法、系统、终端及存储介质
CN112395081B (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