【技术实现步骤摘要】
一种openstack虚拟机通过所在节点snat连接外网的系统及方法
[0001]本专利技术属于计算机
,具体涉及一种openstack虚拟机通过所在节点snat连接外网的系统及方法。
技术介绍
[0002]网络一直是Openstack的核心功能之一,Openstack也提供了很多技术方案满足用户差异化的网络需求,现有数据中心组网方案大多使用Vxlan+DVR,相比于传统路由器方案,该方案确实在一定程度上降低了网络节点的负载,同时提高可扩展性,但对于外网资源稀缺场景下,未绑定浮动ip的虚拟机南北流量还是需要集中到一个网络节点去通过snat处理,这样就会造成以下问题:单个网络节点负载高、单点成为整个网络的瓶颈、其他节点网络资源浪费、网络故障概率高、snat故障迁移慢、计算节点与网络节点之间的tunnel网络承担较大流量、网络架构复杂不易维护等诸多问题。
技术实现思路
[0003]为克服上述现有技术的不足,本专利技术的目的是提供一种openstack虚拟机通过所在节点snat连接外网的系统及方法
[0004]为实现上述目的,本专利技术采用的技术方案是:一种openstack虚拟机通过所在节点snat连接外网的系统,包括有创建分布式snat的虚拟路由器、限定虚拟机南北流量流向模块、网卡链路状态检测模块;
[0005]所述的创建分布式snat的路由器,用于创建分布式snat类型的虚拟路由器,并在每个计算节点上都部署snat功能;
[0006]所述的限定虚拟机南北流量流向模块,用于 ...
【技术保护点】
【技术特征摘要】
1.一种openstack虚拟机通过所在节点snat连接外网的系统,其特征在于,包括有创建分布式snat的虚拟路由器、限定虚拟机南北流量流向模块、网卡链路状态检测模块;所述的创建分布式snat的路由器,用于创建分布式snat类型的虚拟路由器,并在每个计算节点上都部署snat功能;所述的限定虚拟机南北流量流向模块,用于将虚拟机南北流量限定只流入本地snat,而不向网络节点流入;所述网卡链路状态检测模块,用于实时检测计算节点上外部网络绑定的物理端口链路状态,在链路状态断开时,使本节点虚拟机通过路由连接外网的流量导向其他正常节点,保证虚拟机南北流量快速恢复,增强网络可靠性。2.一种openstack虚拟机通过所在节点snat连接外网的方法,其特征在于,包括以下步骤:步骤S1,创建分布式snat的路由器用于创建分布式snat类型的虚拟路由器,并在每个计算节点上都部署snat功能;DVR模式下未绑定浮动ip的虚拟机南北流量需要集中到网络节点去处理的一个重要原因就是本节点上没有snat功能,无法处理;将snat功能分布式部署在每个计算节点上;步骤S2,创建限定虚拟机南北流量流向模块本步骤用于将虚拟机南北流量限定只流入本地snat,而不向网络节点流入;DVR模式下未绑定浮动ip的虚拟机是将南北流量集中流向网络节点,所以要解决现有技术的问题,还必须限定使得虚拟机流量只流入本地snat,而虚拟机南北流量集中流向网络节点是通过ovs流表将其通过br
‑
tun端点经tunnel网络转发至对端br
‑
tun端点,所以所述限定虚拟机南北流量流向须在ovs的br
‑
tun流表中进行修改;步骤S3,网卡链路状态检测实时检测计算节点上外部网络绑定的物理端口链路状态,在链路状态断开时,使本节点虚拟机通过路由连接外网的流量导向其他正常节点,保证虚拟机南北流量快速恢复,增强网络可靠性。3.根据权利要求2所述的一种openstack虚拟机通过所在节点snat连接外网的方法,其特征在于,所述的步骤S1,具体又包括以下步骤:步骤S1
‑
1,修改neutron
‑
server数据库的routers表,增加一个ex_network字段表示虚拟路由器对应的外部网络的uuid;步骤S1
‑
2,neutron
‑
server创建虚拟机路由器时,不再创建外部网关,而是将外部网络的uuid和其他属性记录入routers表中;步骤S1
‑
3,各计算节点的neutron
‑
l3
‑
agent发现新建的虚拟路由后,获取虚拟路由器的信息,向neutron
‑
server发起创建本节点外部网关的请求,请求中至少包含本节点neutron
‑
l3
‑
agent的uuid和该虚拟路由器的外部网络的uuid;步骤S1
‑
4,neutron
‑
server接收到各计算节点的neutron
‑
l3
‑
agent发起的创...
【专利技术属性】
技术研发人员:高强,
申请(专利权)人:西安雷风电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。