考虑共因和虚拟机故障迁移的云计算系统可靠性建模方法与流程

文档序号:12469781阅读:320来源:国知局
考虑共因和虚拟机故障迁移的云计算系统可靠性建模方法与流程
本发明属于网络可靠性
技术领域
,具体涉及一种考虑云计算共因故障和虚拟机故障迁移的可靠性建模方法。
背景技术
:云计算作为一种新的计算模型,由于其高可用性和高可扩展性等优点,已经得到广泛应用。然而,云计算系统故障频发也让人们关注其可靠性问题。虚拟化是云计算系统的关键特征,其通过在物理服务器上创建多个虚拟机(VM)实现,实现了云计算基础设施的共享、提高了资源利用率,由于服务器故障会造成运行在其中的多个虚拟机共同故障,因此,云计算系统的可靠性建模需要考虑共因故障。同时,为了提高系统的可用性,使系统运行过程中有故障发生的情况下仍能保证不间断的服务,云计算系统使用了虚拟机故障迁移技术,即当源主机上的虚拟机发生故障时,通过虚拟机迁移技术将运行在其中的任务迁移到其他正常的目的主机继续执行。虚拟机迁移作为云计算系统特有的一种容错方式,通过故障后任务的迁移实现将故障影响最小化,而虚拟机的迁移又存在迁移失败的可能,成为云计算系统的可靠性建模的难点,但鲜有文献针对虚拟机迁移对云计算系统可靠性的影响进行研究。有一些学者对云计算系统的可靠性建模进行了研究。在云计算基础设施层的可靠性方面,Qiu等(参考文献[1]:QiuX,DaiY,XiangY,etal.AHierarchicalCorrelationModelforEvaluatingReliability,Performance,andPowerConsumptionofaCloudService[J].IEEETransactionsonSystems,Man,andCybernetics:Systems,2016,46(3):401-412.)考虑了服务器故障引起的虚拟机共因故障,其可靠性定义为至少一个虚拟机能提供服务的概率,然而事实上,要提供可靠的云服务,需要一定数量的服务器/虚拟机,同时,在其可靠性建模中没有云计算的容错特征。在云计算服务可靠性方面,谭峰(参考文献[2]:谭峰.云计算可靠性评估与任务调度方法研究[D].电子科技大学,2012.)对云服务可靠性即云计算系统对用户请求能否在规定时间内给出响应的概率进行建模,考虑了云计算系统中计算节点和通信链路采用容错机制带来的影响,建立了云服务可靠性模型,然而其没有考虑云计算系统的虚拟化特征,也没有针对具体的容错方法进行建模。技术实现要素:本发明的目的是为了解决云计算的可靠性建模中对虚拟机故障迁移考虑不周的问题,在考虑共因故障的云计算系统可靠性模型的基础上,针对虚拟机迁移的容错策略,实现给定需求下考虑共因和虚拟机故障迁移的云计算系统可靠性建模。本发明提供的考虑共因和虚拟机故障迁移的云计算系统可靠性建模方法,适用于如下情况:(1)服务器被划分为多个虚拟机,划分策略为一个核对应一个虚拟机,即服务器的核与虚拟机之间为一对一映射关系。(2)服务器的故障会引起其上所有虚拟机的故障,服务器和不同服务器的虚拟机之间故障独立。(3)使用以负载均衡为目标的云计算资源分配策略,即在资源分配时将队列中等待执行的任务优先分配给负载较轻的服务器节点。(4)当执行任务的虚拟机节点故障时,将运行在其中的任务迁移到其他正常服务器上(包括服务器正常和其上运行的虚拟机全部正常)继续运行;如服务器上已有虚拟机出现故障,则不会选择迁移到该服务器上的其他虚拟机。(5)迁移策略如下:将故障虚拟机迁移到其他服务器上的虚拟机。每个虚拟机迁移次数不限,直到没有剩余空间供继续迁移。本发明的考虑共因和虚拟机故障迁移的云计算系统可靠性建模方法,实现步骤为:步骤一,建立云计算系统,使用以负载均衡为目标的云计算资源分配策略;设云计算系统中包含n类服务器,第i类服务器的个数为mi个且每个服务器含有pi个核,每个核对应一个虚拟机;其中,第i类服务器故障服从失效率为λS(i)的指数分布,服务器之间故障独立,第i类服务器下虚拟机的故障服从失效率为λV(i)的指数分布,n、mi、pi均为正整数,i=1,2,…,n。假设完成任务需要z个虚拟机,使用上述分配策略将任务分配给云计算系统中的z个虚拟机。步骤二:对云计算系统进行状态空间划分,并计算各状态存在概率;设Pα(i,q)表示第i类单台服务器第q种状态的存在概率,单台服务器状态划分为三类:单台服务器中虚拟机全部不可用、单台服务器中虚拟机全部可用、单台服务器中有j个可用虚拟机,1≤j≤pi-1;第i类服务器的状态由mi台服务器的状态组合而成,设第i类服务器在第l种状态组合对应的存在概率为Pi,l;在分别得到n类服务器的状态组合及其存在概率后,枚举整个云计算系统的状态,将不同类服务器状态对应的存在概率相乘,得到云计算系统在n类服务器状态枚举后的状态组合存在概率;设云计算系统的第k种状态组合的存在概率为P(k);步骤三:确定云计算系统可靠性建模方式;云计算系统在给定工作时间内可靠需要满足两个条件:(1)正常工作的虚拟机数目不小于z;(2)执行工作的虚拟机若出现故障,能成功迁移;云计算系统可靠度R=Pr{正常工作的虚拟机数量满足需求}-Pr{正常虚拟机数量满足需求但需要迁移且无法迁移成功}。步骤四:确定正常工作的虚拟机数量满足需求的概率RCCF。其中,Ak为判别变量,步骤五:计算云计算系统中正常虚拟机数目大于等于z、需要迁移且迁移失败的概率;对于正常虚拟机数目大于等于z的状态,设状态k中需要迁移的虚拟机数目为Xk,供迁移的位置数为Yk;Xk的取值范围为则通过迁移不能满足使用要求的概率其中,f为虚拟机迁移成功概率;步骤六:计算给定需求下考虑共因和虚拟机故障迁移的云计算系统可靠度R;R=RCCF-Σk=1MP(k)Q(k)]]>其中,M为云计算系统对应的状态空间模型中正常工作的虚拟机数目满足要求,但分配到任务的虚拟机存在故障而需要迁移的状态数目;计算如下:M=Σj=0Σipimi-zCΣipimij-2Σipimi-z.]]>本发明的优点与积极效果在于:(1)本发明综合考虑云计算系统中由服务器故障引起的多个虚拟机共因故障和虚拟机迁移的容错策略,这类共因故障和虚拟机故障迁移是云计算特有的方法,成为云计算系统可靠性建模的难点,本发明基于状态空间模型,解决了其他模型对这种共因故障和虚拟机故障迁移考虑不周的问题;(2)本发明方法对状态空间进行了化简,提高了建模效率。附图说明图1是本发明的考虑共因故障和虚拟机故障迁移的云计算系统可靠性建模方法的流程示意图;图2是云计算系统结构示意图;图3本发明实施例中的云计算系统组成结构图。具体实施方式下面将结合附图和实施例对本发明作进一步的详细说明。本发明提出一种考虑共因故障和虚拟机故障迁移的云计算系统可靠性建模方法,流程如图1所示,包括如下步骤:步骤一:建立云计算系统并进行资源分配。建立云计算系统,如图2所示,云计算系统的基础设施包含n类服务器,第i类服务器的个数为mi个且每个服务器上含有pi个核,每个核对应一个虚拟机,其中第i类服务器故障服从失效率为λS(i)的指数分布,服务器之间故障独立;第i类服务器下虚拟机的故障服从失效率为λV(i)的指数分布。n、mi、pi均为正整数,i=1,2,…,n。服务器的故障会引起其上所有虚拟机的故障,服务器和不同服务器的虚拟机之间故障独立。云计算操作系统(CloudOS)是云计算系统的核心,接收到来自用户的服务请求后将其转化为多个子任务,通过虚拟机分配器分配到各个虚拟机执行。本发明采用以负载均衡为目标的云计算资源分配策略,即在资源分配时将队列中等待执行的任务优先分配给负载较轻的服务器节点。假设完成任务需要z个虚拟机,使用上述分配策略将任务分配给云计算系统中的z个虚拟机。步骤二:对云计算系统通过状态空间模型划分为多个状态,并计算各状态存在概率。每个虚拟机有故障和正常两种状态,分别用1和0表示。对于单台服务器,虚拟机数目为pi,因此每台服务器包含种状态,每种状态由pi个0或1组成,枚举出具体状态空间如下:采用故障树法计算同类单台服务器状态组合的存在概率,可参考文献[3](李琼,李瑞莹,黄宁.考虑共因故障的云计算系统可靠性建模方法.中国专利申请号201610053266.1)来计算,令Pα(i,q)表示第i类单台服务器第q种状态的存在概率,将单台服务器状态划分为三类,分别为:(1)单台服务器中虚拟机全部不可用,存在概率其中中间参数(2)单台服务器中虚拟机全部可用,存在概率(3)单台服务器中可用虚拟机数目为j(1≤j≤pi-1),存在的概率Pα(i,q)=RS(i)[RV(i)]j[1-RV(i)]pi-j.]]>得到单台服务器的状态组合及各状态存在概率后,第i类服务器的状态由mi台服务器的状态组合而成,第i类服务器状态总数目为由于服务器间故障相互独立,可以相乘得到第i类服务器状态对应的概率,假设第i类服务器的第l种状态组合中,单台服务器的种状态存在的个数分别为则第i类服务器在第l种状态组合对应的存在概率为Pa(i,q)为单台服务器的第q种状态的存在概率,此处l为整数,取值范围为分别得到n类服务器的状态组合及其存在概率后,可以枚举整个云计算系统的状态,即n类服务器的不同状态,状态总数目为考虑不同服务器间状态独立性,可将不同类服务器状态对应的存在概率相乘,得到云计算系统在n类服务器状态枚举后的状态组合存在概率。当第i类服务器的状态取ωi时,云计算系统的第k种状态组合的存在概率此处k为整数,取值范围为云计算系统的第k种状态组合就是云计算系统的状态k,下面在描述中出现的P(k)是Pk的另一种表示方式。步骤三:确定云计算系统可靠性建模方式。要使云计算系统在给定工作时间内可靠需要满足两个条件:(1)系统中正常工作的虚拟机数目不小于z。(2)执行工作的虚拟机若出现故障,则要能成功迁移。考虑共因和虚拟机故障迁移的云计算系统可靠性通过如下方式计算:云计算系统可靠度R=Pr{正常工作的虚拟机数量满足需求}-Pr{正常虚拟机数量满足需求但需要迁移且无法迁移成功}。Pr表示概率计算。步骤四:正常工作的虚拟机数量满足需求的概率RCCF计算。步骤三中“正常工作的虚拟机数量满足需求的概率”就是仅考虑共因故障的云计算系统可靠度,可参考文献[3]计算,即所有正常工作的虚拟机满足需求的状态概率总和,即其中Pk为步骤二中计算得的云计算系统状态k的存在概率;Ak为判别变量,步骤五:分状态计算各状态的迁移失败概率。系统执行任务过程中,如果正在承担任务的虚拟机或者服务器出现故障,为了减少故障对云计算系统的影响,对无法正常工作的虚拟机进行迁移,将其执行的任务迁移到其他服务器的虚拟机上继续执行。虚拟机的迁移存在失败的可能性,假设迁移成功概率为f。本发明在应用时,当执行任务的虚拟机节点故障时,将运行在其中的任务迁移到其他正常服务器上继续运行,所迁移到的服务器正常、其上运行的虚拟机也全部正常;如服务器上已有虚拟机出现故障,则不会选择迁移到该服务器上的其他虚拟机。在将故障虚拟机迁移到其他正常服务器上的虚拟机时,每个虚拟机迁移次数不限,直到没有剩余空间供继续迁移。这里计算云计算系统中正常虚拟机数目大于等于z、需要迁移且迁移失败的概率。注意到对于那些正常虚拟机数目大于等于z的状态,但其执行任务的虚拟机都正常,不需要迁移。这类状态的数目为:因此需要通过迁移确定能否满足使用需求的状态数量是:这样化简效率下面计算云计算系统各状态的迁移失败概率。对于正常虚拟机数目大于等于z的状态,将状态k中执行任务的虚拟机中有故障的VM数目记为Xk,其取值范围为将状态k确定可供迁移的位置数记为Yk。Xk和Yk由具体的状态计算可得。(1)当需要迁移的VM数为1时,这类状态有种;则其通过迁移不能满足使用要求的概率计算为:(2)当需要迁移的VM数为2时,这种情况有种。当Yk<2时可供迁移的位置数不足,肯定不会迁移成功。那么,对第k种状态,其通过迁移不能满足使用要求的概率计算为:可化简为:Q(k)=(1-f)Yk+(1-f)Yk-1[1-(1-f)Yk],Yk≥21,Yk<2.]]>(3)当需要迁移的VM数为3时,这种状态有种。当Yk<3时可供迁移的位置数不足,肯定不会迁移成功。那么,对第k种状态,其通过迁移不能满足使用要求的概率计算为:Q(k)=(1-f)Yk+(1-f)Yk-1[1-(1-f)Yk]+(1-f)Yk-2[1-(1-f)Yk-1][1-(1-f)Yk],Yk≥31,Yk<3]]>(4)当需要迁移的VM数为Xk时,这种情况有种。当Yk<Xk时,肯定不会迁移成功。那么,对第k种情况,其通过迁移不能满足使用要求的概率计算为:Q(k)=(1-f)Yk+Σd=1Xk-1(1-f)Yk-dΠs=1d[1-(1-f)Yk-(s-1)],Yk≥Xk1,Yk<Xk.]]>其中,步骤六:计算给定需求下考虑共因和虚拟机故障迁移的云计算系统可靠度。综上所述,考虑共因和虚拟机故障迁移的云计算可靠度计算公式为:R=RCCF-Σk=1MP(k)Q(k)]]>其中,M为状态空间模型中正常工作的虚拟机数目满足要求,但分配到任务的虚拟机存在故障而需要迁移的状态数目;P(k)的计算参考见步骤二和参考文件[3]。RCCF表示考虑共因故障情况下,在给定工作时间t内云系统中正常工作的虚拟机数目大于等于z的概率,见步骤四。Q(k)表示状态k的迁移失败的概率,由步骤五可得。实施例:云计算系统中包含两类服务器,第1类服务器为单核服务器,个数为2台,该类服务器故障服从λS(1)=0.00001/h的指数分布,虚拟机故障服从λV(1)=0.00005/h的指数分布;第2类服务器为双核服务器,个数为3台,该类服务器故障服从λS(2)=0.00002/h的指数分布,虚拟机故障服从λV(2)=0.00008/h的指数分布。其中服务器之间故障独立。确定工作时间T=1000h。给定需求量z为5。迁移成功概率f=0.8。步骤一:建立云计算系统并进行资源分配;以负载均衡为目标,将任务分配给云计算系统中5个服务器的第一个VM。步骤二:对云计算系统进行状态空间划分,并计算各状态存在概率。用1和0分别表示虚拟机的故障和正常状态,虚拟机的总数为8,因此状态数目为28=256,云计算系统的状态空间如下:000000000000000100000010…11111111使用步骤二中的方法分别计算256种状态的存在概率P(k)。步骤三:确定云计算系统可靠性建模方式。考虑共因和虚拟机故障迁移的云计算系统可靠性通过如下方式计算:云计算系统可靠度R=Pr{正常工作的虚拟机数量满足需求的状态}-Pr{正常虚拟机数量满足要求但需要迁移且无法迁移成功}。步骤四:正常工作的虚拟机数量满足需求的概率计算“正常工作的虚拟机数量满足需求的概率”就是仅考虑共因故障的云计算系统可靠度,即步骤五:计算云计算系统中各状态的迁移失败概率。已知故障虚拟机的数目≥z且需要通过迁移确定能否满足使用需求的状态数量是:则化简效率下面计算云计算系统各状态的迁移失败概率。可知需迁移的故障VM数量Xk的取值范围为[1,min{5,3}],即[1,3]。(1)当需要迁移的VM数为1时,这类状态有35个。其通过迁移不能满足使用要求的概率计算为:其中Yk表示可供迁移的位置数,可由以下公式计算:Yk=状态k中不执行任务的正常VM个数-状态k中故障VM所在服务器中正常VM个数。(2)当需要迁移的VM数为2时,这种情况有40个。那么,对第k种状态,其通过迁移不能满足使用要求的概率计算为:Q(k)=(1-f)Yk+(1-f)Yk-1[1-(1-f)Yk],Yk≥21,Yk<2.]]>(3)当需要迁移的VM数为3时,这种状态有10个。那么,对第k种状态,其通过迁移不能满足使用要求的概率计算为:Q(k)=(1-f)Yk+(1-f)Yk-1[1-(1-f)Yk]+(1-f)Yk-2[1-(1-f)Yk-1][1-(1-f)Yk],Yk≥31,Yk<3.]]>步骤六:计算给定需求下考虑共因和虚拟机故障迁移的云计算系统可靠度。考虑共因和虚拟机故障迁移的云计算可靠度为:R=RCCF-Σk=1MP(k)Q(k)]]>代入考虑共因故障的云计算系统可靠度RCCF及各状态存在概率P(k),以及步骤五中计算的各状态迁移失败概率Q(k),可得R=0.949022。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1