一种云平台的软路由器虚拟机实现方法技术

技术编号:15004236 阅读:69 留言:0更新日期:2017-04-04 12:26
本发明专利技术涉及云计算技术领域,特别是一种云平台的软路由器虚拟机实现方法。其主要包括:首先在云平台上创建一台虚拟机;其次,给虚拟机动态挂载外部网络以及内部网络的网卡,网卡上含有外网或内网IP;然后,云平台控制中心发送路由指令,虚拟机接受到指令后实现NAT映射以及更新子网、路由信息,最终完成虚拟机上的软路由器实现。本发明专利技术将云平台中的软路由器部署在虚拟机上,利用虚拟机的动态迁移、CPU动态变更等特性来调节软路由器的数据交换能力,提高网络中路由的负载均衡能力;可以用于虚拟机网络访问功能实现。

【技术实现步骤摘要】

本专利技术涉及云计算
,特别是一种云平台的软路由器虚拟机实现方法。
技术介绍
在云平台下,虚拟机要实现上网以及外网访问虚拟机功能,必须要实现路由功能。业界通常的软路由解决方案是,把一台高性能的计算机设置成网络控制节点,网络控制器上部署了很多软路由器。部署在高性能计算机上的软路由器的数据交换能力受物理机的配置影响,而物理机的配置不能随着软路由器的负载情况动态变更,不能是网络间通信吞吐量弹性变化。因此,需要一种云平台上能够实现软路由器负载调整装置。
技术实现思路
本专利技术解决的技术问题在于提供一种云平台的软路由器虚拟机实现方法,利用虚拟机的动态迁移、CPU动态变更等特性来调节软路由器的数据交换能力,提高网络中路由的负载均衡能力。本专利技术解决上述技术问题的技术方案是:所述的方法包括:(1)首先在云平台上创建一台虚拟机;(2)云平台控制中心给虚拟机动态挂载、卸载含有外部网络以及内部网络的网卡;(3)云平台控制中心发送路由指令,虚拟机接受到指令后实现NAT映射以及更新路由信息;(4)最终完成虚拟机上的软路由器实现。所述的创建的虚拟机使用的是linux系统,系统中含有route命令、iptables命令、arping命令,默认开启IP转发,其虚拟硬盘格式为qcow2。所述的云平台控制中心给虚拟机添加、卸载内和外网网卡,其网卡都支持半虚拟化驱动,支持多个外网和多个内网间的网卡接口,内网、外网的网卡数量以及其Ip信息由路由要求决定。所述的的虚拟机路由指令信息是通过在宿主机上给虚拟机串口发送的;所述的路由指令信息包括route命令、arping命令以及iptables命令信息;所述的的arping命令,ping同子网内部的IP,学习子网内部的mac,ip的arp信息,实现二层网络的访问;所述的的iptables命令包括iptables的SNAT和DNAT映射,实现将外网Ip地址、内网地址互相转换,结合路由信息实现路由的转发。所述的的虚拟机创建、虚拟机CPU动态调整、虚拟机的网卡动态挂载、卸载以及虚拟机的迁移是通过libvrit接口完成的。本专利技术,将云平台中的软路由器部署在虚拟机上,利用虚拟机的动态迁移、CPU动态变更等特性来调节软路由器的数据交换能力,提高网络中路由的负载均衡能力。附图说明下面结合附图对本专利技术进一步说明:图1为本专利技术的流程图。具体实施方式流程图如图1所示,具体实施过程如下1、创建含有arping,route,iptables命令的虚拟机virshcreatelibvirt.xml其中libvirt配置部分描述:(1)CPU部分,支持动态调整<vcpucurrent=\1\>4</vcpu>(2)磁盘部分,支持qcow2驱动(3)虚拟机串口配置<serialtype='pty'><sourcepath='/dev/pts/4'/></serial>2、动态挂载、卸载虚拟机网卡virshattach-device/detach-devicenetwork.xml其network.xml配置文件如下,支持virtio半虚拟化驱动虚拟机上的网卡通过外部DHCP获取到IP信息:内网接口(内网网关):eth0:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscnoqueuestateUNKNOWNlink/etherfa:16:3e:6e:d1:d6brdff:ff:ff:ff:ff:ffinet12.12.12.1/24brd12.12.12.255scopeglobaleth0valid_lftforeverpreferred_lftforeverinet6fe80::f816:3eff:fe6e:d1d6/64scopelink外网接口:eth1:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdischtbstateUNKNOWNlink/etherfa:16:3e:09:fe:49brdff:ff:ff:ff:ff:ffinet20.251.36.101/32brd20.251.36.101scopeglobaleth13、虚拟机收到串口通讯的路由信息,包括arping、route、iptables命令要实现20.251.36.101,12.12.12.15直接的消息转换:(1)学习ip与mac:arping-Ieth012.12.12.12ARPING12.12.12.15from12.12.12.1eth0Unicastreplyfrom12.12.12.15[FA:16:3E:38:FA:0F]1.025msUnicastreplyfrom12.12.12.15[FA:16:3E:38:FA:0F]0.863ms(2)添加路由消息routeadd-net20.251.36.0/24eth1routeadddefaultgw20.251.36.254eth1routeadd-net12.12.12.0/24eth0(3)iptables的SNAT以及DNAT映射-APREROUTING-d20.251.36.101/32-jDNAT--to-destination12.12.12.15-APOSTROUTING-s12.12.12.15/32-jSNAT--to-source20.251.36.1014、路由实现通过20.251.36.101访问虚拟机12.12.12.155、实现虚拟机的配置变更以及动态迁移instanceId为虚拟机实例名称,2个vcpu数量,targetIp目标节点IP动态调整CPU配置:virshsetvpusinstanceId2动态迁移:virshmigrate--liveinstanceIdtargetIP。本文档来自技高网...

【技术保护点】
一种云平台的软路由器虚拟机实现方法。其特征在于:所述的方法包括:(1)首先在云平台上创建一台虚拟机;(2)云平台控制中心给虚拟机动态挂载、卸载含有外部网络以及内部网络的网卡;(3)云平台控制中心发送路由指令,虚拟机接受到指令后实现NAT映射以及更新路由信息;(4)最终完成虚拟机上的软路由器实现。

【技术特征摘要】
1.一种云平台的软路由器虚拟机实现方法。其特征在于:所述的方法包括:
(1)首先在云平台上创建一台虚拟机;
(2)云平台控制中心给虚拟机动态挂载、卸载含有外部网络以及内部网络
的网卡;
(3)云平台控制中心发送路由指令,虚拟机接受到指令后实现NAT映射
以及更新路由信息;
(4)最终完成虚拟机上的软路由器实现。
2.根据权利要求1所述的软路由器虚拟机实现方法。其特征在于:所述的
创建的虚拟机使用的是linux系统,系统中含有route命令、iptables命令、arping
命令,默认开启IP转发,其虚拟硬盘格式为qcow2。
3.根据权利要求1所述的软路由器虚拟机实现方法。其特征在于:所述的
云平台控制中心给虚拟机添加、卸载内和外网网卡,其网卡都支持半虚拟化驱
动,支持多个外网和多个内网间的网卡接口,内网、外网的网卡数量以及其Ip
信息由路由要求决定。
4.根据权利要求2所述的软路由器虚拟机实现方法。其特征在于:所述的
云平台控制中心给虚拟机添加、卸载内和外网网卡,其网卡都支持半虚拟化驱
动,支持多个外网和...

【专利技术属性】
技术研发人员:罗义兵杨松季统凯
申请(专利权)人:国云科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1