搭建星型堆叠的方法和虚拟机设备的制造方法
【技术领域】
[0001] 本发明涉及通信技术领域,特别是涉及一种搭建星型堆叠的方法和虚拟机设备。
【背景技术】
[0002] 虚拟化技术的发展驱动着数据中心大二层网络的发展,但随着网络规模的不断扩 大,需要管理的网络设备数量也随之增大,网络管理随之成为数据中心大二层网络管理中 的一个绕不开的难点。大量虚拟机(VirtualMachine,VM)统一接入在一个二层网络中,无 法像传统设备一样方便的形成菊花链式的堆叠,实现星型堆叠可以使这些VM虚拟为一个 设备,简化管理,同时自动支持各种备份、分担。
[0003] 星型堆叠技术是一种虚拟化技术,可以集合多台虚拟机的硬件资源和软件处理能 力,实现多台虚拟机的协同工作、统一管理,提高虚拟机的利用率和效率。星型堆叠中的虚 拟机按照角色可以划分为主虚拟机(Master)、备虚拟机(Standby)、以及待加入星型堆叠 的虚拟机。当待加入星型堆叠的虚拟机需要加入星型堆叠运行时,需要为这个待加入星型 堆叠的虚拟机配置并分配一个虚拟槽位号来标识并管理该待加入星型堆叠的虚拟机,管理 员在待加入星型堆叠的虚拟机上配置星型堆叠的配置后,待加入星型堆叠的虚拟机连接到 二层网络中,通过星型堆叠技术完成设备堆叠。组成星型堆叠的虚拟机可以统一配置,共同 转发报文,完成业务的处理等。
[0004] 然而,如果管理员为各个服务器上的每个虚拟机都手工分配虚拟槽位号,不仅费 时费力,而且容易出错,无法适应大规模二层网络的管理。
【发明内容】
[0005] 有鉴于此,本发明提出了一种搭建星型堆叠的方法和虚拟机设备,有效解决了现 有技术中手工为星型堆叠中的各设备分配虚拟槽位号产生的效率低、且容易出错的问题。
[0006] 本发明提出的技术方案是:
[0007] -种搭建星型堆叠的方法,该方法包括:
[0008] 主虚拟机接收待加入星型堆叠的虚拟机发来的加入请求报文,所述加入请求报文 携带所述待加入星型堆叠的虚拟机的通用唯一识别码(UniversallyUniqueIdentifier, UUID);
[0009] 查询所述主虚拟机本地的虚拟槽位号表中是否存在与所述UUID匹配的表项,如 果是,则将所述匹配的表项中的虚拟槽位号携带于加入应答报文中发送给所述待加入星型 堆叠的虚拟机;
[0010] 接收所述待加入星型堆叠的虚拟机接收到所述加入应答报文后返回的加入确认 报文,更新本地保存的所述星型堆叠对应的拓扑结构表。
[0011] 一种虚拟机,该虚拟机应用于星型堆叠,所述虚拟机为主虚拟机时,该虚拟机包 括:
[0012] 接收模块,用于接收待加入星型堆叠的虚拟机发来的加入请求报文,所述加入请 求报文携带所述待加入星型堆叠的虚拟机的通用唯一识别码UUID;
[0013] 处理模块,用于查询所述主虚拟机本地的虚拟槽位号表中是否存在与所述UUID 匹配的表项,如果是,则将所述匹配的表项中的虚拟槽位号携带于加入应答报文中发送给 所述待加入星型堆叠的虚拟机;
[0014] 所述接收模块还用于,接收所述待加入星型堆叠的虚拟机接收到所述加入应答报 文后返回的加入确认报文,更新本地保存的所述星型堆叠对应的拓扑结构表。
[0015] 综上,本发明提出了一种搭建星型堆叠的方法和虚拟机设备,该方法通过在星型 堆叠控制报文中携带UUID这个唯一识别标识号,主虚拟机利用该信息与虚拟槽位号进行 匹配绑定,形成对应的关系,实现虚拟机堆叠槽位号自动分配。全过程自动实现无需人为干 预,不仅提高效率,而且减少了出错的概率,适应大二层网络的发展。另外,本方案只需要虚 拟机的UUID信息参数,不需要对现有网络进行任何改造,具有较高的实用性。
【附图说明】
[0016] 图1为本发明技术方案的流程图;
[0017] 图2为方法实施例一的组网图;
[0018] 图3为方法实施例一的流程图;
[0019] 图4为方法实施例二的组网图;
[0020] 图5为方法实施例二的流程图;
[0021] 图6为本发明实施例的虚拟机结构图。
【具体实施方式】
[0022] 现有技术中搭建星型堆叠时,需要网络管理员为星型堆叠中的每个虚拟机配置并 分配一个虚拟槽位号来标识并管理虚拟机设备,如不作任何改进,在大规模二层网络的管 理应用中,需要网络管理员为各个服务器上的每个虚拟机设备手工配置虚拟槽位号,不仅 费时费力,而且容易出错,并且由于虚拟机的迀移、复制特性,这种手工配置方法大大限制 了星型堆叠的维护与扩展,无法高效的适应大规模二层网络的管理。
[0023] 为解决上述技术问题,本发明提出一种搭建星型堆叠的方法,本发明实施例的技 术方案是:
[0024] 图1为本发明技术方案的流程图,如图1所示,本发明一种搭建星型堆叠的方法应 用于主虚拟机上,主虚拟机执行以下步骤:
[0025] 步骤101:主虚拟机接收待加入星型堆叠的虚拟机发来的加入请求报文,该加入 请求报文携带待加入星型堆叠的虚拟机的UUID。
[0026] 其中,主虚拟机的确定方法为:
[0027] 初建星型堆叠时,虚拟机广播携带自身UUID的Hello报文,发送该携带自身UUID 的Hello报文的同时设置定时器,如果定时器超时,该虚拟机没有收到其他虚拟机广播的 携带各自UUID的Hello报文,则该虚拟机将自身设置为主虚拟机;如果定时器超时前该虚 拟机收到其他虚拟机广播的携带各自UUID的Hello报文,则该虚拟机根据优先级、MAC地 址等竞争主虚拟机。
[0028] 步骤102 :主虚拟机查询本地的虚拟槽位号表中是否存在与待加入星型堆叠的虚 拟机的UUID匹配的表项,如果是,则将匹配的表项中的虚拟槽位号携带于加入应答报文中 发送给待加入星型堆叠的虚拟机。
[0029] 本步骤中,主虚拟机接收到待加入星型堆叠的虚拟机发来的加入请求报文后,先 根据加入请求报文中携带的待加入星型堆叠的虚拟机的UUID查询本地的虚拟槽位号表, 判断虚拟槽位号表中是否存在与待加入星型堆叠的虚拟机的UUID匹配的表项,如果是,则 直接将匹配的