VMware Integrated OpenStack 4.0 以降では、プロバイダおよびテナントにダイナミック ルーティングを構成することができます。
最初に VXLAN 外部ネットワークを作成する必要があります。これは後でゲートウェイ エッジの内部インターフェイスとして使用します。
前提条件
- 仮想ネットワーク プロバイダとして VMware NSX for vSphere を使用する必要があります。
手順
- 将来のテナント サブネットおよび外部 VXLAN ネットワーク サブネット用に IPv4 アドレス範囲を作成します。
neutron address-scope-create scope_name 4
- プロバイダ サブネット プールを作成します。
scope_name は、以前に作成したアドレス範囲の名前で置き換えます。
neutron subnetpool-create --pool-prefix 10.10.10.0/24 --default-prefixlen 24 provider_pool_name --address-scope scope_name
- テナント ネットワーク用のセルフサービス サブネット プールを作成します。
scope_name は、以前に作成したアドレス範囲の名前で置き換えます。
neutron subnetpool-create --pool-prefix 1.1.1.0/24 --default-prefixlen 26 selfservice --address-scope scope_name --shared
- 外部 VXLAN ネットワークを作成します。
次のコマンドを実行すると、 VMware NSX for vSphere 内に新しい論理スイッチが作成されます。
neutron net-create --provider:network_type vxlan --router:external external_VXLAN_network_name
- 外部 VXLAN サブネットを作成します。
provider_pool_name は、以前に作成したプロバイダ プールの名前で置き換えます。 external_VXLAN_network_name は、以前に作成したネットワークの名前で置き換えます。
neutron subnet-create --no-gateway --name ext_vxlan_subnet_name --disable-dhcp --allocation-pool start=start_IP,end=end_IP --subnetpool provider_pool_nameexternal_VXLAN_network_nameNETWORK[CIDR]
-
nsxadmin
ユーティリティを使用して、BGP ピアリング ゲートウェイ エッジを作成します。ゲートウェイ エッジは管理ネットワークを外部インターフェイスとして使用し、作成された外部ネットワークを内部インターフェイスとして使用します。nsxadmin -r bgp-gw-edge -o create --property name=name_GW-EDGE1 --property local-as=65001 --property external-iface=morefid:mgtnetwork --property internal-iface=morefid:internal_interface_network_GW-EDGE1 nsxadmin -r bgp-gw-edge -o create --property name=name_GW-EDGE2 --property local-as=65001 --property external-iface=morefid:mgtnetwork --property internal-iface=morefid:internal_interface_network_GW-EDGE2
- BGP 通知を使用して NSX Edge を更新します。
前の手順で作成したエッジの ID を使用します。
nsxadmin -r routing-redistribution-rule -o create --property gw-edge-ids=edge-ID_GW-EDGE1,edge-ID_GW-EDGE2 --property learner-protocol=bgp --property learn-from=connected,bgp --property action=permit
- BGP ネイバーを使用して NSX Edge を更新します。
前に作成したエッジの ID を使用します。
nsxadmin -r bgp-neighbour -o create --property gw-edge-ids=edge-ID_GW-EDGE1,edge-ID_GW-EDGE2 --property ip-address=IP_physical_router1 --property remote-as=65000 --property password=BGP_password nsxadmin -r bgp-neighbour -o create --property gw-edge-ids=edge-ID_GW-EDGE1,edge-ID_GW-EDGE2 --property ip-address=IP_physical_router2 --property remote-as=65000 --property password=BGP_password
- 物理ルーターを更新します。
-
AS
の値を 65000 に設定します。 - BGP ネイバーを name_GW-EDGE1 および name_GW-EDGE2 に設定します。
- 動的ゲートウェイとして自分自身を通知するように設定します。
-
- BGP スピーカーを作成して構成します。
- BGP スピーカーを作成します。
neutron bgp-speaker-create --local-as local_as_valuename_bgp_speaker
- BGP ピアを作成します。
neutron bgp-peer-create --peer-ip internal_interface_network_GW-EDGE1 --remote-as 65001 --password BGP_password --auth-type md5 name_GW-EDGE1 --esg-id edge-ID_GW-EDGE1 neutron bgp-peer-create --peer-ip internal_interface_network_GW-EDGE2 --remote-as 65001 --password BGP_password --auth-type md5 name_GW-EDGE2 --esg-id edge-ID_GW-EDGE2
- BGP スピーカーに BGP ピアを追加します。
neutron bgp-speaker-peer-add name_bgp_speakername_GW-EDGE1 neutron bgp-speaker-peer-add name_bgp_speakername_GW-EDGE2
- VXLAN ネットワークにスピーカーを関連付けます。
neutron bgp-speaker-network-add name_bgp_speakerexternal_VXLAN_network_name
- BGP スピーカーを作成します。
- (オプション) テナントの BGP ルーターを作成します。
テナント ユーザーは BGP ルーターを作成できます。テナント ユーザーが SNAT を使用しないでルーターを構成するには、
admin
である必要があります。- テナント用の 2 つの論理スイッチを作成し、これらのサブネット プールを作成します。
neutron net-create name_Tenant1_LS1 neutron subnet-create --name name_network_Tenant1-LS1name_Tenant1_LS1 --subnetpool selfservice neutron net-create name_Tenant1_LS2 neutron subnet-create --name name_network_Tenant1-LS2name_Tenant1_LS2 --subnetpool selfservice
- BGP 構成を持つルーターを作成します。
BGP はすべての形状の OpenStack 論理ルーター(
shared
、distributed
、およびexclusive
)で機能します。neutron router-create name_Tenant1-LR --router_type=exclusive neutron router-interface-add name_Tenant1-LRname_network_Tenant1-LS1 neutron router-interface-add name_Tenant1-LRname_network_Tenant1-LS2 neutron router-gateway-set name_Tenant1-LR --disable-snat external_VXLAN_network_name
- テナント用の 2 つの論理スイッチを作成し、これらのサブネット プールを作成します。