CN109542623B - 虚拟系统在服务器中的优化部署方法 - Google Patents

虚拟系统在服务器中的优化部署方法 Download PDF

Info

Publication number
CN109542623B
CN109542623B CN201811396320.8A CN201811396320A CN109542623B CN 109542623 B CN109542623 B CN 109542623B CN 201811396320 A CN201811396320 A CN 201811396320A CN 109542623 B CN109542623 B CN 109542623B
Authority
CN
China
Prior art keywords
antibody
antibodies
population
group
server
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.)
Active
Application number
CN201811396320.8A
Other languages
English (en)
Other versions
CN109542623A (zh
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.)
Army Engineering University of PLA
Original Assignee
Army Engineering University of PLA
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 Army Engineering University of PLA filed Critical Army Engineering University of PLA
Priority to CN201811396320.8A priority Critical patent/CN109542623B/zh
Publication of CN109542623A publication Critical patent/CN109542623A/zh
Application granted granted Critical
Publication of CN109542623B publication Critical patent/CN109542623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • 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/4557Distribution of virtual machine instances; Migration and load balancing
    • 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)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Genetics & Genomics (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种虚拟系统在服务器中的优化部署方法,包括:步骤S10:获得待优化函数的包括n个抗体的初始化抗体群;步骤S20:基于初始化抗体群获得优势抗体群和记忆抗体群;步骤S30:基于优势抗体群和记忆抗体群获得包括n个抗体的迭代抗体群;步骤S40:判断迭代次数是否达到预定值,若是,则执行步骤S50,若否则将所述迭代抗体群作为初始抗体群再次执行步骤S20和步骤S30;以及步骤S50:计算所述迭代抗体群中所有抗体的适应度值,选取适应度值最小的抗体作为最优解,其中,所述抗体为待优化函数的解,所述抗体的适应度值为所述抗体对应的待优化函数的值。

Description

虚拟系统在服务器中的优化部署方法
技术领域
本发明涉及计算机技术领域,具体涉及一种多个虚拟系统在多个服务器中的优化部署方法。
背景技术
云环境下的虚拟系统,例如是虚拟训练系统,是将包括软件资源、硬件资源和仿真资源在内的资源进行封装,以虚拟机为载体向用户提供基于数据处理、建模仿真、交互式操作等的服务。大量虚拟系统在服务器集群上如何部署,既可以保证系统可靠性,又能提升资源利用率,降低硬件资源开销与能源消耗,是需要重点考虑的问题。
发明内容
鉴于上述技术问题,为了克服上述现有技术的不足,本发明提出了一种虚拟系统在服务器中的优化部署方法。
本发明一方面提供一种虚拟系统在服务器中的优化部署方法,包括:步骤S10:获得待优化函数的包括n个抗体的初始化抗体群;步骤S20:基于初始化抗体群获得优势抗体群和记忆抗体群;步骤S30:基于优势抗体群和记忆抗体群获得包括n个抗体的迭代抗体群;步骤S40:判断迭代次数是否达到预定值,若是,则执行步骤S50,若否则将所述迭代抗体群作为初始抗体群再次执行步骤S20和步骤S30;以及步骤S50:计算所述迭代抗体群中所有抗体的适应度值,选取适应度值最小的抗体作为最优解,其中,所述抗体为待优化函数的解,所述抗体的适应度值为所述抗体对应的待优化函数的值,n为正整数,且n≥2。
在一些实施例中,所述待优化函数为:
Figure GDA0004233574280000021
所述优化函数满足的限制条件为:
Figure GDA0004233574280000022
其中,i表示服务器的编号,i∈{1,2,…,M},M为正整数,且M≥2;j表示虚拟系统的编号,j∈{1,2,…,N},N为正整数,且N≥2;Si表示编号为i的服务器是否部署有虚拟系统,K为当前已启动服务器的数量,ui为服务器i的综合资源利用率,ρt表示类型t的虚拟系统在服务器中的离散度,t∈{1,2,…,T},T为虚拟系统的虚拟化技术类型总数;ω1、ω2和ω3为权重系数,且有ω123=1,hj表示编号为j的虚拟系统的虚拟化技术类型,Hi表示编号为i的服务器的虚拟化技术类型,j→i表示将虚拟系统j部署到服务器i中,aj表示编号为j的虚拟系统需要占用的物理资源,Ai表示编号为i的服务器的物理资源。
在一些实施例中,所述抗体可以采用向量X=[x1,x2……,xj]表示,中xj表示编号为j的虚拟系统所在服务器的编号。
在一些实施例中,所述步骤S10包括:步骤S101:根据虚拟系统数量和服务器数量生成包括n个抗体的随机抗体群;步骤S102:计算所述随机抗体群中各抗体的反向抗体;步骤S103:计算所述随机抗体群中各抗体与其反向抗体的适应度值;步骤S104:对所述随机抗体群中每个抗体,比较抗体的适应度值与其反向抗体的适应度的值,若抗体的适应度值大于其反向抗体的适用度值,则采用所述反向抗体代替所述随机抗体群中的该抗体,否则保留所述随机抗体群中的该抗体,由此获得初始抗体群。
在一些实施例中,所述抗体X=[x1,x2……,xj]的反向抗体为Y=[y1,y2……,yj],其中yk=M-xk,k∈{1,2,…,j}。
在一些实施例中,所述步骤S20包括:步骤S201:根据适应度值选取所述初始抗体群中的n个抗体中的适应度值较小的
Figure GDA0004233574280000031
个抗体作为/>
Figure GDA0004233574280000032
个第一优势抗体;步骤S202:根据虚拟系统数量和服务器数量生成/>
Figure GDA0004233574280000033
个随机抗体代替所述初始抗体群中的第一优势抗体,获得第一抗体群;步骤S203:计算所述/>
Figure GDA0004233574280000034
个第一优势抗体中适应度值最小的第一优势抗体与第一抗体群中的各抗体的抗体亲和度;步骤S204:按照所述抗体亲和度的升序顺序对所述第一抗体群中的抗体进行排列,前/>
Figure GDA0004233574280000035
个抗体作为优势抗体群,剩余抗体作为记忆抗体群。
在一些实施例中,所述抗体与抗体的亲和度采用抗体和抗体的欧式距离来表示。
在一些实施例中,所述步骤S30包括:步骤S301:依据预设克隆规模对所述优势抗体群和所述记忆抗体群克隆m次,合并为包括m·n个抗体的第二抗体群,m为正整数,且m≥2;步骤S302:随机选取第一优势抗体的部分片段替换第二抗体群中抗体的相应片段,获得第三抗体群;步骤S303:以概率q对第三抗体群中的抗体进行变异,获得第四抗体群;步骤S304:对第四抗体群中的抗体按照适应度值的升序进行排列,选取前n个抗体组成第五抗体群;步骤S305:将所述
Figure GDA0004233574280000036
个第一优势抗体替换第五抗体群中适应度值较大的/>
Figure GDA0004233574280000042
个抗体获得迭代抗体群。
在一些实施例中,所述变异是按照概率q选择第三抗体群中的抗体,采用根据虚拟系统数量和服务器数量生成的随机抗体进行代替,所述概率q为迭代次数c的高斯函数:
Figure GDA0004233574280000041
在一些实施例中,所述部分片段的长度为
Figure GDA0004233574280000043
附图说明
图1为本发明一实施例提供的虚拟系统在服务器中的优化部署方法的流程图;
图2为图1中步骤S10的具体步骤流程图;
图3为图1中步骤S20的具体步骤流程图;以及
图4为图1中步骤S30的具体步骤流程图。
具体实施方式
本发明某些实施例于后方将参照所附附图做更全面性地描述,其中一些但并非全部的实施例将被示出。实际上,本发明的各种实施例可以许多不同形式实现,而不应被解释为限于此数所阐述的实施例;相对地,提供这些实施例使得本发明满足适用的法律要求。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
当前,多个虚拟系统在多个服务器中的部署问题可以看做多目标优化问题,通常釆用启发式算法或遗传算法来实现多目标解的优化。然而启发式算法的搜索过程通常容易陷入局部最优,缺乏全局寻优能力;遗传算法虽然具有大范围全局搜索能力,但是其搜索速度较慢,局部搜索效果较差。且遗传算法是一种“生成+检测”的迭代搜索算法,申请人发现遗传算法中的两个主要算子—交叉算子和变异算子—都是以一定概率随机、无方向地进行迭代运算。因此遗传算法中的群体在进化过程中,会不可避免地出现退化的现象,并且在一些恶劣情况下出现退化的概率比较大。
本发明提供一种采用人工免疫算法来优化在多个服务器中部署多个虚拟系统,保证了算法解空间的完备性,不易陷入局部最优解,提升了最优解的质量;实现了快速寻优,提升了寻优速度;优化了虚拟系统在服务器集群中的部署位置,保证了系统资源利用率和系统可靠性。
本发明一实施例提供一种虚拟系统,例如是虚拟训练系统,在服务器中的优化部署方法,其将多个虚拟系统部署在多个服务器中,且该优化方法可以快速获得优化的部署方案,在保证系统的可靠性的同时,提升了资源利用率,降低了硬件资源开销与能源消耗。
如图1所示,本公开提供的一种虚拟系统在服务器中的优化部署方法包括以下步骤:
步骤S10:获得待优化函数的包括n个抗体的初始化抗体群;
步骤S20:基于初始化抗体群获得优势抗体群和记忆抗体群;
步骤S30:基于优势抗体群和记忆抗体群获得包括n个抗体的迭代抗体群;
步骤S40:判断迭代次数是否达到预定值,若是,则执行步骤S50,若否则将所述迭代抗体群作为初始抗体群再次执行步骤S20和步骤S30;以及
步骤S50:计算所述迭代抗体群中所有抗体的适应度值,选取适应度值最小的抗体作为最优解,
其中,所述抗体为待优化函数的解,所述抗体的适应度值为所述抗体对应的待优化函数的值,n为正整数,且n≥2。
本实施例中,每进行一次步骤S20和S30即记为一次迭代,迭代次数的预定值可以40,申请人经多次实验发现迭代次数的预定值为40时,即可获得多个虚拟系统在多个服务器中的最优部署。
以下具体解释将多个虚拟系统,例如为N个,优化部署在多个服务器,例如为M个,的问题转化为求待优化问题最优解,其中M,N均为正整数,且M,N≥2。
分析云环境中任务-资源需求特点以及虚拟系统在服务器中的部署特点,虚拟系统部署遵从以下几项原则:
(1)对于任意要部署到服务器i中的虚拟系统j,首先应保证其采用的虚拟化技术与该服务器所应用的虚拟化技术相同;
可以记为:hj=Hi
其中,i表示服务器的编号,i∈{1,2,…,M},Hi表示服务器i的虚拟化技术类型;j表示虚拟系统的编号,j∈{1,2,…,N},hj表示虚拟系统的虚拟化技术类型,虚拟化技术类型例如可以为VMware、Citrix或者KVM等虚拟化类型。
(2)对于所有部署到服务器i中的虚拟系统j来说,为其分配的不同类型的资源(CPU、内存、GPU、带宽等)总量均应小于该服务器所拥有的对应类型的资源总量;
可记为:∑j→iaj≤Ai,其中j→i表示将虚拟系统j部署到服务器i中,aj表示编号为j的虚拟系统即虚拟系统j需要占用的物理资源,Ai表示编号为i的服务器及服务器i的物理资源。
(3)系统稳定性原则,各服务器中物理资源利用率不宜超过85%,过高的资源利用率会导致服务器上承载虚拟系统运行效果和任务处理能力的下降,进而影响训练系统稳定性。
可记为:∑j→iaj≤Ai×85%,其中j→i表示将虚拟系统j部署到服务器i中,aj表示编号为j的虚拟系统即虚拟系统j需要占用的物理资源,Ai表示编号为i的服务器及服务器i的物理资源。
虚拟系统优化部署的目标包括以下四点:
(1)承载虚拟系统的服务器数量的最优化,以降低硬件资源开销与服务器运行时的能源消耗;
可记为:
Figure GDA0004233574280000071
(2)服务器资源利用效率的最优化,在虚拟系统稳定性的基础上最大化已启动服务器的资源利用率;
可记为:
Figure GDA0004233574280000072
K为当前已启动服务器的数量,ui为服务器i的综合资源利用率,可表示为:
Figure GDA0004233574280000073
其中wi(i=1,2,3,4)为资源属性权重,/>
Figure GDA0004233574280000074
分别表示第i个服务器的CPU、GPU、内存和带宽的资源利用率。
(3)虚拟系统可用性的最优化,通过增大同类虚拟系统的分布离散度来降低由于服务器关机或者维护而造成的某一类虚拟系统不可用的情况;
主要手段是将同一类型的虚拟系统分布到不同服务器上,降低虚拟系统在服务器中的聚集度。这样,当某台服务器发生故障后,可以利用其它服务器上的相同类型虚拟系统继续提供服务,减少服务不可用情况的次数。定义虚拟系统离散度ρ为虚拟系统在服务器中的分布分散程度,其中类型t的虚拟系统在服务器中的离散度ρt可表示为:
Figure GDA0004233574280000081
其中T为虚拟系统的虚拟化技术类型总数,K为已启动服务器的数量,Kt为类型t对应的虚拟系统总数量,Mt为承载类型t虚拟系统的服务器数量。
虚拟系统离散度ρ为:
Figure GDA0004233574280000082
因而对于目标(3),最大化离散度ρ可形式化描述为:
Figure GDA0004233574280000083
(4)减少后期由于虚拟系统不可用导致的虚拟系统迁移次数,降低虚拟系统迁移带来的资源和时间开销。
对于目标(4),由于虚拟系统迁移一般发生在该虚拟系统所在服务器发生故障导致无法提供服务的情况下,适当分散虚拟系统在服务器中的部署位置,当服务器出现故障时,可以利用其它服务器中的同类虚拟系统提供训练服务,在一定程度上减少虚拟系统的迁移操作,因此该目标可同样记为
Figure GDA0004233574280000084
因此,总体目标是在保证虚拟系统正常工作的基础上实现资源利用率的最大化,虚拟系统的优化配置可以描述为:
Figure GDA0004233574280000091
变换一种形式,记为待优化函数:
Figure GDA0004233574280000092
其中ω1、ω2和ω3为权重系数,且有ω123=1。
该优化模型应满足限制条件:
Figure GDA0004233574280000093
简化为:
Figure GDA0004233574280000094
其中,i∈{1,2,…,M},j∈[1,2,…,N}分别为服务器和虚拟系统编号,M和N分别为服务器和虚拟系统数量。
上述待优化函数的解,即抗体可以采用向量X=[x1,x2……,xj]表示,中xj表示编号为j的虚拟系统所在服务器的编号。
例如,将5个虚拟系统部署到3台服务器上,则可能的向量为[1,1,2,2,2]。
如图2所示,前述步骤S10包括以下具体步骤:
步骤S101:根据虚拟系统数量和服务器数量生成包括n个抗体的随机抗体群;
具体地,随机地将N个虚拟系统部署至M个服务器上,随机获得n种部署方式作为随机抗体群,即前述优化函数的解群。
步骤S102:计算所述随机抗体群中各抗体的反向抗体;
具体地,一个抗体的反向抗体为计算该抗体向量中每个元素的反向数,该写反向数对应于所述抗体向量中的元素的顺序组成所述反向抗体。
反向数的计算采用如下公式计算:
元素x的反向数x*=amin+amax-x
其中,x为实数且取值范围有x∈[amin,amax]。
本实施例中,对于抗体X=[x1,x2……,xj],其反向抗体为Y=[y1,y2……,yj],其中yk=M-xk,k∈{1,2,…,j}。
步骤S103:计算所述随机抗体群中各抗体与其反向抗体的适应度值;
步骤S104:对所述随机抗体群中每个抗体,比较抗体的适应度值与其反向抗体的适应度的值,若抗体的适应度值大于其反向抗体的适用度值,则采用所述反向抗体代替所述随机抗体群中的该抗体,否则保留所述随机抗体群中的该抗体,由此获得初始抗体群。
如图3所示,所述步骤S20具体包括以下步骤:
步骤S201:根据适应度值选取所述初始抗体群中的n个抗体中的适应度值较小的
Figure GDA0004233574280000101
个抗体作为/>
Figure GDA0004233574280000102
个第一优势抗体;
其中,
Figure GDA0004233574280000103
表示对于n/2,向上取整,若n为偶数,则/>
Figure GDA0004233574280000104
若n为奇数,则/>
Figure GDA0004233574280000105
步骤S202:根据虚拟系统数量和服务器数量生成
Figure GDA0004233574280000106
个随机抗体代替所述初始抗体群中的第一优势抗体,获得第一抗体群;
其中,本步骤中形成的随机抗体可以与步骤S101中的随机抗体群中的抗体相同或不同。
步骤S203:计算所述
Figure GDA0004233574280000107
个第一优势抗体中适应度值最小的第一优势抗体与第一抗体群中的各抗体的抗体亲和度;
抗体-抗体亲和度是抗体与抗体之间亲和力的度量。在人工免疫算法中,一般指抗体之间的聚集程度,聚集程度越低,抗体-抗体亲和度越低,抗体之间的抑制作用越弱,表明抗体群的多样性越好。所述抗体与抗体的亲和度采用抗体和抗体的欧式距离来表示。
例如抗体A与抗体B之间的抗体-抗体亲和度为θ=‖A-B‖,‖·‖表示取欧式距离,即
Figure GDA0004233574280000111
其中A=[a1,a2…,aj],B=[b1,b2…,bj]。
步骤S204:按照所述抗体亲和度的升序顺序对所述第一抗体群中的抗体进行排列,前
Figure GDA0004233574280000112
个抗体作为优势抗体群,剩余抗体作为记忆抗体群。
如图4所示,步骤S30包括以下具体步骤:
步骤S301:依据预设克隆规模对所述优势抗体群和所述记忆抗体群克隆m次,合并为包括m·n个抗体的第二抗体群,m为正整数,且m≥2;
其中,预设克隆规模例如为第一抗体群规模的2倍或3倍,即例如m=2或3。
步骤S302:随机选取第一优势抗体的部分片段替换第二抗体群中抗体的相应片段,获得第三抗体群;
本步骤可以成为抗体的重组,部分片段例如是随机选取第一优势抗体中的向量中随机选取的一部分,例如对于向量A=[a1,a2,a3,a4…,aj],选取的片段例如为a2,a2,a4,用于代替被替换抗体中的第2-4个元素。其中片段中包含的元素的数量,例如是向量A的元素数量j的1/3(向上取整),即
Figure GDA0004233574280000113
本实施例中例如对第二抗体群中每个抗体均进行一次随机选取第一优势抗体的部分片段替换相应片段的操作,每次操作中,第一优势抗体的部分片段都是随机选取的,即首先随机选取一个第一优势抗体,而后随机选取该第一优势抗体的部分片段。在其他实施例中,可以仅对第二抗体群中的部分抗体进行如上操作。
步骤S303:以概率q对第三抗体群中的抗体进行变异,获得第四抗体群;
所述变异是按照概率q选择第三抗体群中的抗体,采用根据虚拟系统数量和服务器数量生成的随机抗体进行代替,所述概率q为迭代次数c的高斯函数:
Figure GDA0004233574280000121
步骤S304:对第四抗体群中的抗体按照适应度值的升序进行排列,选取前n个抗体组成第五抗体群;
步骤S305:将所述
Figure GDA0004233574280000122
个第一优势抗体替换第五抗体群中适应度值较大的
Figure GDA0004233574280000123
个抗体获得迭代抗体群。
应注意,附图中各部件的形状和尺寸不反映真实大小和比例,而仅示意本发明实施例的内容。
实施例中提到的方向用语,例如“上”、“下”、“前”、“后”、“左”、“右”等,仅是参考附图的方向,并非用来限制本发明的保护范围。并且上述实施例可基于设计及可靠度的考虑,彼此混合搭配使用或与其他实施例混合搭配使用,即不同实施例中的技术特征可以自由组合形成更多的实施例。
实施例中涉及的方法步骤并不限于其描述的顺序,各步骤的顺序根据实际需要的来进行调整。
需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种虚拟系统在服务器中的优化部署方法,其特征在于,包括:
步骤S10:获得待优化函数的包括n个抗体的初始化抗体群;
步骤S20:基于初始化抗体群获得优势抗体群和记忆抗体群;
步骤S30:基于优势抗体群和记忆抗体群获得包括n个抗体的迭代抗体群;
步骤S40:判断迭代次数是否达到预定值,若是,则执行步骤S50,若否则将所述迭代抗体群作为初始抗体群再次执行步骤S20和步骤S30;以及
步骤S50:计算所述迭代抗体群中所有抗体的适应度值,选取适应度值最小的抗体作为最优解,
其中,所述抗体为待优化函数的解,所述抗体的适应度值为所述抗体对应的待优化函数的值,n为正整数,且n≥2,
所述步骤S10包括:
步骤S101:根据虚拟系统数量和服务器数量生成包括n个抗体的随机抗体群;
步骤S102:计算所述随机抗体群中各抗体的反向抗体;
步骤S103:计算所述随机抗体群中各抗体与其反向抗体的适应度值;
步骤S104:对所述随机抗体群中每个抗体,比较抗体的适应度值与其反向抗体的适应度的值,若抗体的适应度值大于其反向抗体的适用度值,则采用所述反向抗体代替所述随机抗体群中的该抗体,否则保留所述随机抗体群中的该抗体,由此获得初始抗体群,
所述待优化函数为:
Figure FDA0004233574270000021
所述优化函数满足的限制条件为:
Figure FDA0004233574270000022
其中,i表示服务器的编号,i∈{1,2,…,M},M为正整数,且M≥2;j表示虚拟系统的编号,j∈{1,2,…,N},N为正整数,且N≥2;Si表示编号为i的服务器是否部署有虚拟系统,K为当前已启动服务器的数量,ui为服务器i的综合资源利用率,ρt表示类型t的虚拟系统在服务器中的离散度,t∈{1,2,…,T},T为虚拟系统的虚拟化技术类型总数;ω1、ω2和ω3为权重系数,且有ω123=1,
hj表示编号为j的虚拟系统的虚拟化技术类型,Hi表示编号为i的服务器的虚拟化技术类型,j→i表示将虚拟系统j部署到服务器i中,aj表示编号为j的虚拟系统需要占用的物理资源,Ai表示编号为i的服务器的物理资源。
2.根据权利要求1所述的优化部署方法,其特征在于,所述抗体采用向量X=[x1,x2……,xj]表示,中xj表示编号为j的虚拟系统所在服务器的编号。
3.根据权利要求2所述的优化部署方法,其特征在于,所述抗体X=[x1,x2……,xj]的反向抗体为Y=[y1,y2……,yj],其中yk=M-xk,k∈{1,2,…,j}。
4.根据权利要求1所述的优化部署方法,其特征在于,所述步骤S20包括:
步骤S201:根据适应度值选取所述初始抗体群中的n个抗体中的适应度值较小的
Figure FDA0004233574270000031
个抗体作为/>
Figure FDA0004233574270000032
个第一优势抗体;
步骤S202:根据虚拟系统数量和服务器数量生成
Figure FDA0004233574270000034
个随机抗体代替所述初始抗体群中的第一优势抗体,获得第一抗体群;
步骤S203:计算所述
Figure FDA0004233574270000035
个第一优势抗体中适应度值最小的第一优势抗体与第一抗体群中的各抗体的抗体亲和度;
步骤S204:按照所述抗体亲和度的升序顺序对所述第一抗体群中的抗体进行排列,前
Figure FDA0004233574270000033
个抗体作为优势抗体群,剩余抗体作为记忆抗体群。
5.根据权利要求4所述的优化部署方法,其特征在于,所述抗体与抗体的亲和度采用抗体和抗体的欧式距离来表示。
6.根据权利要求4所述的优化部署方法,其特征在于,所述步骤S30包括:
步骤S301:依据预设克隆规模对所述优势抗体群和所述记忆抗体群克隆m次,合并为包括m·n个抗体的第二抗体群,m为正整数,且m≥2;
步骤S302:随机选取第一优势抗体的部分片段替换第二抗体群中抗体的相应片段,获得第三抗体群;
步骤S303:以概率q对第三抗体群中的抗体进行变异,获得第四抗体群;
步骤S304:对第四抗体群中的抗体按照适应度值的升序进行排列,选取前n个抗体组成第五抗体群;
步骤S305:将所述
Figure FDA0004233574270000043
个第一优势抗体替换第五抗体群中适应度值较大的/>
Figure FDA0004233574270000042
个抗体获得迭代抗体群。
7.根据权利要求6所述的优化部署方法,其特征在于,所述变异是按照概率q选择第三抗体群中的抗体,采用根据虚拟系统数量和服务器数量生成的随机抗体进行代替,所述概率q为迭代次数c的高斯函数:
Figure FDA0004233574270000041
8.根据权利要求6所述的优化部署方法,其特征在于,所述部分片段的长度为
Figure FDA0004233574270000044
CN201811396320.8A 2018-11-22 2018-11-22 虚拟系统在服务器中的优化部署方法 Active CN109542623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811396320.8A CN109542623B (zh) 2018-11-22 2018-11-22 虚拟系统在服务器中的优化部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811396320.8A CN109542623B (zh) 2018-11-22 2018-11-22 虚拟系统在服务器中的优化部署方法

Publications (2)

Publication Number Publication Date
CN109542623A CN109542623A (zh) 2019-03-29
CN109542623B true CN109542623B (zh) 2023-07-07

Family

ID=65849042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811396320.8A Active CN109542623B (zh) 2018-11-22 2018-11-22 虚拟系统在服务器中的优化部署方法

Country Status (1)

Country Link
CN (1) CN109542623B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113407311A (zh) * 2021-08-20 2021-09-17 苏州浪潮智能科技有限公司 虚拟机的部署方法、装置、设备以及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103856563A (zh) * 2014-03-06 2014-06-11 南京理工大学 基于服务质量要求驱动的云计算网络资源分配方法
WO2016165392A1 (zh) * 2015-04-17 2016-10-20 华南理工大学 一种基于遗传算法的云计算资源调度方法
CN108009003A (zh) * 2017-12-01 2018-05-08 湖南女子学院 一种多目标虚拟机自适应位置选择方法、分布式云系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103856563A (zh) * 2014-03-06 2014-06-11 南京理工大学 基于服务质量要求驱动的云计算网络资源分配方法
WO2016165392A1 (zh) * 2015-04-17 2016-10-20 华南理工大学 一种基于遗传算法的云计算资源调度方法
CN108009003A (zh) * 2017-12-01 2018-05-08 湖南女子学院 一种多目标虚拟机自适应位置选择方法、分布式云系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多目标免疫算法及其在云工作流调度中的应用研究;马跃平;《硕士电子期刊》;20170715;全文 *

Also Published As

Publication number Publication date
CN109542623A (zh) 2019-03-29

Similar Documents

Publication Publication Date Title
Abbas et al. Streaming graph partitioning: an experimental study
Yan et al. Blogel: A block-centric framework for distributed computation on real-world graphs
US10909654B2 (en) Management of graphics processing units in a cloud platform
US20180357541A1 (en) Training task optimization system, training task optimization method and non-transitory computer readable medium for operating the same
CN110474966B (zh) 处理云平台资源碎片的方法及相关设备
US9058540B2 (en) Data clustering method and device, data processing apparatus and image processing apparatus
US11055139B2 (en) Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster
CN111475250B (zh) 一种云环境下的网络优化方法和装置
CN106502761B (zh) 一种资源高效利用的虚拟机部署方法
CN105159779A (zh) 提高多核cpu数据处理性能的方法和系统
CN109542623B (zh) 虚拟系统在服务器中的优化部署方法
CN110719335A (zh) 天基云雾计算架构下的资源调度方法、系统和存储介质
CN106484532A (zh) 面向sph流体模拟的gpgpu并行计算方法
Mueller-Bady et al. Optimization of monitoring in dynamic communication networks using a hybrid evolutionary algorithm
KR101661475B1 (ko) 이기종 클러스터 상에서 하둡 부하 분산 방법, 이를 수행하기 위한 기록 매체 및 하둡 맵리듀스 시스템
CN112685167A (zh) 资源使用方法、电子设备和计算机程序产品
CN109062657A (zh) 基于粒子群优化的Docker容器调度方法
Chowdhury et al. Clustered based VM placement strategies
CN110704693A (zh) 分布式图计算系统和分布式图计算方法
Zhang et al. A virtual network embedding algorithm based on RBF neural network
JP6219771B2 (ja) 負荷分散装置、負荷分散方法、および、負荷分散システム
KR20110067377A (ko) 게임 서버의 로드 밸런싱 방법 및 장치
CN109947530B (zh) 一种针对云平台的多维度虚拟机映射方法
CN117389747B (zh) 分布式数据库的数据共享方法、电子设备和存储介质
US10630957B2 (en) Scalable distributed computation framework for data-intensive computer vision workloads

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