openstack网络(一)

来源:互联网 发布:转行做程序员 编辑:程序博客网 时间:2024/06/01 09:40

  • 什么是OpenStack Networking
  • OpenStack网络的特性
    • 交换机
    • 路由器
    • 负载均衡
    • 防火墙
    • 虚拟专用网络
    • 网络功能虚拟化
  • 网络类型
    • 管理网络
    • API 网络
    • 外部网络
    • 访客网络

在一个现代的数据中心,网络设备要比以前复杂的多。服务器,交换机,路由器,存储系统和防火墙安全设备等都可能是以虚拟机和虚拟网络设备的形式存在。这些设备对传统网络管理系统造成巨大压力,因为它们无法提供可扩展的自动化方法来管理下一代网络。现在,用户希望通过更快的配置实现灵活控制基础设施。OpenStack就能满足用户这种需求。

什么是OpenStack Networking

OpenStack Networking是一个可插拔,可扩展和API驱动的系统,用于在基于OpenStack的云中管理网络和IP地址。 与其他核心OpenStack组件一样,管理员和用户可以使用OpenStack Networking来最大限度地利用现有数据中心资源。
Neutron是OpenStack Networking的代号,它是一个独立的服务,可以独立于其他OpenStack服务,如Nova(计算服务),Glance(映像服务),Keystone(认证服务),Cinder(块存储)和 Horizon(UI界面)。 OpenStack网络服务可以在多个主机之间运行,以提供弹性和冗余,也可以将它们配置在单个节点上运行。
OpenStack Networking向用户提供应用程序可编程接口或API,并将请求传递到配置的网络插件以进行相应处理。 用户能够在云中定义网络连接,并允许云运营商利用不同的网络技术来增强和支持云。与许多其他OpenStack服务一样,Neutron需要访问数据库来存储网络配置。

OpenStack网络的特性

OpenStack网络包括许多技术,例如交换,路由,负载均衡,防火墙和虚拟专用网络。这些功能可以配置利用开源或商业软件,并为云运营商提供所有工具 需要建立一个功能完整的云环境。 OpenStack Networking还为第三方供应商提供了一个框架,用于构建和增强云的功能。

交换机

虚拟交换机可以理解为将虚拟机连接到OSI模型的第2层或数据链路层的虚拟网络软件应用程序。 Neutron支持多个虚拟交换平台,包括由bridge内核模块实现的Linux桥接和Open vSwitch。Open vSwitch(也称为OVS)是一种开源虚拟交换机,支持标准管理接口和协议,包括NetFlow,SPAN,RSPAN,LACP和802.1q ,VLAN标记。然而,这些功能中的许多功能并不向用户公开OpenStack API。除了VLAN标记之外,用户还可以使用L2-in-L3隧道协议(如GRE或VXLAN)在软件中构建overlay网络。 Open vSwitch可用于虚拟机和OpenStack控制之外的设备之间通信,例如硬件交换机,网络防火墙,存储设备,专用服务器等。

路由器

OpenStack网络通过使用IP转发,iptables和网络命名空间技术实现路由和NAT功能。在网络命名空间中,我们可以在命名空间中创建套接字,绑定端口和接口。每个网络命名空间都有自己的路由表,接口和iptables进程用来提供过滤和网络地址转换。通过利用网络命名空间来分隔网络,不必担心由租户创建的网络之间重叠的子网。在Neutron中配置路由器使虚拟机能够与云环境的外部网络或其他网络进行交互和通信。路由器命名空间也被防火墙服务(Firewall as a Service)和虚拟专用网络服务(Virtual Private Network as a Service)利用。

负载均衡

这个技术首先在Grizzly版本的OpenStack中引入,负载平衡服务(也称为LBaaS)为用户提供了跨多个实例或服务器分发客户端请求的能力。 用户可以创建监视器,设置连接限制等。 Kilo版本的OpenStack在实验状态中引入了第2版的LBaaS API。 v2 API比版本1有了很大的改进,在Liberty版本中,它应该是稳定的。 OpenStack Networking配有一个用于LBaaS的插件,在开源参考实现中使用HAProxy。

防火墙

在OpenStack的kilo版本中,有两种为实例提供安全性的方法:安全组和防火墙。 使用安全组时,实例将放置在共享公共功能和规则集的组中。 Iptables规则在计算节点上配置,并过滤流入和流出连接到每个实例的Linux桥接器的流量。 在参考实现中,当使用由防火墙服务(也称为FWaaS)提供的虚拟防火墙时,安全服务工作在网络的边缘处而不是在计算节点处处理。 Liberty版本的OpenStack,FWaaS API仍然处于实验状态,在将来的版本中不能保证向后兼容性。

虚拟专用网络

虚拟专用网络或VPN在诸如因特网的公共网络上扩展专用网络。 VPN使计算机能够跨公共网络发送和接收数据,就像它直接连接到专用网络一样.Neutron提供了一组API,允许用户在使用开放网络时创建从Neutron路由器到远程网关的基于IPSec的VPN隧道。

网络功能虚拟化

网络功能虚拟化或NFV是一种网络架构概念,其建议使用传统的虚拟化技术来替代网络中的独立网络设备。这些功能包括入侵检测,缓存,网关,WAN加速器,防火墙等。 OpenStack中对NFV的支持正在加强,但是需要在当前设计模型中进行重大转变,以支持诸如直接到虚拟化实例,未分配IP的接口和其他网络设备可能需要的功能。在Juno中,支持SR- IOV,也称为single root I/O虚拟化。使用SR-IOV后,不再需要虚拟机来使用半虚拟化驱动程序或连接到主机中的虚拟网桥。相反,虚拟机绑定到利用虚拟功能(virtual function:VF)实现的SR-IOV端口,从而允许虚拟机直接访问NIC硬件。解释如何配置对SR-IOV的支持超出了本书的范围,但更多信息可以访问【OpenStack Wiki】。

网络类型

OpenStack网络的架构可以知道,在网络上看到的至少四种不同类型的流量。

管理网络

管理网络(也称为内部网络)用在主机之间的内部通信,例如消息传送服务和数据库服务之类的服务。 所有主机将通过此网络彼此通信。 在许多情况下,该相同的接口也可以用于主机之间的Glance图像传输或一些其它带宽密集的业务。管理网络可以被配置在隔离的专用网络接口上或者与另一网络组合。

API 网络

API网络用于向云中的用户和云中的服务交互的。 服务的endpoint地址(如Keystone,Neutron,Glance和Horizon)是从API网络获取的。通常的做法是对API端点使用单个接口和IP地址,以及通过SSH对主机本身进行管理访问。

外部网络

外部网络为Neutron路由器提供网络访问。 一旦路由器已配置并连接到外部网络,该外部网络将成为虚拟机和其他网络资源的浮动IP地址的来源。 外网IP地址预能路由到达并且可由内部网络或因特网上的客户端访问。

访客网络

访客网络是专用于虚拟机流量的网络。 访客网络的选项包括局限于特定节点的本地网络,flat或VLAN tag网络,或通过GRE或VXLAN封装实现的虚拟overlay网络。 用于外部网络和访客网络的物理接口可以是专用接口或与其他类型流量共享的接口。


本文翻译自Learning OpenStack Networking (Neutron) Second Edition James Denton
仅供学习交流

0 0
原创粉丝点击