vzAny コントラクト

vzAny および Multi-Site

vzAny管理対象オブジェクトは、各 EPG の個別のコントラクト関係を作成するのではなく、1 つまたは複数のコンテキストに仮想ルーティングと転送 (VRF) のすべてのエンドポイント グループ (EPG) を関連付ける便利な方法を提供します。

Cisco ACI ファブリックでは、コントラクトのルールにより、EPG は他の EPG としか通信できません。EPG とコントラクトの関係によって、EPG がコントラクトのルールに定義された通信を提供するのか、消費するのか、あるいは提供も消費も行うのかが指定されます。VRF 中のすべての EPG にコントラクトのルールを動的に適用することで、vzAny ではEPG とコントラクトとの関係を設定するプロセスが自動化されます。新しい EPG が VRF に追加されるたびに、vzAny コントラクト ルールが自動的に適用されます。vzAny と EPG の「1 対すべて」の関係は、コンテキスト中のすべての EPG にコントラクトのルールを適用するための最も効率的な方法です。

利点

Cisco ACI のポリシー情報は、ファブリックスイッチの TCAM テーブルにプログラムされています。TCAM エントリは、一般的に、コントラクト経由で互いに通信することを許可する EPG の各ペアに固有の特定のものです。このことは、同じコントラクトが再使用された場合でも、複数の TCAM エントリが EPG の各ペアに対して作成されることを意味します。

ポリシー TCAM テーブルのサイズは、使用しているスイッチの生成に応じて異なります。特定の大規模環境では、ポリシーTCAMの使用を考慮し、制限を超えないようにすることが重要です。

vzAny を使用すると、同じ VRF 内のすべての EPG を単一の「グループ」に結合し、単一の TCAM エントリのみを消費しながら、グループ内の個々の EPG ではなく、そのグループとのコントラクト関係を作成できます。これにより、TRF スペースだけでなく、VRF 内の個々の EPG の複数のコントラクト関係の作成に費やす時間を節約できます。

使用例

vzAny には次の 2 つの代表的な使用例があります。

  • 自由な VRF 間通信 に記載されているとおり、同じ VRF 内の EPG 間の自由な通信。

  • 多対 1 の通信 で詳細に説明するように、多 対 1 の通信により、同じ VRF 内のすべての EPG が単一の EPG から共有サービスを利用できるようになります。

vzAny およびマルチサイトのガイドラインと制限事項

vzAny を使用するときには、次の制約事項および使用上のガイドラインが適用されます。

  • 特定の VRF の vzAny オブジェクトを有効にしてコントラクトを提供または消費することを計画している場合は、次の追加の制限が適用されます。

    • 特定の VRF の vzAny がコントラクト C1 のコンシューマとして設定されている場合、他の VRF の vzAny オブジェクトを C1 のプロバイダーとして設定してはなりません。

    • 特定の VRF の vzAny がコントラクト C1 のプロバイダーとして設定されている場合、他の VRF の vzAny オブジェクトを C1 のコンシューマとして設定してはなりません。

    • 特定の VRF の外部 EPG 部分がコントラクト C1 を使用している場合、他の VRF の vzAny オブジェクトを C1 のプロバイダーとして設定してはなりません。

    • 特定の VRF の EPG 部分がコントラクト C1 を使用している場合、他の VRF の vzAny オブジェクトを C1 のプロバイダーとして設定してはなりません。

    • 特定の VRF の vzAny が契約 C1 のプロバイダーとして設定されている場合、EPG、外部 EPG、または他の VRF の vzAny オブジェクトを C1 のコンシューマとして設定してはなりません。

  • 特定の VRF の EPG および外部 EPG オブジェクトは、その VRF の vzAny がすでにコントラクトを使用または提供している場合、優先グループの一部として設定しないでください。

  • 特定の VRF 内の EPG または外部 EPG オブジェクトがクラウド サイトに展開されている場合、その VRF の vzAny を設定してコントラクトを消費または提供することはできません。

  • vzAny は、ファブリックが Cisco ACI 5.2(4) リリース以降を実行しているマルチサイト ドメインの一部である場合にのみ、VRF 間サイト間 L3Out 設定でサポートされます。

  • vzAny は、PBR でサービスグラフに関連付けられているコントラクトを、消費したり、または提供したりすることはできません。

  • vzAny は、VRF 内通信を確立するためのコントラクトのプロバイダ、コンシューマ、または両方として設定できます。

  • vzAny は、共有サービスのコンシューマとしてのみサポートされていますが、プロバイダとしてはサポートされていません。

  • VzAny VRF は、EPG とそれを使用する BD を導入する予定のすべてのサイトに拡張することをお勧めします。

  • APIC から既存の vzAny 設定をインポートできます。


    (注)  


    既存の問題 (CSCvt47568) が原因の特定の事例で、Multi-Site Orchestrator から再展開する前にインポートされた設定を変更した場合、APIC で一部の変更が正しく更新されない場合があります。これを回避するには、インポート後すぐに設定を再展開してから、変更を加えます。変更されていない設定を再展開すると、通常どおりに更新できるようになります。


  • vzAny プロバイダとコンシューマには、アプリケーション EPG、L3Outs に関連付けられた外部 EPG、インバンドまたはアウトオブバンドアクセスのためのエンドポイントグループが含まれます。

  • vzAny は、外部発信トラフィックの 0.0.0.0/0 分類を暗黙に作成し、任意の外部 IP サブネットから発信されたすべてのトラフィックを許可します。VzAny が VRF に使用されている場合は、その VRF の L3Outs 部分に関連付けられた外部 EPG も含まれているため、VRF 自体で指定されたサブネットを含む L3external 分類を作成したことに相当します。

  • VRF 内の EPG が別の VRF の EPG から共有サービス コントラクトを消費している場合、プロバイダ VRF の EPG からのトラフィックは、コンシューマー VRF 内でフィルタリングされます。vzAny は、送信元または宛先 EPG のワイルドカードに相当します。

    コンシューマ VRF の vzAny と別のプロバイダー VRF の EPG1 の間で共有サービス契約を設定する場合は注意してください。ポリシーの適用(フィルタリング)は常にコンシューマー VRF で実行されるため、プロバイダー VRF の一部である別の EPG2 に関連付けられたサブネットがコンシューマー VRF に漏洩した場合、EPG2 は、明示的にコントラクトを提供しなくても、VRF 全体でコンシューマー EPG との通信を開始します。このガイドラインに従わないと、VRF にわたる EPG 間での意図しないトラフィックが発生する可能性があります。

  • 「Allow all」フィルタを使用して、コントラクトのプロバイダとコンシューマの両方として vzAny を使用した VRF を設定することは、非強制 VRF の設定と同じです。これは、その VRF 内のすべての EPG がコントラクトなしで相互に通信できることを意味します。

  • コントラクトの範囲がアプリケーション プロファイルの場合、vzAny 設定は無視され、フィルタ ルールが拡張されます。CAM 使用率は、特定のコントラクトがコンシューマとプロバイダ EPG の各ペアの間に展開された場合と同じです。この場合、TCAM スペースの使用には利点がありません。

  • 共有サービスの場合は、コンシューマ (vzAny) 側の宛先の分類 (Pctag) を適切に導出するために、EPG の下にプロバイダ EPG 共有サブネットを定義する必要があります。コンシューマとプロバイダの両方のサブネットがブリッジ ドメイン下で定義され、共有サービス コンシューマとして機能する vzAny に対して、BD から BD への共有サービス設定から移行する場合は、少なくとも共有フラグを使用してプロバイダ サブネットを EPG に追加する追加の設定手順を実行する必要があります。ただし、EPG の下のサブネットは接続に必要ではないため、常に No default SVI gatewayフラグをチェックすることを推奨します。

    定義済みの BD サブネットの複製として EPG サブネットを追加する場合は、サブネットの両方の定義に同じフラグが定義されていることを確認してください。それをしない場合、エラーが発生する可能性があります。

コントラクトとフィルタの作成

vzAny を使用するときは、基本的にコントラクト関係の単一のポイントを作成します。そのため、そのような関係とコントラクトのフィルタに使用する一般的なコントラクトが必要です。

このセクションでは、特別にこの目的の新しいコントラクトを作成する方法を説明します。代わりに、各 apic サイトで設定した既存の vzAny コントラクトのインポートを選択できます。

手順


ステップ 1

Nexus Dashboard Orchestrator の GUI にログインします。

ステップ 2

左側のナビゲーション ペインで、[スキーマ (schema)] を選択します。

ステップ 3

コントラクトを作成したいスキーマを選択します。

更新する既存のスキーマがある場合は、メイン ウィンドウ ペインでスキーマの名前をクリックするだけでかまいません。そうではない場合、新しいスキーマを作成する場合は、[スキーマの追加 (Add Schema)] ボタンをクリックして、いつも通り、名前やテナントなど、スキーマ情報を指定してください。

ステップ 4

フィルタを作成します。

  1. フィルタ エリアまでスクロールし、+ をクリックしてフィルタを作成します。

  2. コントラクトの名前を指定します。

  3. [+エントリ (+ Entry)] をクリックし、フィルタ エントリを追加します。

  4. [エントリの追加 (Add Entry)] ウィンドウでフィルタの詳細を入力します。

    通常、許可するトラフィックの種類を定義する場合と同様に、フィルタの詳細を指定します。

  5. [保存 (SAVE)] をクリックして、エントリを追加します。

  6. (オプション) 必要な場合は、追加のフィルタ エントリを作成します。

ステップ 5

コントラクトを作成します。

  1. コントラクト エリアまで下方へスクロールし、+ をクリックして新しいコントラクトを追加します。

  2. コントラクトの名前を指定します。

    例: contract-vzany

  3. コントラクトの範囲を選択します

    使用例に適切な範囲を選択します。たとえば、クロステナント共有サービスを有効にする場合は、範囲を「グローバル (Global)」に設定します。

  4. コントラクトが両方向に適用されるかどうかを選択します。

  5. [+フィルタ (+Filter)] をクリックして、1 つ以上のコントラクト フィルタを追加します。

  6. [フィルタ チェーンの追加 (Add Filter Chain)] ウィンドウで、前の手順で作成されたフィルタを選択します。

  7. [保存 (SAVE)] をクリックして、フィルタを追加します。

  8. (オプション) 必要な場合は、手順を繰り返してフィルタを追加します。

  9. (オプション) [両方向を適用 (Apply Both Directions)] オプションを無効にする場合、コンシューマーとプロバイダの両方向にフィルタを提供します。

これで、次のセクションの vzAny で使用するコントラクトを作成しました。


コントラクトを消費または提供するための vzAny の設定

ここでは、vzAny VRF を作成する方法、または vzAny の既存の VRF を有効にする方法について説明します。

始める前に

次のものが必要です。

手順


ステップ 1

Nexus Dashboard Orchestrator の GUI にログインします。

ステップ 2

左側のナビゲーション ペインで、[スキーマ (schema)] を選択します。

ステップ 3

VzAny VRF のスキーマを選択します。

更新する既存のスキーマがある場合は、メイン ウィンドウ ペインでスキーマの名前をクリックするだけでかまいません。そうではない場合、新しいスキーマを作成する場合は、[スキーマの追加 (Add Schema)] ボタンをクリックして、いつも通り、名前やテナントなど、スキーマ情報を指定してください。

ステップ 4

VRF を作成または選択します。

コントラクトを提供または消費するために vzAny を設定する既存の VRF がある場合は、メイン ウィンドウ ペインで [VRF] をクリックします。それ以外の場合は、新しい VRF を作成する場合、[VRF] エリアまで下にスクロールし、[+] 記号をクリックします。

ステップ 5

[vzAny] を選択します。

右側のサイドバーで、[vzAny] チェックボックスをオンにします。

ステップ 6

vzAny コントラクトを選択します。

[+ Contract] オプションは、[vzAny] チェックボックスを有効にすると使用可能になります。

  1. [+コントラクト (+Contract)] をクリックし、新しいコントラクトを追加します。

  2. コントラクトを選択します。

    コントラクトとフィルタの作成で作成したコントラクトを選択します。

  3. 契約タイプを選択します。

    使用例に基づいて、契約のコンシューマまたはプロバイダのいずれかを選択できます。


vzAny VRF の一部として EPG を作成する

VzAny のユースケースには、新規作成するか、既存の EPG を使用するかを選択できます。EPG には明示的な vzAny 設定がなく、vzAny VRF の一部であるすべての EPG に対して、無料の通信がデフォルトで許可されています。すでに作成され、構成されているすべての EPG に対して vzAny を有効にしているだけである場合は、このセクションをスキップすることができます。

始める前に

次のものが必要です。

手順


ステップ 1

vzAny VRF の一部として EPG を作成する場合

  1. EPG に使用する BD を作成してください。

  2. BD 構成サイドバーの [Virtual Routing & Forwarding (仮想ルーティングと転送)] ドロップダウンで、作成する vzAny VRF を選択します。

  3. EPG を作成します。

  4. EPG 設定サイドバーの [Bridge Domain(ブリッジ ドメイン)] ドロップダウンでは、作成する BD を選択します。

ステップ 2

vzAny VRF の一部として外部 EPG を作成する場合

  1. 外部 EPG を作成します。

  2. 外部 EPG 構成サイドバーの [Virtual Routing & Forwarding (仮想ルーティングと転送)] ドロップダウンで、作成する vzAny VRF を選択します。


自由な VRF 間通信

このセクションでは、制限の課されない VRF 間通信のための、様々なスキーマの例を示します。示されているすべてのシナリオにおいて、vzAny は permit any フィルタを使用してコントラクトを提供し、消費します。これは基本的に、ポリシーを適用せずに ACI ファブリックをネットワーク接続に使用します。これは、「VRF 非強制」オプションと同等です。

図 1.

次のすべての使用例では、以下で要約されていものと同じ目的とポリシーを作成する必要があります。ただし、スキーマとテンプレート設計は、サイトの数だけではなく、拡大するオブジェクトに応じて異なります。特定のセクションには、テンプレート レイアウトに関するレコメンデーションが含まれます。

手順


ステップ 1

スキーマを作成します。

ステップ 2

単一の共通テンプレートを作成します。

ステップ 3

EPG が展開されるサイトのそれぞれの組み合わせに対して、追加のテンプレートを作成します。

1つのテンプレートをすべてのサイトに展開する場合は、この手順をスキップできます。このセクションの使用例のダイアグラムは、テンプレートの例を示します。

ステップ 4

共通テンプレート内で、vzAny によって消費/提供されるコントラクトとフィルタを作成します。

この特定の使用例では、コントラクトに 1 つの「permit-any」フィルタルールが必要です。

具体的な手順については、コントラクトとフィルタの作成 を参照してください。

ステップ 5

共通テンプレート内で、VRF を作成し、「permit-any」ルールを使用して以前に定義されたコントラクトを消費して提供するように vzAny を設定します。

これにより、VRF 内の自由な通信を確立できるようになります。

具体的な手順については、コントラクトを消費または提供するための vzAny の設定 を参照してください。

ステップ 6

各サイトのテンプレート内で、そのサイトにのみ展開される EPG を作成して設定します。

すべてのサイトに単一のテンプレートを展開する場合は、代わりに VRF と同じテンプレート内で EPG を作成します。このセクションの使用例のダイアグラムは、テンプレートの例を示します。

これについては、vzAny VRF の一部として EPG を作成するで説明します。

ステップ 7

すべてのサイトに共通のテンプレートを割り当てます。

ステップ 8

各テンプレートを適切なサイトに割り当てます。

ステップ 9

テンプレートを展開します。


拡張された EPG

次の例は、EPG または 外部 EPG の VRF 内通信を示し、それらのすべてはサイト間で拡張できます。この例では、EPG1 と EPG2 は同じ BD1 にマップされますが、両方の BD が VRF1 の一部である限り、それぞれが異なる BD の一部となる可能性があります。

このケースでは、同じテンプレート内のすべてのオブジェクトを作成し、テンプレートをすべてのサイトに展開できます。

図 2.

サイトローカル EPG

以下の例は、EPG または 外部 EPG 間の VRF 内通信を示しています。この場合、どの EPG も拡張されていませんが、vzAnyが「permit-any」コントラクトを消費して提供するため、相互に自由に通信できます。

この場合、複数のテンプレートを作成する必要があります。

  • 各サイトに展開された共有オブジェクト (VRF、コントラクト) の単一のテンプレート。

  • およびそのサイトに展開された EPG と BD を含むサイトごとの個別のテンプレート。

拡張されていないオブジェクトの場合は、シャドウ オブジェクトがほかのサイトで作成されます。

図 3.

サイト ローカルおよび拡張 EPG の組み合わせ

次の例は、EPG または 外部 EPG の間の VRF 内通信を示しています。一部の EPG は拡張されていますが、他のものは単一のサイトにのみ展開されます。それでも、すべての EPG は相互に自由に通信できます。vzAny は「すべて許可」のコントラクトを消費し、提供するからです。

この場合、複数のテンプレートを作成する必要があります。

  • すべてのサイトに展開されている共有オブジェクト (VRF、コントラクト、BD) 用の単一のテンプレート。

  • また、これらのサイトにのみ展開されたオブジェクトを含むサイトの組み合わせごとに個別のテンプレートがあります。

拡張されていないオブジェクトの場合は、シャドウ オブジェクトがほかのサイトで作成されます。

図 4.

VRF 内のサイト間 L3Out

このユース ケースでは、1 つの vzAny VRF 内の複数の EPG 用に、サイト間 L3Out を設定できます。L3Out の外部 EPG が同じ VRF 内に存在する場合には、外部 EPG にプロバイダを明示的に追加する必要はありません。

この点を念頭に置くと、サイト間 L3Out を設定する場合には、ポッドごとにルーティング可能な TEP を設定することが必要になります。追加のサイト間 L3Out の詳細と要件については、サイト間 L3Out の概要 のセクションで説明されています。

この場合、次のように、複数のテンプレートを作成する必要があります。

  • まず、1 つまたは複数のサイトに展開されている共有 vzAny オブジェクト (VRF、コントラクト、BD) 用の単一のテンプレートです。

  • また、これらのサイトにのみ展開されたオブジェクトを含む、サイトの組み合わせごとの個別のテンプレートです。

図 5.

多対 1 の通信

以下の 3 つのセクションでは、共有サービスを提供する単一の EPG との同じ vzAny VRF 通信の一部である、複数の EPG のスキーマの例を示します。この例では、1 つ以上のフィルタ ルールを指定できます。

共有サービスを提供する EPG は、個別の VRF 内のものであることも (下の図を参照)、vzAny VRF の一部であることも可能です。

図 6.

次のすべての使用例では、以下で要約されていものと同じ目的とポリシーを作成する必要があります。ただし、スキーマとテンプレート設計は、サイトの数だけではなく、拡大するオブジェクトに応じて異なります。特定のセクションには、テンプレート レイアウトに関するレコメンデーションが含まれます。

手順


ステップ 1

スキーマを作成します。

ステップ 2

単一の共通テンプレートを作成します。

ステップ 3

EPG が展開されるサイトのそれぞれの組み合わせに対して、追加のテンプレートを作成します。

ステップ 4

共通テンプレート内で、vzAny によって消費され、共有サービスを提供する EPG によって提供される、コントラクトとフィルタを作成します。

これについては、コントラクトとフィルタの作成で説明します。

ステップ 5

共通テンプレート内で、VRF を作成し、前に定義したコントラクトを消費してするよう vzAny を設定します。

これについては、コントラクトを消費または提供するための vzAny の設定で説明します。

ステップ 6

各サイトのテンプレート内で、vzAny VRF の一部となる EPG を作成して設定します。

これについては、vzAny VRF の一部として EPG を作成するで説明します。

ステップ 7

プロバイダ EPG を新規作成して設定するか、既存のプロバイダ EPG または外部 EPG を設定します。

プロバイダ EPG の新規作成と設定、既存のプロバイダ EPG または外部 EPG の設定は、通常どおりの方法で行います。

ステップ 8

プロバイダ EPG にコントラクトを割り当てます。

vzAny が消費するコントラクトの割り当てに加えて、同じコントラクトをプロバイダ EPG に割り当てることも必要になります。


VzAny VRF 内のプロバイダ EPG

次の例は、単一のプロバイダ EPG (たとえば、共有サービス) と、同じ VRF 内の他のすべての EPG 間のサービスを消費する VRF 間の通信を示しています。

この場合、複数のテンプレートを作成する必要があります。

  • すべてのサイトに展開されている共有オブジェクト (VRF、コントラクト、BD) 用の単一のテンプレート。

  • また、これらのサイトにのみ展開されたオブジェクトを含むサイトの組み合わせごとに個別のテンプレートがあります。

次の図は、1つのストレッチ VRF/BD の設定を示しています。代わりに、EPG ごとに専用 BD を設定してマッピングすることもできます。その場合は、シャドウ BD がリモートサイトに展開されます。

図 7.

独自の VRF でのプロバイダ EPG

次の例は、独自の VRF 内の単一の EPG (たとえば、共有サービス プロバイダ) と、異なる vzAny VRF 内のすべての EPG との間の通信を示しています。プロバイダ EPG は、vzAny VRF のコンシューマ EPG と同じサイトまたは別のサイトに展開できます。

この場合、次のように、複数のテンプレートを作成する必要があります。

  • まず、1 つまたは複数のサイトに展開されている共有 vzAny オブジェクト (VRF、コントラクト、BD) 用の単一のテンプレートです。

  • また、これらのサイトにのみ展開されたオブジェクトを含む、サイトの組み合わせごとの個別のテンプレートです。

図 8.