4.6. 配置 VLAN 提供商网络

当您将单个 NIC 上的多个 VLAN 标记接口连接到多个提供商网络时,这些新的 VLAN 提供商网络可将虚拟机实例直接连接到外部网络。

先决条件

  • 您有一个物理网络,其范围为 VLAN。

    本例使用名为 physnet1 的物理网络,其范围为 VLAN,171-172

  • 您的网络和 Compute 节点使用物理接口连接到物理网络。

    本例使用网络节点和 Compute 节点,它们连接到物理网络 physnet1,使用物理接口 eth1

  • 这些接口连接到的交换机端口必须配置为中继所需的 VLAN 范围。

流程

  1. 在 undercloud 主机上,以 stack 用户身份登录,创建自定义 YAML 环境文件。

    示例

    $ vi /home/stack/templates/my-modules-environment.yaml

    提示

    Red Hat OpenStack Platform 编排服务(heat)使用一组名为 template 的计划来安装和配置您的环境。您可以使用自定义环境文件来自定义 overcloud 的各个方面,这是为工作流模板 提供自定义 的特殊模板。

  2. parameter_defaults 下的 YAML 环境文件中,使用 NeutronTypeDrivers 指定您的网络类型驱动程序。

    示例

    parameter_defaults:
      NeutronTypeDrivers: vxlan,flat,vlan

  3. 配置 NeutronNetworkVLANRanges 设置,以反映正在使用的物理网络和 VLAN 范围:

    示例

    parameter_defaults:
      NeutronTypeDrivers: 'vxlan,flat,vlan'
      NeutronNetworkVLANRanges: 'physnet1:171:172'

  4. 创建外部网络网桥(br-ex),并将端口(eth1)与其关联。

    这个示例将 eth1 配置为使用 br-ex

    示例

    parameter_defaults:
      NeutronTypeDrivers: 'vxlan,flat,vlan'
      NeutronNetworkVLANRanges: 'physnet1:171:172'
      NeutronBridgeMappings: 'datacentre:br-ex,tenant:br-int'

  5. 运行 openstack overcloud deploy 命令,并包含核心模板和环境文件,包括此新环境文件。

    重要

    环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源具有优先权。

    示例

    $ openstack overcloud deploy --templates \
    -e [your-environment-files] \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/my-neutron-environment.yaml

验证

  1. 创建外部网络作为类型 vlan,并将它们与配置的 physical_network 关联。

    运行以下命令创建两个网络:一个用于 VLAN 171,另一个用于 VLAN 172:

    示例

    $ openstack network create \
    			--provider-network-type vlan \
    			--provider-physical-network physnet1 \
    			--provider-segment 171 \
    			provider-vlan171
    
    $ openstack network create \
    			--provider-network-type vlan \
    			--provider-physical-network physnet1 \
    			--provider-segment 172 \
    			provider-vlan172

  2. 创建多个子网,并将其配置为使用外部网络。

    您可以使用 openstack subnet create 或控制面板来创建这些子网。确保从网络管理员收到的外部子网详情正确与每个 VLAN 关联。

    在本例中,VLAN 171 使用子网 10.65.217.0/24, VLAN 172 使用 10.65.218.0/24

    示例

    $ openstack subnet create \
    			--network provider-171 \
    			--subnet-range 10.65.217.0/24 \
    			--dhcp \
    			--gateway 10.65.217.254 \
    			subnet-provider-171
    
    $ openstack subnet create \
    			--network provider-172 \
    			--subnet-range 10.65.218.0/24 \
    			--dhcp \
    			--gateway 10.65.218.254 \
    			subnet-provider-172

其他资源