BGP ベースの仮想サービスは、VIP が BGP を介してアドバタイズされることを意味します。[VIP のアドバタイズ] フィールドが有効になっているすべてのピアで、対応する VIP がアドバタイズされます。
ラベルを使用して、アドバタイズする VIP を選択できます。VSVIP を構成するときに、特定のラベルを持つすべてのピアに特定の VIP がアドバタイズされる必要があることを定義できます。フロントエンドの各ピアは、ラベルがピアのラベルと一致する場合にのみ、仮想サービスから VIP ルート アドバタイズを受信します。
次の例を考えてみましょう。
1 つの SE が、FE-Router-1、FE-Router-2、FE-Router-3 の 3 つのフロントエンド ルーターに接続されています。
FE-Router-1、FE-Router-2、および FE-Router-3 には、Peer1、Peer2、および Peer3 というラベルがそれぞれ付いています。
グローバル VRF には、VS1、VS2、VS3 の 3 つの仮想サービスがあります。
VS1 (1.1.1.1) は Peer1 というラベル付きで構成されています。これは、仮想サービスが Peer1 にアドバタイズされることを意味します。
同様に、ラベルで定義されているとおりに、VS2 は Peer2 に、VS 3 は Peer3 にアドバタイズされます。
仮想サービスで BGP が有効になると、VIP はすべてのフロントエンド ルーターにアドバタイズされます。ただし、この場合、VIP は選択したピアにのみアドバタイズされます。
これを実装するために、VSVIP オブジェクト構成にラベル リスト bgp_peer_labels
が導入されています。
VsVip.bgp_peer_labels
は一意の文字列のリストです(最大 128 個の文字列)。
各文字列の長さは最大 128 文字です。ラベルは、大文字と小文字の英字、数字、アンダースコア、ハイフンで構成できます。
VSVIP にラベルがない場合、
advertise_vip
が True に設定されているすべての BGP ピアにアドバタイズされます。VSVIP に
bgp_peer_labels
がある場合、advertise_vip
フィールドが True に設定され、ラベルがbgp_peer_labels
に一致するピアは VIP アドバタイズを受信します。ただし、BGP ピア構成にラベルがないか、ラベルが一致しない場合、ピアは VIP アドバタイズを受信しません。
BGP ピア ラベルの構成
VS1 が VSVIP vs1-vsvsip
を使用する BGP 仮想サービスである例を考えてみましょう。
グローバル VRF には、ラベルのないピアが 1 つあります。
選択的 VIP アドバタイズを有効にするには、ピアに Peer1 ラベルを追加し、VsVip.bgp_peer_labels
に Peer1 ラベルを追加します。
BGP ピアを使用した VRF の構成
BGP ピア ラベルを構成するには、NSX Advanced Load Balancer ユーザー インターフェイスから次の手順を実行します。
[作成] をクリックします。
の順に移動します。[BGP ピアリングの有効化] チェック ボックスをオンにして、次のような BGP 関連の詳細を指定します。
BGP 自律システム ID
BGP ピア タイプ
ピアのキープアライブ間隔
ピアのホールド タイム
アドバタイズされたルートに使用されるローカル プリファレンス。
ローカル AS を考慮する必要がある回数。
このピアへのルートのアドバタイズに使用する [ラベル] を選択します。
[配置ネットワーク]を選択します。
[VIP をピアに広報] オプションを有効にします。
[保存] をクリックします。
または、次に示すように、CLI を使用して BGP ピアを構成できます。
configure vrfcontext global Updating an existing object. Currently, the object is: +----------------------------+------------------------------------------+ | Field | Value | +----------------------------+------------------------------------------+ | uuid | vrfcontext-a1c097dd-f58e-45ca-b90a-6de72a4fd19d | | name | global | | bgp_profile | | | local_as | 65000 | | ibgp | True | | peers[1] | | | remote_as | 65000 | | peer_ip | 10.10.114.19/24 | | subnet | 10.10.114.0/24 | | bfd | True | | network_ref | vxw-dvs-34-virtualwire-15-sid-1060014-blr-01-vc06-avi-dev010 | | advertise_vip | True | | advertise_snat_ip | True | | advertisement_interval | 5 | | connect_timer | 10 | | ebgp_multihop | 0 | | shutdown | False | | keepalive_interval | 60 | | hold_time | 180 | | send_community | True | | shutdown | False | | system_default | True | | lldp_enable | True | | tenant_ref | admin | | cloud_ref | Default-Cloud | +----------------------------+------------------------------------------+ [admin:]: vrfcontext> bgp_profile [admin:]: vrfcontext:bgp_profile> peers index 1 [admin:]: vrfcontext:bgp_profile:peers> label Peer1 [admin:]: vrfcontext:bgp_profile:peers> save [admin:]: vrfcontext:bgp_profile> save [admin:]: vrfcontext> save
VSVIP 1 の構成
NSX Advanced Load Balancer の VS VIP 作成画面から、必要に応じて BGP ピア ラベルを追加します。
configure vsvip vs1-vsvip Updating an existing object. Currently, the object is: +-----------------------------+-----------------------------------------+ | Field | Value | +-----------------------------+-----------------------------------------+ | uuid | vsvip-0cab1bbb-d474-4365-8ba4-9d6a3f0add34 | | name | vs1-vsvip | | vip[1] | | | vip_id | 0 | | ip_address | 1.1.1.1 | | enabled | True | | auto_allocate_ip | False | | auto_allocate_floating_ip | False | | avi_allocated_vip | False | | avi_allocated_fip | False | | auto_allocate_ip_type | V4_ONLY | | prefix_length | 32 | | vrf_context_ref | global | | east_west_placement | False | | tenant_ref | admin | | cloud_ref | Default-Cloud | +-----------------------------+-----------------------------------------+ [admin:]: vsvip> bgp_peer_labels Peer1 [admin:]: vsvip> save
注意事項
この機能は、BGP 仮想サービスにのみ適用されます。BGP を使用しない仮想サービスの場合、
bgp_peer_labels
フィールドは有効にできません。選択的 VIP アドバタイズが構成されている場合、
use_vip_as_snat
オプションは有効にできません。
BGP ラベルベースの仮想サービスの配置
NSX Advanced Load Balancer バージョン 21.1.4 より前のバージョンでは、BGP 仮想サービスの配置は最大 4 つの異なるピア ネットワークに制限され、ラベルは認識されませんでした。5 つ以上の異なるピア ネットワークが存在する場合、コントローラはランダムに 4 つのネットワークを選択します。
NSX Advanced Load Balancer バージョン 21.1.4 以降では、仮想サービスの配置は BGP ピア ラベルの構成に基づいて行われます。
使用事例 1:たとえば、ラベル X の仮想サービス VIP は、ラベル X を含むピアとの BGP ピアリングを持つ SE にのみ配置できます。
VRF
BGP ピア ラベル
VSVIP BGP ピア ラベル
ネットワーク 1
ラベル 1
ラベル 1
ネットワーク 2
ラベル 2
ラベル 2
ネットワーク 3
ラベル 3
ラベル 3
ネットワーク 4
ラベル 4
ラベル 4
ネットワーク 5
ラベル 5
この場合、仮想サービスはネットワーク 1、ネットワーク 2、ネットワーク 3、およびネットワーク 4 に配置されます。
使用事例 2:ラベルのない仮想サービス VIP は、任意のサブネット内のピアとの BGP ピアリングを持つ SE に配置できます。つまり、BGP ピアにラベルがあり、BGP 仮想サービス VIP にラベルがない場合、仮想サービス VIP はすべてのピア NIC(最大 4 つの異なるピア ネットワーク)に配置されるようにアドバタイズされます。
VRF
BGP ピア ラベル
VSVIP BGP ピア ラベル
ネットワーク 1
ラベル 1
ネットワーク 2
ラベル 2
ネットワーク 3
ラベル 3
ネットワーク 4
ラベル 4
ネットワーク 5
ラベル 5
この場合、仮想サービスは 4 つのネットワークのいずれかにランダムに配置されます。
使用事例 3:後でラベルを関連付けるために仮想サービス VIP が更新されると、SE は仮想サービス
SE_List
の更新を受信し、VIP は他のすべてのピアから取り消され、一致するラベルを持つピアに関連する NIC にのみ配置されます(中断を伴う更新)。たとえば、初期構成は次のようになります。VRF
BGP ピア ラベル
VSVIP BGP ピア ラベル
ネットワーク 1
ラベル 1
ラベル 1
ネットワーク 2
ラベル 2
ラベル 2
ネットワーク 3
ラベル 3
ラベル 3
ネットワーク 4
ラベル 4
ネットワーク 5
ラベル 5
注:ラベルを関連付けるために VS VIP で更新を行うと、仮想サービスの更新が中断されます。
更新された構成は次のとおりです。VRF
BGP ピア ラベル
VSVIP BGP ピア ラベル
ネットワーク 1
ラベル 1
ラベル 1
ネットワーク 2
ラベル 2
ラベル 2
ネットワーク 3
ラベル 3
ラベル 3
ネットワーク 4
ラベル 4
ラベル 4
ネットワーク 5
ラベル 5
使用事例 4:ラベルが仮想サービスから削除され、仮想サービス VIP にラベルが残っていない場合、仮想サービス VIP はすべてのピア NIC に配置されます(最大 4 つの異なるピア ネットワーク)。
使用事例 5:一致するピアがないラベルを使用して仮想サービス VIP が作成された場合、仮想サービスの作成時であるか、仮想サービス VIP ラベルが後で更新されたかに関係なく、無効な構成が原因で VS VIP の作成がブロックされます。
VRF
BGP ピア ラベル
VSVIP BGP ピア ラベル
ネットワーク 1
ラベル 1
ラベル 5
ネットワーク 2
ラベル 2
ネットワーク 3
ラベル 3
ネットワーク 4
ラベル 4
この場合、一致する VS VIP BGP ピア ラベルがないため、VS VIP の作成がブロックされ、「一致するラベルを持つ BGP ピアが存在しません」エラーが発生します。