OpenStack入门以及一些资料之(二、neutron网络)

注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明。


0、简介


     可以开发一个不包含任何特定于网络的功能的、可弹性扩展的工作负载管理系统。当然,计算节点需要在彼此之间建立连接,并能访问外部世界,但它也可以利用现有的网络基础架构来分配 IP 地址和在节点之间传输数据。在多租户环境中,这样一种方法的最大问题是,已有的网络管理系统无法高效、安全地在用户之间隔离流量 — 这同时也是构建公共和私有云的组织面临的一个巨大问题。

     OpenStack 解决此问题的一种方式是,构建一个详尽的网络管理堆栈,用它来处理所有网络相关请求。此方法面临的挑战是,每个实现都可能拥有一组独特的需求,包括与其他各种各样的工具和软件的集成。

     OpenStack 因此采取了创建抽象层的方法,这个抽象层被称为 OpenStack Networking,可容纳大量处理与其他网络服务的集成的插件。它为云租户提供了一个应用编程接口 (API),租户可使用它配置灵活的策略和构建复杂的网络拓扑结构 — 例如用它来支持多级 Web 应用程序。

     OpenStack Networking 支持使用第三方编写插件来引入高级网络功能,比如 L2-in-L3 隧道和端到端服务质量支持。它们还可以创建网络服务,比如负载平衡、虚拟专用网或插入 OpenStack 租户网络中的防火墙。



1、基本概念


Neutron将网络按照三层交换机的概念分为:

  • Network:相当于交换机根据vlan创建的一个三层接口;
  • Subnet:相当于交换机创建了一个三层接口地址;
  • Port:相当于交换机的一个物理端口,但是这个端口有一个MAC地址;

  1. 网络

在普通人的眼里,网络就是网线和供网线插入的端口,一个盒子会提供这些端口。对于网络工程师来说,网络的盒子指的是交换机和路由器。所以在物理世界中,网络可以简单地被认为包括网线,交换机和路由器。当然,除了物理设备,我们还有软的物件:IP地址,交换机和路由器的配置和管理软件以及各种网络协议。要管理好一个物理网络需要非常深的网络专业知识和经验。

Neutron网络目的是(为OpenStack云更灵活地)划分物理网络,在多租户环境下提供给每个租户独立的网络环境。另外,Neutron提供API来实现这种目标。Neutron中“网络”是一个可以被用户创建的对象,如果要和物理环境下的概念映射的话,这个对象相当于一个巨大的交换机,可以拥有无限多个动态可创建和销毁的虚拟端口。

  1. 端口

在物理网络环境中,端口是用于连接设备进入网络的地方。Neutron中的端口起着类似的功能,它是路由器和虚拟机挂接网络的着附点。

  1. 路由器

和物理环境下的路由器类似,Neutron中的路由器也是一个路由选择和转发部件。只不过在Neutron中,它是可以创建和销毁的软部件。

  1. 子网

简单地说,子网是由一组IP地址组成的地址池。不同子网间的通信需要路由器的支持,这个Neutron和物理网络下是一致的。Neutron中子网隶属于网络。



2、OpenStack网络类型



一个标准的 OpenStack 网络设置有 4 个不同的物理数据中心网络:

  • 管理网络:用于 OpenStack 各组件之间的内部通信。
  • 数据网络:用于云部署中虚拟数据之间的通信。
  • 外部网络:公共网络,外部或 internet 可以访问的网络。
  • API 网络:暴露所有的 OpenStack APIs,包括 OpenStack 网络 API 给租户们。

OpenStack 网络类型





3、OpenStack服务网络管理的三种模式


Flat 模式

Flat 模式和 FlatDHCP 模式其实区别不大,都是基于网桥网络,只是 FLat 模式需要管理员手动配置(包括配置网桥和外部的 DHCP 设备)。

图 8. Flat 网络拓扑
Flat 网络拓扑

FlatDHCP 模式

这种模式下与 Flat 模式不同的地方在于有一个 DHCP 进程,每一个运行 nova-network 进程的节点(网络控制节点/nove-network 主机)就是一个单独的网络。Nova 会在 nova-network 主机建立网桥(默认名称 br100,配置项 flat_network_bridge=br100),并给该网桥指定该网络的网关 IP,同时 Nova 在网桥处起一个 DHCP 进程,最后,会建立 iptables 规则(SNAT/DNAT)使虚拟机能够与外界通信,同时与一个 metadata 服务器通信以取得 cloud 内的信息。

计算节点负责创建对应节点的网桥,此时的计算节点网卡可以不需要 IP 地址,因为网桥把虚拟机与 nove-network 主机连接在一个逻辑网络内。虚拟机启动时会发送 dhcpdiscover 以获取 IP 地址。虚拟机通往外界的数据都要通过 nova-network 主机,DHCP 在网桥处监听,分配 fixed_range 指定的 IP 段。如图 9。

图 9. FlatDHCP 网络拓扑
FlatDHCP 网络拓扑

这种部署方式的缺点----单节点故障、无二层隔离(即所有的虚拟机都在一个广播域)。

VLAN 模式

VLAN(Virtual Local Area Network)的中文名为"虚拟局域网"。VLAN 是一种将局域网设备从逻辑上划分成一个个网段,从而实现虚拟工作组的新兴数据交换技术。

VLAN 模式与 Flat 模式的区别

在 Flat 模式下,管理员的工作流程应该是这样的:

  1. 为所有租户创建一个 IP 池:
        nova-manage network create --fixed_range_v4=10.0.0.0/16 –label=public
    
  2. 创建租户
  3. 租户创建虚拟机,为虚拟机分配 IP 池中的可用 IP

DB 中虚拟机信息可能如下图,从图中我们看到 2 个虚拟机处于同一网段。

图 10
图 10

在 VLAN 模式下流程如下:

  1. 创建新的租户,并记下租户的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值