openstack网络基本概念(转)
OpenStack的Neutron能够管理OpenStack环境中的虚拟 网络基础设施(VNI)。和物理网络基础设施(PNI)。 OpenStack的Neutron同意租户创建虚拟网络拓扑结构。包括的服务比如防火墙,负载均衡和虚拟专用网络(VPN)等等。
Neutron提供了对下面对象的抽象:网络,子网和路由器。
每一个都包括它所模仿物理硬件相应的功能:网络包括子网,不同的子网和网络之间的流量由路由来传递。
一个简单的网络拓扑图例如以下
不论什么创建的网络至少要包括一个“外部网络”(图中为ext-net)。
这个网络中。不像其他网络。不仅是实质上定义的网络。并且它还代表外部能够訪问openstack的外部网段。非openstack环境中的设备能够訪问“外部网络”中的某个IP。因为这样的网络仅表示外部网络的一个切片,DHCP在“外部网络”中是被禁用的。
除了“外部网络”,不论什么网络设置有一个或多个“内部 网络”(图中为icenet,icenet2)。
这些软件定义的网络直接连接到虚拟机。仅仅有虚拟机绑定在某个指定的内部网络上,或者是绑定在通过接口连接到路由的子网上,才能够直接訪问连接到该网络的虚拟机。
对于openstack环境外的网络訪问虚拟机,就须要在网络之间创建一个“路由”(图中为ice_route)。每一个“路由”都有一个连接到网络的网关以及连接多个子网的接口。就像一个物理路由器,某个子网上的虚拟机能够訪问连接到同一个路由器的其它子网的虚拟机(icenet2上的云主机能够訪问icenet上的云主机)。机器能够通过路由器的网关訪问外部网络。
此外,还能够分配“外部网络”的IP地址在内部网络的port上。仅仅要有云主机被连接到一个子网。则该连接被称为port。
你能够用虚拟机的port与外网IP地址相关联。
这样一来,外部网络中的实体就能够訪问openstack环境中的虚拟机了。比如icenet上的虚拟机被分配了外部IP为192.168.40.202,则该虚拟机能够通过该IP被外部訪问。
网络还支持安全组。
安全组使管理员可以在组上定义防火墙规则。虚拟机可以属于一个或多个安全组,Neutron应用这些安全组的规则来阻止或同意虚拟机的port,或流量类型的訪问。
Neutron的功能能够通过插件的形式来扩展,每一个Neutron的插件有自己的概念。内核插件和安全组插件是比較基础的插件。此外,防火墙服务(FWaaS),负载均衡服务(LBaaS)作为可选插件。