OpenStack网络介绍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenStack网络介绍相关的知识,希望对你有一定的参考价值。

OpenStack网络介绍

 

 

OpenStack里面的网络相对复杂、经常有人对几个网络概念搞混淆。因此,本文对OpenStack里面的Provider network 和 Tenant network 的概念及两者之间区别进行说明。

 

  1. 1.      Network

根据创建网络的用户的权限,Neutron network 可以分为以下两种:

Provider network管理员创建的和物理网络有直接映射关系的虚拟网络。

Tenant network租户普通用户创建的网络,物理网络对创建者透明,其配置由 Neutron根据管理员在系统中的配置决定。

 

根据网络的类型,Neutron network 可以分为以下五种:

VLAN network(虚拟局域网) 基于物理 VLAN 网络实现的虚拟网络。共享同一个物理网络的多个 VLAN 网络是相互隔离的,甚至可以使用重叠的 IP 地址空间。每个支持 VLAN network 的物理网络可以被视为一个分离的 VLAN trunk,它使用一组独占的 VLAN ID。有效的 VLAN ID 范围是 1 到 4094。

Flat network基于不使用 VLAN 的物理网络实现的虚拟网络。每个物理网络最多只能实现一个虚拟网络。

local network(本地网络):一个只允许在本服务器内通信的虚拟网络,不知道跨服务器的通信。主要用于单节点上测试。

GRE network (通用路由封装网络):一个使用 GRE 封装网络包的虚拟网络。GRE 封装的数据包基于 IP 路由表来进行路由,因此 GRE network 不和具体的物理网络绑定。

VXLAN network(虚拟可扩展网络):基于 VXLAN 实现的虚拟网络。同 GRE network 一样, VXLAN network 中 IP 包的路由也基于 IP 路由表,也不和具体的物理网络绑定。

 

  1. 2.      Provider network

Provider Network 是由 OpenStack 管理员创建的,和物理网络的某段直接映射。这种网络是可以在多个租户之间共享的。

 虽然可以创建 GRE 和 VXLAN 类型的 Provider network, 但是Provider network 只对 Flat 和 VLAN 类型的网络才有意义,因为 Provider network 的一个重要属性是 provider:physical_network,而这个参数对其他网络类型没有有意义。

 

  1. 3.      Tenant network

Tenant network 是由 tenant 的普通用户创建的网络。默认情况下,这类用户不能创建共享的 tenant network(因此Nuetron Server 的policy设置了"create_network:shared": "rule:admin_only"。),因此这种网络是完全隔离的,也不可以被别的 tenant 共享。

Tenant network 也有 local,flat,vlan,gre 和 vxlan 等类型。但是,tenant 普通用户创建的 Flat 和 VLAN tenant network 实际上还是 Provider network,所以真正有意义的是 GRE 和 VXLAN 类型,这种网络和物理网络没有绑定关系。


  1. 4.      Provider Network Tenant Network 的区别

有以下几个区别:

l  Provider network 是由 Admin 用户创建的,而 Tenant network 是由 tenant 普通用户创建的。

l  Provider network 和物理网络的某段直接映射,比如对应某个 VLAN,因此需要预先在物理网络中做相应的配置。而 tenant network 是虚拟化的网络,Neutron 需要负责其路由等三层功能。

l  对 Flat 和 VLAN 类型的网络来说,只有 Provider network 才有意义。即使是这种类型的 tenant network,其本质上也是对应于一个实际的物理段。

l  对 GRE 和 VXLAN 类型的网络来说,只有 tenant network 才有意义,因为它本身不依赖于具体的物理网络,只是需要物理网络提供 IP 和 组播即可。

l  Provider network 根据 admin 用户输入的物理网络参数创建;而 tenant work 由 tenant 普通用户创建,Neutron 根据其网络配置来选择具体的配置,包括网络类型,物理网络和 segmentation_id。X`

l  创建 Provider network 时允许使用不在配置项范围内的 segmentation_id。

以上是关于OpenStack网络介绍的主要内容,如果未能解决你的问题,请参考以下文章

Openstack 网络服务Neutron介绍和控制节点部署

从零构建OpenStack 云计算相关概念及OpenStack介绍

从零构建OpenStack 云计算相关概念及OpenStack介绍

OpenStack入门篇之OpenStack架构

OpenStack-liberty版网络介绍

openstack各组件介绍