专利名称:虚拟机安全策略的迁移方法及装置的制作方法
技术领域:
本发明涉及一种数据中心虚拟化技术,尤其涉及数据中心虚拟服务器安全策略迁移方法及装置。
背景技术:
随着互联网的发展,虚拟化技术已经广泛应用在各级数据中心, 尤其是服务器虚拟化技术更是被广大用户所接受并成功实施。虚拟化技术可以在单台物理服务器上虚拟化出多个相互独立的虚拟机(VM,Virtual Machine),这些VM可以被当作一台独立的服务器,与物理服务器一样有自己的IP地址和MAC地址,有自己的操作系统和各种应用程序;现阶段流行的虚拟化软件主要有VMware、Xen、微软的Hypervisor-V以及开源的KVM虚拟化平台。用的状况。主流虚拟化技术还支持VM在不同物理服务器之间的迁移,甚至是可以保证虚拟机原先提供的业务服务不中断的在线迁移。在虚拟机迁移到新的物理服务器后,管理员需要在安全设备(比如防火墙)上部署VM的安全策略。然而管理员的操作面临很多问题,管理员首先需要知道迁移后的VM是否被新的安全设备所管理,比如说在同一个数据中心内做迁移时,可能迁移前后VM都在同一个安全设备的保护之下,因此不需要在安全设备上做任何配置调整。如果管理员判断VM在新的位置下会由新的防火墙来进行安全防护,那么管理员需要在新的防火墙上进行手动进行配置调整,而且还要删除原来防火墙下的配置,操作起来速度缓慢,并且可能会导致业务服务长时间中断,这使得VM的在线迁移失去了意义。此外,由于防火墙的安全策略配置起来是比较复杂且专业,稍有不慎可能导致较大的安全风险,因此要求管理员反复地手工操作可能引发较大的安全风险。由此看来,目前VM的迁移过程给数据中心的管理人员带来了很大的困扰。
发明内容
有鉴于此,本发明提供一种虚拟机安全策略迁移装置,应用于数据中心的安全管理服务器上,该装置包括迁移感知单元、定位单元以及安全策略管理单元;其中,迁移感知单元,用于接收来自虚拟机管理装置的虚拟机迁移报告,所述虚拟机迁移报告至少包括虚拟机的位置参数;定位单元,用于根据所述虚拟机的位置参数确定迁移前该虚拟机所归属的原安全设备以及虚拟机迁移后该虚拟机所归属的新安全设备;安全策略管理单元,用于获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。本发明还提供一种虚拟机安全策略迁移方法,应用于数据中心的安全管理服务器上,该方法包括A、接收来自虚拟机管理装置的虚拟机迁移报告,所述虚拟机迁移报告至少包括虚拟机的位置参数;
B、根据所述虚拟机的位置参数确定迁移前该虚拟机所归属的原安全设备以及虚拟机迁移后该虚拟机所归属的新安全设备;C、获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。本发明通过虚拟机管理装置(也就是VM侧管理服务器一侧)与虚拟机安全策略迁移装置(也就是安全管理服务器一侧)之间的联动实现了 VM在安全设备上的安全策略自动跟随着VM迁移而无缝迁移,免除了管理员因为VM迁移而进行的安全设备手工配置操作,这对VM迁移事件较多的大型数据中心来说意义非常显著。
图I是本发明一种典型的数据中心VM迁移示意图。图2是本发明一种实施方式中安全管理服务器的硬件结构图。 图3是本发明一种实施方式中虚拟机安全策略迁移装置逻辑结构图。图4是本发明一种实施方式中虚拟机安全策略迁移流程图。
具体实施例方式本发明通过虚拟机管理装置与安全设备管理装置的配合来解决VM的安全策略迁移问题。以下结合附图详细介绍本发明在一种实施方式中的具体实现。很多大型用户(如各大互联网公司)会在在多个不同地点建设有多个数据中心站点DC Site (如图I中的DCl以及DC2)。每个数据中心站点的服务器可以由虚拟机管理装置(未图示),比如运行在一台独立服务器上的KVM虚拟化软件,进行单个或者批量的VM创建与管理工作,这一工作通常包括在VM所在的物理服务器上为VM分配包括CPU在内的各种底层硬件资源以及各种软件资源,设置和管理VM所属接入端口的各种网络属性,如VLANID和QOS策略等Profile规则等。VM创建好之后就可以通过网络对外提供业务服务了。请参考图1,在典型的应用环境中,各个VM通过接入层交换机和汇聚交换机连接到安全设备(如防火墙)进而连接到外部网络(如互联网)。如前所述,在安全设备上需要针对这些VM部署对应的安全策略,以保证从内网与外网之间的通信是受控,尤其是需要避免受到来自外网的攻击。以防火墙为例,安全策略可以覆盖到非常广义的范畴。最简单的安全策略是所有的防火墙都具有的基于IP地址过滤功能。这项任务要检查IP包头,根据其源IP地址和目的IP地址做出报文放行或丢弃决定。如今主流的防火墙在网络层面的安全策略已经能够包括源IP地址、目的IP地址、协议类型、源端口、目的端口、等在内的多个要素的任意组合。很多防火墙还包括应用层面的安全策略,比如针对应用程序名称或者特定的协议报文载荷中的字段进行报文过滤,还可以基于TTL值、来源的网域名称等要素进行过滤。而网络层面的安全策略与应用层面的安全策略又可以组合起来使用。由于不同VM承担的业务服务可能不尽相同,因此管理员在防火墙等安全设备上为其所部署的安全策略也不尽相同,但本发明的实现并不受限于安全策略的具体内容。在数据中心的管理过程中,由于一些特定的原因,比如调整物理服务器硬件资源在VM上的分配,或者需要进行物理服务器硬件资源维护,或者为了进行系统备份操作,都可能需要对相关的VM进行迁移,因此对于KVM来说,VM迁移是常见的管理操作。KVM需要通过配置VM的迁移策略,将VM从DCl的某个服务器迁移到DC2的另外的物理服务器。在本发明中,除了 VM自身以外,网络上层所部署的安全设备上的VM安全策略迁移装置10也会在KVM的配合下自动感知VM的迁移动作,并完成安全策略的相应迁移。以下结合图I图
2、图3以及图4,以计算机程序实现为例来描述本发明的虚拟机安全策略迁移装置10是如何在虚拟机管理装置的配合下实现安全设备上的安全策略跟随VM迁移而无缝迁移的。需要说明的是,本发明并不局限于VM在不同数据中心站点之间的迁移,即便是同一个数据中心站点(可能部署了多个安全设备)内部进行迁移也是同样适用的。图3示出了本发明一种实施方式中虚拟机安全策略迁移装置10的逻辑结构图,该装置包括迁移感知单元11、定位单元12以及安全策略管理单元13。虚拟机安全策略迁移装置10在本实施方式中是计算机程序在安全管理服务器CPU上运行所形成的逻辑装置。而所述安全管理服务器可以各种通用的服务器,其硬件架构如图2所示。同样的道理,虚拟机管理装置在本实施方式中是计算机程序在VM管理服务器CPU上运行所形成的逻辑装置,本发明未给出其逻辑结构图,然而本领域普通技术人员可以轻易地根据下文的描述结合现有技术抽象出与本发明思路一致的逻辑结构。步骤101,虚拟机管理装置启动VM迁移并向虚拟机安全策略迁移装置10的感知单兀发送迁移报告。虚拟机管理装置对VM进行迁移的细节本发明不再一一描述。在本发明中,迁移报告的发送时机可以有多种选择,可以在迁移完成后再发送,也可以在迁移启动前或者迁移过程中来发送。在较佳的实施方式中,可以选择在迁移完成后来发送VM迁移报告,虽然在理论上来说迁移完成后发送可能会对VM及时对外提供业务服务产生影响,但是后续的安全策略迁移将是自动完成的,所需时间很短,因此这种影响很轻微。而且迁移后再发送可以避免其他方式中迁移不成功而触发的安全策略的错误迁移。所述VM迁移报告至少包括VM位置参数;该位置参数可以包括VM的IP地址、VM的MAC地址、迁移前后的物理服务器IP地址、迁移前后VM的接入端口 ID以及迁移前后VM的VLAN ID中任意一种或多种。迁移报告可以由各种私有或者公有的协议报文来承载,而消息的格式在较佳的事实方式中可以采用JSON格式,该消息包含的具体内容如下{ " Version " " 1.0 " , " Type " :1, " Src_Host_IP " " 192.168.0. I " , " Src_Host_Name " " src-host " , " Dest_Host_IP " " 192. 168. 2. 2 ", " Dest_Host_Name " " dest-host ", " VM_Ip " " 10. 10.0. I " , " VM_Name " " vm-name " , " VM_Vlan " :500, " VM_IF_name " " eth0/0 " , " VM_Port_Profi Ie_index " :1234, " VM_MAC" " Il_22_33_cc_dd_ee",}Version表示版本号,其取值I. 0,1. I等等。Type表示报文类型,可以取值为1,表示这是虚拟机迁移后的上报消息。Src_Host_IP表示虚拟机迁移前所在物理服务器的IP地址。Src_Host_name表示虚拟机迁移前所在物理服务器的名称。Dest_Host_IP表示虚拟机迁移后所在物理服务器的IP地址。Dest_Host_name表示虚拟机迁移后所在实服务器名称。、
VM_IP表示虚拟机的IP地址。VM_Name表示虚拟机的名称描述。VM_Vlan表示虚拟机所属的VLAN ID,取值范围是1_4094。VM_IF_Port表示虚拟机接入的交换机的端口 ID。VM_Port_Prof i Ie_index表示虚拟机对应接入的交换机端口的QOS等策略的profile 索引。VM_MAC表示虚拟机MAC地址信息,格式为“xx-xx-xx-xx-xx-xx”。
其中物理服务器以及虚拟机的名称主要是为了在交互界面上提供给管理员更为直观的标识,因为IP地址对于管理员来说并不容易记忆。迁移报告中的各种位置参数并不是要求全部发送,这取决于厂商在管理平面的技术实现方式。步骤102,根据所述VM的位置参数确定迁移前该虚拟机所归属的原安全设备以及迁移后该虚拟机所归属的新安全设备。有了上述VM位置参数以后,定位单元可以根据所述VM的位置参数确定迁移前该虚拟机所归属的原安全设备以及迁移后该虚拟机所归属的新安全设备。在较佳的实施方式中,考虑到虚拟机管理装置以及安全策略迁移装置10可能是由不同厂商提供的,因此为了更好地与对端兼容,虚拟机管理装置可以将尽可能多的VM位置参数放在迁移报告中发送过来,这样一来定位单元的实现就会更加灵活,不同厂商在定位单元的实现上各有不同,不同的算法所需要的VM位置参数也自然不尽相同。以最为简单的方式为例,请参考图1,安全管理服务器上保存有各个防火墙所管辖的物理服务器的IP地址,比如说防火墙I所管辖的物理服务器的IP地址段是192. 168. I. 2-192. 168. I. 100,防火墙3所管辖的物理服务器的IP地址段192. 168. I. 101-192. 168. 1.200。假设迁移前VM所在的物理服务器的IP地址是192. 168. I. 20,迁移后VM所在的物理服务器的IP地址是192. 168. I. 120,由此定位单元可以获知VM迁移之前归属于防火墙1,VM迁移之后归属于防火墙3。再比如说,假设安全管理服务器上保存有各个安全设备所辖区域的网络拓扑信息,定位单元可以判断迁移报告中的VM接入交换机的端口 ID或者VM所属的VLAN ID在哪个安全设备所辖区域的网络拓扑信息中,进而可以得知迁移之前VM所归属的安全设备以及迁移之后VM所归属的安全设备。再比如说,假设安全管理服务器上保存有各个安全设备所辖区域的网络拓扑信息,定位单元可以使用MAC地址定位技术来确定VM是从哪个交换机接入到网络中来,进而根据网络拓扑确定VM所归属的安全设备。同样的道理,在定位单元实现时,可以采用其他算法结合不同的VM位置参数(或者位置参数的组合)来确定VM归属的安全设备,在此不再列举。进一步来说,考虑到虚拟机管理装置以及安全策略迁移装置10可能是由不同厂商提供的,因此为了更好地与对端兼容,定位单元中可以预置多个定位子单元(如图3所示的那样),这些定位子单元分别使用不同的VM位置参数来确定VM归属的安全设备,也就是说即便虚拟机管理装置发送的迁移报告中的VM位置参数种类很少,定位单元依然可以借助多种定位算法(也就是多个内置的定位子单元)来确定VM所归属的安全设备。同样的道理,即便不同的虚拟机管理装置发送的迁移报告中的VM位置参数种类不同,由于预置多个定位子单元,可以应对对端的变化,具有更好的兼容性。
步骤103,判断所述原安全设备与所述新安全设备是否为同一个安全设备,如果是则返回,否则通知安全策略处理单元进行处理。在有的数据中心中,一个防火墙这样的安全设备可能管辖着较大的区域,有可能VM迁移之后归属的安全设备没有变化,因此再做进一步处理之前还需要判断迁移前后VM归属的安全设备是否是同一台,比如说比较一下设备的标识。如果是同一台,那么就不需要做处理,返回即可;如果不是同一台,可以通知安全策略处理单元进行进一步处理。步骤104,获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。安全管理服务器与各个安全设备之间存在管理通道。安全策略管理单元可以借助该管理通道从VM所归属的原安全设备读取其上的为VM配置的安全策略,然后再下发到VM所归属的新安全设备。当然,很显然原安全设备上的VM的安全策略也是安全策略管理单元下发的,因此安全策略管理单元很可能本来在安全管理服务器上保存有该VM的安全策略,因此安全策略管理单元还可以从安全管理服务器的存储单元中获取到。由于新的安全设备 使用了与原安全设备同样的安全策略,因此实现了安全策略跟随VM迁移而无缝迁移,对于VM对外提供业务服务的影响很小,外部访问VM的用户基本不会感知到VM有任何变化。进一步来说,在成功将VM的安全策略下发到VM归属的新安全设备后,原安全设备不再需要VM的安全策略了,安全策略管理单元还可以将原安全设备上的安全策略对应移除,比如删除或者使之处于无效装置,以节约原安全设备的空间,减少其业务处理时间。本发明通过虚拟机管理装置(也就是VM侧管理服务器一侧)与虚拟机安全策略迁移装置(也就是安全管理服务器一侧)之间的联动实现了 VM在安全设备上的安全策略自动跟随着VM迁移而无缝迁移,免除了管理员因为VM迁移而进行的安全设备手工配置操作,这对VM迁移事件较多的大型数据中心来说意义非常显著。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种虚拟机安全策略迁移装置,应用于数据中心的安全管理服务器上,其特征在于,该装置包括迁移感知单元、定位单元以及安全策略管理单元;其中, 迁移感知单元,用于接收来自虚拟机管理装置的虚拟机迁移报告,所述虚拟机迁移报告至少包括虚拟机的位置参数; 定位单元,用于根据所述虚拟机的位置参数确定迁移前该虚拟机所归属的原安全设备以及虚拟机迁移后该虚拟机所归属的新安全设备; 安全策略管理单元,用于获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。
2.如权利要求I所述的装置,其特征在于,所述定位单元进一步用于,判断所述原安全设备与所述新安全设备是否为同一个安全设备,如果是则返回,否则通知安全策略处理单元进行处理。
3.如权利要求2所述的装置,其特征在于,所述安全策略管理单元进一步用于在原安全设备与所述新安全设备不是同一个安全设备时移除原安全设备上的安全策略。
4.如权利要求I所述的装置,其特征在于,所述虚拟机位置参数包括虚拟机IP地址、虚拟机MAC地址、迁移前后的物理服务器IP地址、迁移前后VM的接入端口 ID以及迁移前后VM的VLAN ID中任意一种或多种。
5.如权利要求4所述的装置,其特征在于,所述定位单元至少包括多个定位子单元,所述多个定位子单元分别使用不同的位置参数或者不同的位置参数的组合确定虚拟机所归属的安全设备。
6.一种虚拟机安全策略迁移方法,应用于数据中心的安全管理服务器上,其特征在于,该方法包括 A、接收来自虚拟机管理装置的虚拟机迁移报告,所述虚拟机迁移报告至少包括虚拟机的位置参数; B、根据所述虚拟机的位置参数确定迁移前该虚拟机所归属的原安全设备以及虚拟机迁移后该虚拟机所归属的新安全设备; C、获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。
7.如权利要求6所述的方法,其特征在于,所述步骤B进一步包括,判断所述原安全设备与所述新安全设备是否为同一个安全设备,如果是则返回,否则转步骤C。
8.如权利要求7所述的方法,其特征在于,所述步骤C进一步包括在原安全设备与所述新安全设备不是同一个安全设备时移除原安全设备上的安全策略。
9.如权利要求6所述的方法,其特征在于,所述虚拟机位置参数包括虚拟机IP地址、虚拟机MAC地址、迁移前后的物理服务器IP地址、迁移前后VM的接入端口 ID以及迁移前后VM的VLAN ID中任意一种或多种。
10.如权利要求9所述的方法,其特征在于,所述步骤B进一步包括,从多个定位算法中选择一个定位算法,其中所述多个定位算法分别使用不同的位置参数或者不同的位置参数的组合确定虚拟机所归属的安全设备。
全文摘要
一种虚拟机安全策略迁移装置,应用于数据中心的安全管理服务器上,包括迁移感知单元,用于接收来自虚拟机管理装置的虚拟机迁移报告,该报告包括虚拟机的位置参数;定位单元,用于根据所述虚拟机的位置参数确定迁移前该虚拟机所归属的原安全设备以及虚拟机迁移后该虚拟机所归属的新安全设备;安全策略管理单元,用于获取配置在原安全设备上的该虚拟机的安全策略,并将所述安全策略下发到新安全设备上。本发明实现了虚拟机在安全设备上的安全策略自动跟随着虚拟机迁移而无缝迁移,免除了管理员因为虚拟机迁移而进行的安全设备手工配置操作,这对虚拟机迁移事件较多的大型数据中心来说意义非常显著。
文档编号H04L29/06GK102739645SQ20121012145
公开日2012年10月17日 申请日期2012年4月23日 优先权日2012年4月23日
发明者吕振峰, 孙松儿 申请人:杭州华三通信技术有限公司