一种基于OpenStack的流媒体服务器集群部署方法

文档序号:7810886阅读:731来源:国知局
一种基于OpenStack的流媒体服务器集群部署方法
【专利摘要】本发明公开了基于OpenStack的流媒体服务器集群部署方法,以流媒体服务器负载需求和流媒体服务器之间的通信带宽,建立流媒体服务器集群的负载带宽消耗模型;依据流媒体服务器集群负载带宽消耗模型,对流媒体服务器集群进行分簇;部署流媒体服务器集群时,依据OpenStack云平台中虚拟机数据网络链路带宽大小,将云平台中虚拟机分区;依据分簇、分区结果,进行簇区匹配和簇内流媒体服务器与区内虚拟机匹配,实现在OpenStack云平台上对流媒体服务器集群的部署。
【专利说明】-种基于OpenStack的流媒体服务器集群部署方法

【技术领域】
[0001] 本发明属于多媒体云计算领域,涉及OpenStack云平台的流媒体服务器集群部署 方法,以流媒体服务器负载需求和流媒体服务器之间的通信带宽,对流媒体服务器集群分 簇、OpenStack云平台中虚拟机资源分区,簇区匹配,从而实现在OpenStack平台上对流媒 体服务器的部署。

【背景技术】
[0002] 随着云计算技术这几年如火如荼的发展,诞生了一种可用于提供多媒体服务与应 用的新兴技术,多媒体云计算。其基于云的新型计算模式,极大地促进了网络用户间媒体信 息的传播和共享。这种大规模的跨区域地访问模式,将极大地推动信息产业的发展。检索 到的以下几篇与本发明相关的属于多媒体云计算领域的专利,他们分别是:
[0003] 1.中国专利CN103037002A,一种云计算集群环境中服务器集群的部署方法及系 统;
[0004] 2.中国专利CN103354545, 一种基于云计算的P2P流媒体服务器集群部署方法;
[0005] 3.中国专利CN103442034, 一种基于云计算技术的流媒体服务方法和系统;
[0006] 在上述专利1中,发明人公开了一种云计算集群环境中服务器集群的部署方法及 系统,能够解决目前云计算集群环境部署过程中大规模集群节点配置效率低下的缺陷。但 是用这种方法,部署的在OpenStack云平台上流媒体服务器集群不是性能与效率的。
[0007] 在上述专利2中,发明人提出一种基于云计算的P2P流媒体服务器集群部署方法, 预测具有延时保障的P2P流媒体直播系统的带宽需求,虚拟流媒体服务器集群构建在云平 台DCN网络之上。该方法很好的解决了云上P2P流媒体服务器集群的问题,但是没有考虑 非P2P流媒体服务器集群之间的带宽差异,并且对服务器的其他资源综合考虑。
[0008] 在上述专利3中,发明人提出了一种基于云计算技术的流媒体服务方法,该发明 能够解决现有流媒体服务系统中存在的可扩展性差、可靠性差、资源利用率低、部署成本高 的技术问题,但是与云平台的结合上想到薄弱,没有考虑云平台资源的有限性的问题。


【发明内容】

[0009] 为了克服上述现有技术的不足,本发明的目的在于本发明公开了基于OpenStack 的流媒体服务器集群部署方法,以流媒体服务器负载需求和流媒体服务器之间的通信带 宽,建立流媒体服务器集群的负载带宽消耗模型;依据流媒体服务器集群负载带宽消耗模 型,对流媒体服务器集群进行分簇;部署流媒体服务器集群时,依据OpenStack云平台中 虚拟机数据网络链路带宽大小,将云平台中虚拟机分区;依据分簇、分区结果,进行簇区匹 配和簇内服务器与区内虚拟机匹配,实现在OpenStack云平台上对流媒体服务器集群的部 署。
[0010] 为了实现上述目的,本发明采用的技术方案是:
[0011] 一种基于OpenStack的流媒体服务器集群部署方法,包括如下方法:构建流媒体 服务器集群负载带宽消耗模型;以集群负载带宽消耗模型为依据,构建集群中流媒体服务 器的负载需求向量V (j)和通信带宽代价矩阵CmXm,建立流媒体服务器集群负载带宽消耗模 型;以OpenStack云平台中虚拟机间数据网络通信链路为依据,构建OpenStack云平台中虚 拟机负载能力向量P (j)和数据网络代价矩阵DnXn ;以流媒体服务器集群与OpenStack虚拟 机带宽负载为依据,构建流媒体服务器集群分簇与OpenStack虚拟机资源分区方法,簇群 与区群相匹配,簇内流媒体服务器与区内虚拟机相匹配,构建流媒体服务器集群部署方法, 进而将流媒体服务器集群部署到OpenStack云平台之上。
[0012] 所述构建集群中流媒体服务器的负载需求向量V(i)和通信带宽代价矩阵CmXm的 步骤为:
[0013] Stepl :初始化流媒体服务器负载需求向量V(j)带宽通信代价矩阵CmXm,使得,

【权利要求】
1. 一种基于Openstack的流媒体服务器集群部署方法,其特征在于,包括: 以流媒体服务器集群负载需求和服务器之间的通信带宽为依据,构建集群中流媒体服 务器的负载需求向量V (i)和通信带宽代价矩阵CmXm,从而建立流媒体服务器集群的负载带 宽消耗模型; 以OpenStack云平台中虚拟机数据网络通信链路为依据,构建OpenStack云平台中虚 拟机负载能力向量P(j)和数据网络代价矩阵DnXn ; 以流媒体服务器与OpenStack云平台中虚拟机负载带宽最大化匹配为依据,对流媒体 服务器集群分簇,对OpenStack云平台中虚拟机分区,进行簇区匹配以及簇内流媒体服务 器与区内虚拟机匹配,从而将流媒体服务器集群部署到OpenStack云平台之上。
2. 根据权利1所述基于OpenStack的流媒体服务器集群部署方法,其特征在于,所述构 建集群中流媒体服务器的负载需求向量V(i)和通信带宽代价矩阵C mXm,建立流媒体服务器 集群的负载带宽消耗模型的步骤为: Stepl :初始化流媒体服务器负载需求向量V(i)和通信代价代价矩阵CmXm,使得V(i) ={0, 0, 0},CmXm(i, j) = 0,其中i、j表示流媒体服务器的编号,m表示流媒体服务器集群 中服务器数目; Step2 :对流媒体服务器集群,采用广度遍历法,遍历整个集群;如果集群中第i个流媒 体服务器需要的CPU核心数为ICc;pui,内存空间大小为IcMi,对外服务带宽总和为Ic trafi,则 记V(i) = {Ic_,ICnremi,Ictarf};如果流媒体服务器i与流媒体服务器j之间存在流媒体的 转发速率为V,则记C mXm(i,j) =v;否则记CmXm(i,j) =〇°; Step3 :获得完整的流媒体服务器集群负载需求向量V(i)和通信代价矩阵匕^。
3. 根据权利2所述基于OpenStack的流媒体服务器集群部署方法,其特征在于,所述流 媒体服务器集群分簇的步骤为: St印1 :构建流媒体服务器负载需求向量V(i) = {Ic_,ICnremi,IctMfi},1彡i彡m、流媒 体服务器集群通信代价矩阵CmXm ;并记当前集群为当前簇,簇集合记为VC,簇集合大小为1, VC中第k个分簇记为VC(k); Step2 :以流媒体服务器集群通信代价矩阵CmXm为依据,选取v(i, j) = min{v| v =
Step3 :以v(i,j)为依据,对当前簇进行分簇,逻辑上认定流媒体服务器i与流媒体服 务器j之间没有联系,将当前集群分为VC(i)与VC(j)两部分,并加入到VC中,簇集合大小 加 1,并置 v(i, j) =°° ; 5七6口4:根据分簇¥(:〇〇内流媒体服务器负载需求向量¥(;〇 = {1(3_,1(^,1(^1^},计 算流媒体服务器集群簇VC(k)的最大负载需求LCmt()p(k)以及各簇内流媒体服务器平均负载 需求
;其中,
zone表示当前簇VC(k),| |zone| |表示当前簇VC(k)中服务器数目; St印5 :如果VC簇集合大小小于
,转St印2,否则,退出。
4. 根据权利3所述基于OpenStack的流媒体服务器集群部署方法,其特征在于,所述构 建OpenStack云平台中虚拟机负载能力向量P(i')和数据网络代价矩阵D nXn的步骤为: Stepl :初始化OpenStack云平台中虚拟机负载能力向量P(i')和数据网络通信带宽 代价矩阵DnXn,使得
表示虚拟机的 编号,η表示OpenStack云平台中虚拟机数目; Step2 :根据OpenStack云平台中虚拟机配置和网络结构,采用广度遍历法,遍历整个 OpenStack云平台;如果云平台能提供第个虚拟机CPU核心数为,内存空间大小 为Idmemi,,对外服务带览总和为Id trafi,,则记
;如果虚 拟机y与虚拟机之间存在数据通信链路带宽为u,则记DnXna',j' )=u,否则记
St印3 :获得完整的OpenStack云平台虚拟机负载能力向量P(i')和数据网络通信代 价矩阵DnXn。
5. 根据权利4所述基于OpenStack的流媒体服务器集群部署方法,其特征在于,所述 OpenStack云平台中虚拟机分区的步骤为: Stepl :初始化OpenStack云平台虚拟机负载能力向量

OpenStack云平台中虚拟机间数据网络链路通信代价矩阵D nXn,并记当前平 台为当前区,区集合记为0D,区集合大小为1,0D中第k'个分区记为0D(k'); Step2 :以OpenStack云平台中虚拟机数据网络链路通信代价矩阵为依据,选取
St印3:以u(i',j')为依据,对当前区进行分区,逻辑上认定当前区中虚拟机i'与 虚拟机之间没有联系,将当前区分为两部分,记为〇D(i')与0D(j'),并加入到0D中, 区集合大小加1,并置u(i',j')=->; St印4 :根据分区0D(k ')内虚拟机器负载能力向量P(i ')= {IdCpUi',Idmemi',Idtrafj' },计算各区虚拟机的最大负载能力(k')以及各区内虚拟 机平均负载能力
;其中,
cluster表示当前分区0D(k' ),| |cluster| |表示当前分区中虚拟机数目; St印5 :如果0D集合大小小于
,转St印2,否则,退出。
6. 根据权利5所述基于OpenStack云平台的流媒体虚拟服务器集群部署方法,其特征 在于,所述流媒体虚拟服务器集群与OpenStack云平台中虚拟机簇区匹配的步骤为 : Stepl :对流媒体服务器集群各簇,按照平均负载需求
降序排列,构建流媒体子 簇队列VC';对OpenStack云平台中虚拟机各区,按照平均负载能力
降序排列,构 建虚拟机分区队列0D'; St印2:若虚拟机分区队列0D'为空,则匹配失败,退出;若流媒体子簇队列VC'为空, 退出; St印3:在流媒体子簇队列VC'中,取第k个分簇VC' (k),在虚拟机分区 队列0D'中,寻找第k'分区OD' (k'),若满足
,且
,则将此簇VC' (k)划分到此虚拟机分区OD' (k')进行部 署,更新流媒体服务器集群子簇队列VC'与OpenStack云平台虚拟机分区队列0D',返回 step2,否则将此簇进行分簇,返回stepl。
7.根据权利5所述基于OpenStack的流媒体服务器集群部署方法,其特征在于,所述流 媒体服务器集群簇内服务器与OpenStack云平台区内虚拟机相匹配的步骤为: Stepl :初始化流媒体服务器集群在OpenStack云平台的部署矩阵fmXn,其中如果第i 个服务器被部署在第W个虚拟机上,则
Step2:在OpenStack云平台的虚拟机分区0D' (V )内,依据P(i'),构造分区内虚 拟机负载能力队列0D'
,第广个虚拟机在〇D' (k')内}; St印3:在与该分区相匹配的流媒体子簇VC' (k)中,依据V(i),构造簇中的流媒体服 务器负载需求队列VC'
,第i个服务器在VC' (k)内}; Step4 :在该流媒体子簇VC' (k)中,从负载需求队列VC' V中,依次取第i个流媒体 服务器,根据此服务器的实际负载需求
,与该虚拟机分区〇D' P 中第W个虚拟机节点负载能力
进行一一负载匹配,选 取e(i,i',δ)彡〇且min{e(i,i',δ)}的虚拟机节点作为目的部署点,其中

其中,S表示部署点虚拟机性能下降比例; %ριια,。,㈨表示当前第i个流媒体服务器与第广个虚拟机cpu的匹配 度;eM(i,i',δ)表示当前第i个流媒体服务器与第i'个虚拟机内存的匹配度; etraf (i,i',δ )表示当前第i个流媒体服务器与第i'个虚拟机带宽的匹配度; A表示CPU权重比例,B表示内存权重比例,C表示带宽权重比例; Step5 :更新OpenStack云平台的部署矩阵fnXn,从虚拟机负载能力队列OD' P中移除 第i '个虚拟机,从流媒体服务器负载需求队列VC' V中移除第i个流媒体服务器; St印6 :若流媒体子簇队列VC' V为空,输出部署矩阵fnXn,否则转St印3。
【文档编号】H04L29/06GK104158869SQ201410385215
【公开日】2014年11月19日 申请日期:2014年8月7日 优先权日:2014年8月7日
【发明者】郑庆华, 宋成龙, 钱北平, 张未展 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1