CN110958138A - 一种容器扩容方法及装置 - Google Patents
一种容器扩容方法及装置 Download PDFInfo
- Publication number
- CN110958138A CN110958138A CN201911113791.8A CN201911113791A CN110958138A CN 110958138 A CN110958138 A CN 110958138A CN 201911113791 A CN201911113791 A CN 201911113791A CN 110958138 A CN110958138 A CN 110958138A
- Authority
- CN
- China
- Prior art keywords
- image file
- container
- estimation model
- time
- working node
- 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.)
- Granted
Links
Images
Classifications
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种容器扩容方法及装置,该方法包括:获取待扩容的容器对应的特征信息;将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,估计模型的输入为特征信息的特征值,输出为预计时长,估计模型是通过历史数据训练得到;根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;在所述加载时间,将所述镜像文件下载到所述目标工作节点;在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。通过本申请的技术方案,能够提前将镜像文件下载到目标工作节点,能够快速实现容器的扩容。
Description
技术领域
本申请涉及通信技术领域,尤其是涉及一种容器扩容方法及装置。
背景技术
随着云计算技术的不断成熟,容器技术逐步成为业界的发展热点,各主流云计算平台均提供容器服务。Kubernetes是用于实现容器管理的开源平台,用于自动部署、扩展和管理容器,用于对集群内的容器的生命周期进行管理,结合自身的健康检查及错误恢复机制,实现集群内部容器的高可用性。
Kubernetes可以采用集群的形式进行部署,即集群中可以包括大量工作节点(Node),这些工作节点可以是物理机或者虚拟机。Kubernetes可以将容器组织成组,并提供容器间的负载均衡,例如,提供相同的3个容器A,容器A1部署在工作节点1,容器A2部署在工作节点2,容器A3部署在工作节点3。
Kubernetes能够实现容器的扩容和缩容。例如,容器A的数量较少时,则复制一个新的容器A(记为容器A4),并将容器A4部署在工作节点4。容器A的数量较多时,则可以删除已有的容器A,如从工作节点3删除容器A3。
为了将容器A4部署在工作节点4,则需要将容器A的镜像文件下载到工作节点4。在该镜像文件下载完成后,才能够在工作节点4部署容器A4。
但是,若该镜像文件比较大,则需要比较长的时间才能够将该镜像文件下载到工作节点4,在这段时间内,无法在工作节点4部署容器A4,即工作节点4无法提供容器A4的服务,导致工作节点4无法及时提供服务。
发明内容
本申请提供一种容器扩容方法,所述方法包括:
获取待扩容的容器对应的特征信息;
将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,估计模型的输入为特征信息的特征值,输出为预计时长,估计模型是通过历史数据训练得到;
根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;
在所述加载时间,将所述镜像文件下载到所述目标工作节点;
在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。
本申请提供一种容器扩容装置,所述装置包括:
获取模块,用于获取待扩容的容器对应的特征信息;将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,所述估计模型的输入为特征信息的特征值,输出为预计时长,所述估计模型是通过历史数据训练得到;
确定模块,用于根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;
处理模块,用于在所述加载时间,将所述镜像文件下载到所述目标工作节点;在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。
基于上述技术方案,本申请实施例中,可以根据待扩容的容器对应的特征信息确定镜像文件下载到目标工作节点的预计时长,并根据容器的扩容时间和该预计时长确定镜像文件的加载时间,并在该加载时间将镜像文件下载到目标工作节点,这样,在扩容时间之前,就已经将镜像文件下载到目标工作节点,从而能够提前将镜像文件下载到目标工作节点,在开始扩容时,就不需要再等待下载镜像文件,可以直接在目标工作节点部署容器,从而快速实现容器的扩容,避免目标工作节点长时间无法提供容器的服务,提高服务的可靠性。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的估计模型的训练流程示意图;
图2是本申请一种实施方式中的容器扩容方法的流程图;
图3是本申请一种实施方式中的Kubernetes集群的结构示意图;
图4是本申请一种实施方式中的扩容过程示意图;
图5是本申请一种实施方式中的估计模型的训练流程示意图;
图6是本申请一种实施方式中的容器扩容方法的流程图;
图7是本申请一种实施方式中的Kubernetes集群的结构示意图;
图8是本申请一种实施方式中的容器扩容装置的结构图;
图9是本申请一种实施方式中的容器扩容设备的硬件结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在......时”或“当......时”或“响应于确定”。
本申请实施例中提出一种容器扩容方法,可以根据待扩容的容器对应的特征信息确定镜像文件下载到目标工作节点的预计时长,并根据容器的扩容时间和该预计时长确定镜像文件的加载时间(该加载时间位于该扩容时间之前,且该加载时间与该预计时长之和,不大于该扩容时间),并在该加载时间将镜像文件下载到目标工作节点,从而能够提前将镜像文件下载到目标工作节点,在开始扩容时,就不需要再等待下载镜像文件,直接在目标工作节点部署容器。
本申请实施例中提出的容器扩容方法,涉及估计模型的训练过程,基于估计模型的容器扩容过程。以下结合具体实施例,对这两个过程进行说明。
估计模型的训练过程:主要根据历史数据训练得到估计模型,参见图1所示,为根据历史数据训练得到估计模型的流程示意图,该过程可以包括:
步骤101,从历史数据中获取实际特征信息和实际时长。
其中,实际特征信息是已部署容器(即已经部署到工作节点的容器)对应的特征信息,实际时长是该已部署容器的镜像文件下载到工作节点的时长。
在一个例子中,实际特征信息可以包括但不限于以下之一或者任意组合:该工作节点对应的网络带宽;该工作节点对应的节点名称;已部署容器的镜像文件所在仓库的地址信息;该镜像文件的大小;该镜像文件的文件名称。当然,上述只是实际特征信息的几个示例,对此实际特征信息不做限制。
在将容器部署到工作节点之前,将容器的镜像文件下载到该工作节点,在镜像文件下载完成后,才能够将该容器部署到该工作节点。在上述过程中,会产生大量数据,本文将这些数据称为历史数据,该历史数据可以包括但不限于实际特征信息和实际时长,当然,该历史数据还可以包括其它信息,对此历史数据不做限制,后续以该历史数据包括实际特征信息和实际时长为例。
例如,在将容器1部署到工作节点1时,可以在数据库中存储如下历史数据:工作节点1对应的网络带宽、工作节点1对应的节点名称、容器1的镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称、镜像文件A1下载到工作节点1的时长,这个时长是镜像文件A1下载到工作节点1的实际耗时,如200秒,表示耗时200秒将镜像文件A1下载到工作节点1。
在将容器1部署到工作节点2时,可以在数据库中存储如下历史数据:工作节点2对应的网络带宽、工作节点2对应的节点名称、镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称、镜像文件A1下载到工作节点2的时长。此外,在将容器2部署到工作节点1时,可以在数据库中存储如下历史数据:工作节点1对应的网络带宽、工作节点1对应的节点名称、容器2的镜像文件A2所在仓库的地址信息、镜像文件A2的大小、镜像文件A2的文件名称、镜像文件A2下载到工作节点1的时长,以此类推。
显然,经过上述处理,数据库中存储大量历史数据,每条历史数据均包括实际特征信息和实际时长,基于此,步骤101中,可以从历史数据中获取实际特征信息和实际时长。实际特征信息是已部署容器对应的特征信息,如工作节点1对应的网络带宽、工作节点1对应的节点名称、镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称。实际时长是已部署容器的镜像文件下载到工作节点的时长,如镜像文件A1下载到工作节点1的时长。
步骤102,根据实际时长、实际特征信息的特征值和特征参数,对估计模型进行训练,得到该特征参数的特征参数值。例如,可以将该实际时长作为估计模型的因变量,将该实际特征信息的特征值和该特征参数作为估计模型的自变量,对该估计模型进行训练,得到该特征参数的特征参数值。其中,该估计模型可以包括预计时长、特征参数值与特征信息的特征值之间的关系。
例如,该估计模型可以包括但不限于线性回归模型或者深度学习模型,当然,线性回归模型和深度学习模型只是一个示例,还可以为其它类型的模型,对此估计模型的类型不做限制,后续以线性回归模型为例进行说明。
例如,估计模型的一个示例可以为:h(x)=θ0+θ1x1+θ2x2+…+θnxn,n表示实际特征信息的数量,θi表示特征参数,而θi的取值就是特征参数的特征参数值,是估计模型训练过程的训练目标,也就是说,通过对估计模型进行训练,得到θi的取值,xi表示实际特征信息的特征值,h(x)表示实际时长。
从上述公式可以看出,h(x)表示实际时长,即实际时长作为估计模型的因变量。θi表示特征参数,即特征参数作为估计模型的自变量。xi表示实际特征信息的特征值,即实际特征信息的特征值作为估计模型的自变量。
例如,针对如下实际特征信息:工作节点1对应的网络带宽、工作节点1对应的节点名称、镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称,可以进行如下处理。确定网络带宽的特征值,如对网络带宽进行归一化处理,得到网络带宽的特征值,对此过程不做限制,将该特征值作为x1。确定节点名称的特征值,如对节点名称进行归一化处理,得到节点名称的特征值,对此过程不做限制,将该特征值作为x2。确定地址信息的特征值,如对地址信息进行归一化处理,得到地址信息的特征值,对此过程不做限制,将该特征值作为x3。确定镜像文件A1的大小的特征值,如对镜像文件A1的大小进行归一化处理,得到镜像文件A1的大小的特征值,对此过程不做限制,将该特征值作为x4。确定文件名称的特征值,如对文件名称进行归一化处理,得到文件名称的特征值,对此过程不做限制,将该特征值作为x5。
此外,可以从历史数据中获取与上述实际特征信息对应的实际时长(如镜像文件A1下载到工作节点1的时长,如200秒),将该实际时长作为h(x)。
综上所述,可以根据实际特征信息和实际时长,确定一组输入数据(如x1、x2、x3、x4、x5、h(x)等),该输入数据中的每个数值均是已知值。
显然,由于每条历史数据均包括实际特征信息和实际时长,因此,基于每条历史数据的实际特征信息和实际时长,就可以确定一组输入数据(如x1、x2、x3、x4、x5、h(x)等),具体确定方式参见上述实施例,在此不再赘述。
综上所述,可以得到大量输入数据(如x1、x2、x3、x4、x5、h(x)等),并利用这些输入数据对估计模型(h(x)=θ0+θ1x1+θ2x2+…+θnxn)进行训练。
例如,将每个输入数据中的x1、x2、x3、x4、x5、h(x)代入h(x)=θ0+θ1x1+θ2x2+…+θnxn,由于x1、x2、x3、x4、x5、h(x)为已知值,θ0、θ1、θ2、θ3、θ4、θ5为未知值,因此,在将大量输入数据代入h(x)=θ0+θ1x1+θ2x2+…+θnxn后,就可以得到θ0、θ1、θ2、θ3、θ4、θ5的取值,而θ0、θ1、θ2、θ3、θ4、θ5的取值就是特征参数值,至此,可以得到每个特征参数的特征参数值。
进一步的,在得到每个特征参数的特征参数值后,就可以得到训练后的估计模型,该估计模型为h(x)=θ0+θ1x1+θ2x2+…+θnxn,在该估计模型中,θ0、θ1、θ2、θ3、θ4、θ5为已知值,而x1、x2、x3、x4、x5、h(x)为未知值,在后续过程中,需要根据x1、x2、x3、x4、x5的取值,预测h(x)的取值。
在一种可能的实施方式中,当估计模型为深度学习模型时,则可以将实际时长和实际特征信息的特征值输入给深度学习模型,继而通过实际时长和实际特征信息的特征值对深度学习模型进行训练,对此训练过程不做限制。
在对深度学习模型进行训练后,深度学习模型可以拟合出特征信息的特征值与预计时长的映射关系,基于所述映射关系进行后续的扩容操作。
深度学习模型可以采用神经网络(如卷积神经网络)实现,当然,深度学习模型也可以采用其它网络实现,对此深度学习模型的结构不做限制。
容器扩容过程:在容器扩容过程中,主要是确定镜像文件下载到目标工作节点的预计时长,根据扩容时间和预计时长确定镜像文件的加载时间。参见图2所示,为容器扩容方法的流程示意图,该过程可以包括以下步骤:
步骤201,获取待扩容的容器对应的特征信息,并将该特征信息的特征值输入估计模型,得到该容器的镜像文件下载到目标工作节点的预计时长(不是实际时长)。其中,预计时长可以通过估计模型获得,该估计模型的输入为特征信息的特征值,输出为预计时长,该估计模型是通过历史数据训练得到。
在一个例子中,该特征信息可以包括但不限于以下之一或者任意组合:该目标工作节点对应的网络带宽;该目标工作节点对应的节点名称;该容器的镜像文件所在仓库的地址信息;该镜像文件的大小;该镜像文件的文件名称。当然,上述只是特征信息的几个示例,对此特征信息不做限制。
例如,假设需要在工作节点3上对容器1进行扩容,则将容器1作为待扩容的容器,将工作节点3作为目标工作节点。基于此,可以获取如下特征信息:工作节点3对应的网络带宽、工作节点3对应的节点名称、容器1的镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称。
参见上述实施例,已经介绍估计模型的训练过程,假设该估计模型为线性回归模型,则估计模型的一个示例可以为:h(x)=θ0+θ1x1+θ2x2+…+θnxn,且该估计模型中的特征参数值(如θ0、θ1、θ2、θ3、θ4、θ5)为已知值。显然,该估计模型中的h(x)为预计时长,该估计模型中的θ0、θ1、θ2、θ3、θ4、θ5为特征参数的特征参数值,该估计模型中的x1、x2、x3、x4、x5为特征信息的特征值。
针对如下特征信息:工作节点3对应的网络带宽、工作节点3对应的节点名称、容器1的镜像文件A1所在仓库的地址信息、镜像文件A1的大小、镜像文件A1的文件名称,可以进行如下处理。确定该网络带宽的特征值,如对该网络带宽进行归一化处理,得到该网络带宽的特征值,将该特征值作为x1。确定该节点名称的特征值,如对该节点名称进行归一化处理,得到该节点名称的特征值,将该特征值作为x2。确定该地址信息的特征值,如对该地址信息进行归一化处理,得到该地址信息的特征值,将该特征值作为x3。确定镜像文件A1的大小的特征值,如对镜像文件A1的大小进行归一化处理,得到镜像文件A1的大小的特征值,将该特征值作为x4。确定该文件名称的特征值,如对该文件名称进行归一化处理,得到该文件名称的特征值,将该特征值作为x5。
至此,基于待扩容的容器对应的特征信息,可以得到这些特征信息的特征值,如x1、x2、x3、x4、x5。然后,将x1、x2、x3、x4、x5输入估计模型h(x)=θ0+θ1x1+θ2x2+…+θnxn,由于x1、x2、x3、x4、x5、θ0、θ1、θ2、θ3、θ4、θ5均为已知值,因此,可以得到h(x)的取值,而h(x)的取值就是镜像文件(如镜像文件A1)下载到目标工作节点(如工作节点3)的预计时长。
综上所述,可以得到镜像文件下载到目标工作节点的预计时长,如200秒。
在一种可能的实施方式中,当估计模型为深度学习模型时,由于深度学习模型可以拟合出特征信息的特征值与预计时长的映射关系,因此,在获取到容器对应的特征信息后,还可以将该特征信息的特征值输入给深度学习模型。这样,深度学习模型可以基于所述映射关系,得到与该特征信息的特征值对应的预计时长,即镜像文件下载到目标工作节点的预计时长。
步骤202,根据容器的扩容时间和该预计时长确定镜像文件的加载时间,该加载时间与预计时长之和不大于该扩容时间,且该加载时间位于扩容时间之前。
例如,该加载时间可以为该扩容时间与该预计时长的差值;或者,该加载时间小于该扩容时间与该预计时长的差值(即位于该差值的前面)。
例如,假设容器的扩容时间为12:00:00,预计时长为200秒,则加载时间为11:56:40或者11:56:40之前。显然,该加载时间位于扩容时间之前,若加载时间为11:56:40,则加载时间与预计时长(200秒)之和为扩容时间。若加载时间为11:56:40之前,则加载时间与预计时长(200秒)之和小于该扩容时间。
步骤203,在该加载时间,将镜像文件下载到目标工作节点。
步骤204,在该扩容时间,根据镜像文件将容器部署到目标工作节点。
示例性的,假设扩容时间为12:00:00,预计时长为200秒,加载时间为11:56:40,需要在工作节点3上对容器1进行扩容,则可以有如下过程:
针对步骤203,在加载时间11:56:40,开始将容器1的镜像文件A1下载到工作节点3,显然,由于镜像文件A1下载到工作节点3的预计时长为200秒,因此,在200秒的时长内,可以将镜像文件A1下载到工作节点3,也就是说,在12:00:00时,已经成功将镜像文件A1的全部内容下载到工作节点3。
针对步骤204,在扩容时间12:00:00,由于已经成功将镜像文件A1的全部内容下载到工作节点3,因此,可以直接根据镜像文件A1将容器1部署到工作节点3,而不需要继续等待将镜像文件A1下载到工作节点3。
基于上述技术方案,本申请实施例中,可以根据待扩容的容器对应的特征信息确定镜像文件下载到目标工作节点的预计时长,并根据容器的扩容时间和该预计时长确定镜像文件的加载时间,并在该加载时间将镜像文件下载到目标工作节点,这样,在扩容时间之前,就已经将镜像文件下载到目标工作节点,从而能够提前将镜像文件下载到目标工作节点,在开始扩容时,就不需要再等待下载镜像文件,可以直接在目标工作节点部署容器,从而快速实现容器的扩容,避免目标工作节点长时间无法提供容器的服务,提高服务的可靠性。
在一种可能的实施方式中,上述容器可以为Pod中的容器,上述方法可以应用于Kubernetes集群,Kubernetes集群包括多个工作节点,且每个工作节点能够部署多个Pod(应用程序)。当然,Kubernetes集群的应用场景只是一个示例,对此不做限制,只要能够实现容器的扩容即可。为了方便描述,后续以Kubernetes集群的实现过程为例,对容器扩容过程进行说明。示例性的,在介绍Kubernetes集群的容器扩容过程之前,可以先介绍与Kubernetes集群有关的内容。
Kubernetes是自动化容器操作的开源平台,可以进行自动化容器的部署和复制,扩展或收缩容器规模,将容器组织成组并提供容器间的负载均衡,实现容器版本升级,提供容器弹性等,Kubernetes支持Docker(开源的应用容器引擎,开发者可以打包应用以及依赖包到一个可移植的镜像中)和Rocket(一个类似Docker的命令行工具,可以打包应用和依赖包到可移植容器中)等容器技术。
Kubernetes可以采用集群的形式进行部署,参见图3所示,为Kubernetes集群的结构示意图,Kubernetes集群可以包括但不限于主节点(Master)和多个工作节点,这些工作节点可以是物理机(如物理服务器)或者虚拟机。
工作节点可以运行如下组件:Kubelet,即主节点代理;Kube-proxy(代理),Service(服务)使用该组件将链接路由到Pod;Docker或Rocket,Kubernetes使用的容器技术。主节点用于管理整个Kubernetes集群,具有一系列组件,如Kubernetes API Server等,主节点能够创建Pod,并实现Pod的扩容与缩容。
Pod是Kubernetes集群的基本调度单元,包含一组容器和数据卷,Pod逻辑上表示某种应用的一个实例。例如,一个Web应用由前端、后端和数据库组成,这三个组件可以运行在各自的容器中,且这些容器包含在同一个Pod内。
Label(标签)是一对键值对,用于传递用户定义的属性,标记Pod容器,Service或者RC(Replication Controller,复制控制器),可以根据标签选择应用特定的Pod。RC是Pod的复制抽象,用于解决Pod的扩容缩容问题。通常情况下,分布式应用为了提高性能或高可用性,需要复制多份资源,根据负载情况动态伸缩。通过RC可以指定一个应用需要几份复制,Kubernetes集群为每份复制创建一个Pod,并确保任意时刻实际运行的Pod数量与该复制的数量相等。
Service是Pod的路由代理抽象,用于解决Pod之间的服务发现问题。例如,Pod的运行状态通常是动态变化的,比如,切换机器、扩容缩容过程中被终止等,因此,访问端不能以固定的IP地址访问某一Pod提供的服务。基于此,Service旨在保证Pod的动态变化对访问端是透明的,访问端只需要知道Service的地址,由Service提供代理,Service通过Label找到符合要求的Pod组。
示例性的,Container即为容器,以Docker的实现为例,Docker可以包括镜像文件(Image)、容器(Container)、仓库(Repository)等基本概念。
镜像文件是一个特殊的文件系统,提供了容器运行时所需的程序、库、资源、配置等文件,以及运行时的配置参数(如环境变量、用户等)。镜像文件不包含动态数据,其内容在构建后不会被改变。镜像文件被设计为分层存储架构,实际是由多层文件系统联合组成。镜像文件在构建时,会一层层构建,前一层是后一层的基础,每一层构建完成后不会发生改变,后一层的任何改变只发生在自身这一层。镜像文件在构建时会基于一个基础镜像进行构建。容器是镜像文件运行时的实体,镜像文件是静态的定义,容器可以被创建、启动、停止、删除、暂停等。仓库是集中存放镜像文件的地方,镜像文件在构建完成后,需要集中存储、分发镜像文件的服务,仓库就是这样的服务。实际应用中,可以部署多个仓库,每个仓库包含多个标签(Tag),每个标签对应一个镜像文件。
Kubernetes集群中部署的服务通常包含多个Pod,有些服务甚至需要成百上千个Pod,比如基于Kubernetes部署深度学习计算集群时,就需要大量Pod,这些Pod分布在Kubernetes集群的不同工作节点上,由于运行Pod实际就是运行Pod中的容器,因此,需要先将容器的镜像文件加载到工作节点。例如,若需要在工作节点4部署Pod1,则将Pod1中的容器1的镜像文件加载到工作节点4。
在实际运行过程中,若需要为某个服务进行扩容,则会创建并调度多个Pod到工作节点上运行,因此,需要先将容器运行所需要的镜像文件加载到工作节点,待镜像文件加载完成后,运行Pod并完成服务扩容。但是,如果镜像文件的加载时间过长,就会严重影响服务扩容效率,甚至可能导致线上服务崩溃。
例如,镜像文件的大小是没有上限的,如数镜文件可能为几十或几百MB,也可能为几GB甚至几十GB,若镜像文件比较大,则将镜像文件加载到工作节点时,就会导致镜像文件的加载时间过长,继而无法及时提供服务。
针对上述发现,本申请实施例中,在对某个服务进行扩容时,能够提前将镜像文件下载到目标工作节点,在开始扩容时,就不需要再等待下载镜像文件,可以直接在目标工作节点运行Pod(即运行Pod中的容器),从而快速实现扩容,解决服务长时间无法启动、服务扩容缓慢导致的服务状态异常等问题。
后续过程中,镜像文件是指容器的镜像文件,而容器是部署在Pod中的容器,即Pod可以包括多个容器,每个容器均有自身的镜像文件。Pod是为某个服务创建的,即针对某个服务可以创建多个Pod(这些Pod可以是相同的),这些Pod部署在不同的工作节点,从而实现Pod的负载均衡,更好的提供该服务。
在一个例子中,可以根据历史数据训练估计模型,基于已经训练的估计模型,可以确定镜像文件下载到目标工作节点的预计时长,并根据扩容时间和该预计时长确定镜像文件的加载时间,并在该加载时间将镜像文件下载到目标工作节点。参见图4所示,为本申请实施例的扩容过程示意图。首先,将训练数据集输入给估计模型,该训练数据集包括从历史数据中获取的实际特征信息和实际时长。根据训练数据集对估计模型进行训练,得到特征参数的特征参数值。在得到特征参数的特征参数值后,就可以得到训练后的估计模型。
基于训练后的估计模型,可以将待测数据集输入给该估计模型,待测数据集包括待扩容的容器对应的特征信息。将待测数据集输入给该估计模型后,该估计模型可以输出与该待测数据集对应的预测结果,该预测结果就是镜像文件下载到目标工作节点的预计时长。进一步的,根据扩容时间和该预计时长可以确定镜像文件的加载时间,并在该加载时间将镜像文件下载到目标工作节点。
参见图5所示,为估计模型的训练过程的示意图,该过程可以包括:
步骤501,从历史数据中获取实际特征信息和实际时长,实际特征信息包括但不限于以下之一或者任意组合:工作节点对应的网络带宽;工作节点对应的节点名称;已部署容器的镜像文件所在仓库的地址信息;该镜像文件的大小;该镜像文件的文件名称。当然,上述只是几个示例,对此不做限制。
步骤502,将获取到的实际特征信息和实际时长作为训练数据集,也就是说,该训练数据集包括从历史数据中获取的实际特征信息和实际时长。
步骤503,根据训练数据集对估计模型进行训练,得到特征参数的特征参数值。在得到特征参数的特征参数值后,就可以得到训练后的估计模型。
示例性的,可以根据实际时长、实际特征信息的特征值和特征参数,对估计模型进行训练,得到该特征参数的特征参数值。例如,可以将该实际时长作为估计模型的因变量,将该实际特征信息的特征值和该特征参数作为估计模型的自变量,对该估计模型进行训练,得到该特征参数的特征参数值。其中,该估计模型可以包括预计时长、特征参数值与特征信息的特征值之间的关系。
例如,估计模型可以包括线性回归模型,一个示例可以为:h(x)=θ0+θ1x1+θ2x2+…+θnxn,n表示实际特征信息的数量,θi表示特征参数,xi表示实际特征信息的特征值,h(x)表示实际时长。基于训练数据集中的实际特征信息,将网络带宽的特征值作为x1,将节点名称的特征值作为x2,将地址信息的特征值作为x3,将镜像文件的大小的特征值作为x4,将文件名称的特征值作为x5,将上述实际特征信息对应的实际时长作为h(x)。利用上述数据对h(x)=θ0+θ1x1+θ2x2+…+θnxn进行训练,x1、x2、x3、x4、x5、h(x)是已知值,可以得到θ0、θ1、θ2、θ3、θ4、θ5的取值,而θ0、θ1、θ2、θ3、θ4、θ5的取值就是特征参数值,在得到每个特征参数的特征参数值后,可以得到训练后的估计模型。
示例性的,由于不同工作节点、不同仓库地址的网络状况不同,可能会对镜像文件的下载速度产生较大影响,因此,将节点名称的特征值、地址信息的特征值加入到估计模型中。由于镜像文件本身会对镜像文件的下载速度产生较大影响,即不同镜像文件的下载速度不同,因此,将镜像文件的大小的特征值、文件名称的特征值加入到估计模型中。由于工作节点的网络带宽会对镜像文件的下载速度产生较大影响,因此,将网络带宽的特征值加入到估计模型中。
参见图6所示,为容器扩容过程的示意图,该过程可以包括:
步骤601,选择待扩容的服务,设定扩容时间以及副本数,该服务对应Pod,该副本数表示需要扩容的Pod的数量,每个Pod包括多个容器。
步骤602,根据待扩容的服务的信息解析控制器Pod模板。
示例性的,Kubernetes集群中部署的服务是通过控制器(Controller)来定义Pod模板的,Pod模板主要包括标签(labels)、计算资源限额(resource request/limit)、镜像文件(image)、调度策略等内容,因此,可以根据服务的信息(如服务名和服务所在命名空间)解析控制器Pod模板,得到标签、计算资源限额、镜像文件和调度策略等内容。其中,该调度策略可以包括但不限于如下内容:选择节点(nodeSelector)、节点亲和性(nodeAffinity)、Pod亲和与反亲和性(podAffinity/podAntiAffinity)、污点(Taints)、容忍(tolerations)等。
综上所述,通过解析控制器Pod模板,可以得到镜像文件的相关内容,例如,镜像文件所在仓库的地址信息;镜像文件的大小;镜像文件的文件名称等。
通过解析控制器Pod模板,可以得到计算资源限额和调度策略等内容。
步骤603,根据服务的信息、副本数、计算资源限额和调度策略,确定目标工作节点(如节点地址),目标工作节点的数量可以与该副本数相对应。
在步骤601中,可以得到服务的信息和副本数,在步骤602中,可以得到计算资源限额和调度策略。可以将服务的信息(如服务名)、副本数、计算资源限额和调度策略输入给Kubernetes调度器(Kubernetes Scheduler)。Kubernetes调度器可以基于计算资源限额和调度策略筛选出该副本数的工作节点,将这些工作节点称为目标工作节点,对此目标工作节点的筛选过程不做限制。
综上所述,可以得到目标工作节点,并确定目标工作节点对应的节点名称。而且,在得到目标工作节点后,还可以确定目标工作节点对应的网络带宽。
综上所述,可以得到待测数据集,待测数据集的数量与目标工作节点的数量相同,即每个目标工作节点对应一个待测数据集。例如,待测数据集可以包括镜像文件所在仓库的地址信息;镜像文件的大小;镜像文件的文件名称;目标工作节点对应的节点名称;目标工作节点对应的网络带宽。示例性的,每个待测数据集只包括一个目标工作节点对应的节点名称和网络带宽。
为了方便描述,后续以一个待测数据集的处理过程为例进行说明。
步骤604,将待测数据集输入给估计模型,由估计模型输出与该待测数据集对应的预测结果,该预测结果是镜像文件下载到目标工作节点的预计时长。
示例性的,待测数据集中包括的是多个特征信息,可以将这些特征信息的特征值输入给估计模型,得到镜像文件下载到目标工作节点的预计时长,其中,该估计模型包括预计时长、特征参数值与特征信息的特征值的关系。
例如,估计模型的一个示例可以为:h(x)=θ0+θ1x1+θ2x2+…+θnxn,该估计模型中的h(x)为预计时长,该估计模型中的θ0、θ1、θ2、θ3、θ4、θ5为特征参数的特征参数值,该估计模型中的x1、x2、x3、x4、x5为特征信息的特征值,且该估计模型中的特征参数值(如θ0、θ1、θ2、θ3、θ4、θ5)为已知值。
基于待测数据集中的特征信息,可以将网络带宽的特征值作为x1,将节点名称的特征值作为x2,将地址信息的特征值作为x3,将镜像文件的大小的特征值作为x4,将文件名称的特征值作为x5,将x1、x2、x3、x4、x5输入估计模型h(x)=θ0+θ1x1+θ2x2+…+θnxn,由于x1、x2、x3、x4、x5、θ0、θ1、θ2、θ3、θ4、θ5均为已知值,因此,可以得到h(x)的取值,h(x)的取值即预计时长。
例如,在将表1所示的特征信息的特征值输入给估计模型后,可以得到镜像文件下载到目标工作节点的预计时长,假设预计时长为200秒。
表1
网络带宽 | 节点名称 | 地址信息 | 镜像文件的大小 | 文件名称 | … |
10Mbit/s | Node1 | gcr.io | 2G | debian |
步骤605,根据扩容时间和该预计时长确定镜像文件的加载时间,该加载时间与预计时长之和不大于该扩容时间,且该加载时间位于扩容时间之前。
例如,假设扩容时间为12:00:00,预计时长为200秒,则加载时间为11:56:40或者11:56:40之前。显然,该加载时间位于扩容时间之前,示例性的,若加载时间为11:56:40,则加载时间与预计时长(200秒)之和为扩容时间。若加载时间为11:56:40之前,则加载时间与预计时长(200秒)之和小于该扩容时间。
步骤606,在该加载时间,将镜像文件下载到目标工作节点。
步骤607,在该扩容时间,根据该镜像文件将容器部署到目标工作节点。
具体的,在该扩容时间,可以对服务进行扩容,也就是说,将该服务的Pod部署到目标工作节点。在将Pod部署到目标工作节点时,就是将该Pod中的容器部署到目标工作节点。由于在该扩容时间,已经将该容器的镜像文件下载到目标工作节点,因此,可以直接根据该镜像文件将容器部署到目标工作节点。
基于上述技术方案,本申请实施例中,在扩容时间之前,就已经将镜像文件下载到目标工作节点,从而能够提前将镜像文件下载到目标工作节点,在开始扩容时,就不需要再等待下载镜像文件,可以直接在目标工作节点部署容器,从而快速实现服务的扩容,避免服务长时间处于pending(等待)状态导致服务状态异常、崩溃等问题,解决服务无法及时响应的问题,提高服务的可靠性。
以下结合图7所示的Kubernetes集群的示意图,对上述过程进行说明。
服务扩容配置系统用于确定待扩容的服务,设定扩容时间以及副本数,该服务对应Pod,该副本数表示需要扩容的Pod的数量,每个Pod包括多个容器。
控制器解析器根据待扩容的服务的信息(如服务名和服务所在命名空间)解析控制器Pod模板,得到标签、计算资源限额、镜像文件和调度策略等内容。
通过解析控制器Pod模板,可以得到镜像文件的相关内容,例如,镜像文件所在仓库的地址信息;镜像文件的大小;镜像文件的文件名称等。
通过解析控制器Pod模板,可以得到计算资源限额和调度策略等内容。
Kubernetes调度器(Kubernetes Scheduler)根据服务的信息(如服务名)、副本数、计算资源限额和调度策略等内容,确定目标工作节点(如节点地址)。
节点镜像信息收集器用于获取待测数据集,将待测数据集输入给预测模型训练器。待测数据集包括镜像文件所在仓库的地址信息;镜像文件的大小;镜像文件的文件名称;目标工作节点对应的节点名称和网络带宽等内容。
预测模型训练器包括估计模型,并通过估计模型输出与该待测数据集对应的预测结果,该预测结果是镜像文件下载到目标工作节点的预计时长。
示例性的,预测模型训练器可以将该预计时长输出给服务扩容配置系统。
服务扩容配置系统用于根据扩容时间和预计时长确定镜像文件的加载时间,加载时间与预计时长之和不大于扩容时间。在该加载时间,将镜像文件下载到目标工作节点。在该扩容时间,根据该镜像文件将容器部署到目标工作节点。
示例性的,关于服务扩容配置系统、控制器解析器、Kubernetes调度器、节点镜像信息收集器、预测模型训练器的相关实现过程,可以参见上述实施例。
基于与上述方法同样的申请构思,本申请实施例中还提出一种容器扩容装置,参见图8所示,所述容器扩容装置可以包括:
获取模块81,用于获取待扩容的容器对应的特征信息;将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,所述估计模型的输入为特征信息的特征值,输出为预计时长,所述估计模型是通过历史数据训练得到;
确定模块82,用于根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;处理模块83,用于在所述加载时间,将所述镜像文件下载到所述目标工作节点;在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。
在一种可能的实施方式中,所述获取模块81根据历史数据训练得到所述估计模型时具体用于:从历史数据中获取实际特征信息和实际时长;实际特征信息是已部署容器对应的特征信息,实际时长是已部署容器的镜像文件下载到工作节点的时长;根据所述实际时长、所述实际特征信息的特征值和特征参数,对所述估计模型进行训练,得到所述特征参数的特征参数值。
在一种可能的实施方式中,所述特征信息包括以下之一或者任意组合:
所述目标工作节点对应的网络带宽;
所述目标工作节点对应的节点名称;
所述镜像文件所在仓库的地址信息;
所述镜像文件的大小;
所述镜像文件的文件名称。
示例性的,所述估计模型包括线性回归模型或者深度学习模型。
示例性的,所述容器具体为Pod中的容器,所述装置应用于Kubernetes集群,所述Kubernetes集群包括多个工作节点,且每个工作节点能够部署多个Pod。
基于与上述方法同样的申请构思,本申请实施例中还提出一种容器扩容设备,本申请实施例提供的容器扩容设备,从硬件层面而言,所述容器扩容设备的硬件架构示意图可以参见图9所示,所述容器扩容设备可以包括:机器可读存储介质和处理器,其中:所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器与机器可读存储介质通信,读取和执行机器可读存储介质中存储的所述指令代码,以实现上述的容器扩容方法。
示例性的,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现上述容器扩容方法。
这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种容器扩容方法,其特征在于,所述方法包括:
获取待扩容的容器对应的特征信息;
将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,估计模型的输入为特征信息的特征值,输出为预计时长,估计模型是通过历史数据训练得到;
根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;
在所述加载时间,将所述镜像文件下载到所述目标工作节点;
在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。
2.根据权利要求1所述的方法,其特征在于,
根据历史数据训练得到所述估计模型的过程,包括:
从历史数据中获取实际特征信息和实际时长;实际特征信息是已部署容器对应的特征信息,实际时长是已部署容器的镜像文件下载到工作节点的时长;
根据所述实际时长、所述实际特征信息的特征值和特征参数,对所述估计模型进行训练,得到所述特征参数的特征参数值。
3.根据权利要求1或2所述的方法,其特征在于,
所述特征信息包括以下之一或者任意组合:
所述目标工作节点对应的网络带宽;
所述目标工作节点对应的节点名称;
所述镜像文件所在仓库的地址信息;
所述镜像文件的大小;
所述镜像文件的文件名称。
4.根据权利要求1或2所述的方法,其特征在于,
所述估计模型包括线性回归模型或者深度学习模型。
5.根据权利要求1或2所述的方法,其特征在于,
所述容器具体为Pod中的容器,所述方法应用于Kubernetes集群,所述Kubernetes集群包括多个工作节点,且每个工作节点能够部署多个Pod。
6.一种容器扩容装置,其特征在于,所述装置包括:
获取模块,用于获取待扩容的容器对应的特征信息;将所述特征信息的特征值输入估计模型,得到所述容器的镜像文件下载到目标工作节点的预计时长;其中,预计时长通过估计模型获得,所述估计模型的输入为特征信息的特征值,输出为预计时长,所述估计模型是通过历史数据训练得到;
确定模块,用于根据所述容器的扩容时间和所述预计时长确定所述镜像文件的加载时间,所述加载时间与所述预计时长之和不大于所述扩容时间;
处理模块,用于在所述加载时间,将所述镜像文件下载到所述目标工作节点;在所述扩容时间,根据所述镜像文件将所述容器部署到所述目标工作节点。
7.根据权利要求6所述的装置,其特征在于,
所述获取模块根据历史数据训练得到所述估计模型时具体用于:
从历史数据中获取实际特征信息和实际时长;实际特征信息是已部署容器对应的特征信息,实际时长是已部署容器的镜像文件下载到工作节点的时长;
根据所述实际时长、所述实际特征信息的特征值和特征参数,对所述估计模型进行训练,得到所述特征参数的特征参数值。
8.根据权利要求6或7所述的装置,其特征在于,
所述特征信息包括以下之一或者任意组合:
所述目标工作节点对应的网络带宽;
所述目标工作节点对应的节点名称;
所述镜像文件所在仓库的地址信息;
所述镜像文件的大小;
所述镜像文件的文件名称。
9.根据权利要求6或7所述的装置,其特征在于,
所述估计模型包括线性回归模型或者深度学习模型。
10.根据权利要求6或7所述的装置,其特征在于,
所述容器具体为Pod中的容器,所述装置应用于Kubernetes集群,所述Kubernetes集群包括多个工作节点,且每个工作节点能够部署多个Pod。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911113791.8A CN110958138B (zh) | 2019-11-14 | 2019-11-14 | 一种容器扩容方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911113791.8A CN110958138B (zh) | 2019-11-14 | 2019-11-14 | 一种容器扩容方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110958138A true CN110958138A (zh) | 2020-04-03 |
CN110958138B CN110958138B (zh) | 2022-03-25 |
Family
ID=69977283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911113791.8A Active CN110958138B (zh) | 2019-11-14 | 2019-11-14 | 一种容器扩容方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110958138B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214330A (zh) * | 2020-11-04 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 集群中主节点的部署方法、装置及计算机可读存储介质 |
CN112882794A (zh) * | 2021-02-25 | 2021-06-01 | 重庆紫光华山智安科技有限公司 | pod扩容方法、装置、节点及存储介质 |
CN115208872A (zh) * | 2021-04-09 | 2022-10-18 | 顺丰科技有限公司 | 边缘云镜像数据处理方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130290626A1 (en) * | 2012-04-30 | 2013-10-31 | Lsi Corporation | Melthods and systems for instantaneous online capacity expansion |
CN108958927A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 容器应用的部署方法、装置、计算机设备和存储介质 |
CN109901912A (zh) * | 2019-03-01 | 2019-06-18 | 厦门容能科技有限公司 | 一种推荐云主机配置的方法 |
CN110018878A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种分布式系统数据加载方法以及装置 |
-
2019
- 2019-11-14 CN CN201911113791.8A patent/CN110958138B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130290626A1 (en) * | 2012-04-30 | 2013-10-31 | Lsi Corporation | Melthods and systems for instantaneous online capacity expansion |
CN110018878A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种分布式系统数据加载方法以及装置 |
CN108958927A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 容器应用的部署方法、装置、计算机设备和存储介质 |
CN109901912A (zh) * | 2019-03-01 | 2019-06-18 | 厦门容能科技有限公司 | 一种推荐云主机配置的方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214330A (zh) * | 2020-11-04 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 集群中主节点的部署方法、装置及计算机可读存储介质 |
CN112882794A (zh) * | 2021-02-25 | 2021-06-01 | 重庆紫光华山智安科技有限公司 | pod扩容方法、装置、节点及存储介质 |
CN115208872A (zh) * | 2021-04-09 | 2022-10-18 | 顺丰科技有限公司 | 边缘云镜像数据处理方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110958138B (zh) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111290828A (zh) | 使用容器编排服务进行动态路由 | |
CN106371889B (zh) | 一种调度镜像的高性能集群系统实现方法及装置 | |
US11442830B2 (en) | Establishing and monitoring programming environments | |
US9535754B1 (en) | Dynamic provisioning of computing resources | |
CN105426223B (zh) | 应用加载方法和装置 | |
US20220329651A1 (en) | Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same | |
CN111459610B (zh) | 一种模型部署方法和装置 | |
CN110958138B (zh) | 一种容器扩容方法及装置 | |
US20050108687A1 (en) | Context and content sensitive distributed application acceleration framework | |
CN113204353A (zh) | 一种大数据平台组件部署方法及装置 | |
US20230418681A1 (en) | Intelligent layer derived deployment of containers | |
WO2020131532A1 (en) | Automated parenting of work items in a resource management structure | |
US20220374267A1 (en) | Cloud infrastructure recommendations to deploy pods | |
CN110287004B (zh) | 基于docker容器技术的基础环境镜像预热方法及装置 | |
CN115708061A (zh) | 服务器部署模型的方法、模型处理方法和装置 | |
CN113742646A (zh) | 将单语言复合函数编译为单个实体 | |
CN113608754A (zh) | 服务实例化方法、装置及电子设备 | |
CN112232027A (zh) | 一种符号翻译方法、装置、设备和计算机可读存储介质 | |
CN111274211A (zh) | 应用文件的存储方法、装置及系统 | |
Lehtinen | Scaling a Kubernetes Cluster | |
Straesser et al. | Kubernetes-in-the-Loop: Enriching Microservice Simulation Through Authentic Container Orchestration | |
US20230401087A1 (en) | Method and system for automated migration of high performance computing application to serverless platform | |
EP3985506B1 (en) | Utilizing models for concurrently discovering network resources of a network | |
CN116701410B (zh) | 数联网数据语用内存状态数据的存储方法及系统 | |
CN112035174B (zh) | 运行web服务的方法、装置及计算机存储介质 |
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 |