1.一种基于周期特征的容器云调度方法,其特征在于:包括以下步骤:S1:周期性地采集容器的系统资源使用量,构建在线容器时域及频域资源模型,分析获取容器资源的周期特征;
S2:依据容器资源的周期特征,建立分布式BFD调度策略进行容器分配,为每个容器获取资源利用率最高节点;
S3:在部署节点预创建新容器,并切换流量至新容器完成容器迁移。
2.根据权利要求1所述的基于周期特征的容器云调度方法,其特征在于:步骤S1中具体包括以下步骤:S11:部署数据采集器定时采集每个容器的CPU、内存负载信息,并存储于时间序列数据库内,采集间隙固为τ0,资源负载表达式为Cir(n),其中i为容器全局逻辑id,r为资源类型;
S12:构建在线容器时域及频域资源模型,对负载序列进行频域分析,求出容器负载各周期功率并筛选出所有显著周期p′,得到候选周期集合Sir:Sir={p:Wir(p)>Yir},其中Yir为容器i中资源r的负载的显著周期的功率阈值,Wir(p)为容器i资源r周期p的功率;
S13:计算所有候选周期的得分Fir(p)分值,Fir(p)为容器i中资源r周期p的得分,计算公式为:其中 分别表示周期p在采样长度为N的情况下频域、时域得分权重系数,由实验得出;ACF(p)表示周期p的循环相关性;
S14:将所有周期按照Fir(p)的高低进行排序,筛选出得分最高的一个周期作为容器i资源r的特征周期p0,并以最新采集的3个周期资源负载的平均值作为容器i资源r的代表序列Pir(n)。
3.根据权利要求1所述的基于周期特征的容器云调度方法,其特征在于:步骤S2具体包括以下步骤:S21:K个分布式调度器组成分布式BFD调度系统,每个调度器负责1/K个集群节点的资源利用率Rjr计算任务,K个调度器计算各节点的资源利用率Rjr后,由最后一个调度器对所有结果进行集合,并从高到低排序得到集合R′jr,其中所述Rjr表示节点j中资源r的资源利用率,其计算方法为:S22:从集合R′jr选出第一个能满足容器i0资源的节点j0作为最佳节点j,其判断公式为:
4.根据权利要求1所述的基于周期特征的容器云调度方法,其特征在于:所述步骤S3具体包括以下步骤:S31:将容器i0迁移到节点j0上时,首先判断容器i0是否已经在j0上运行,若是则容器i0已经处于最佳位置无需进行迁移;
S32:在节点j0上下载容器i0的镜像并且创建新容器i′0,循环检测新容器的服务探针,服务就绪后修改容器i0服务路由将流量导入新容器i′0,完成迁移过程。