共通サービス
IaaSや、本番・開発環境など、マルチテナント型のサービスを構成しているケースにおいては、監視サーバやメール、AD、ストレージやファイルサービスなど全てのテナントに対して共通のサービスとして提供する通信要件があるケースは多いです。
もちろん各テナントに共通サービスを参加させ通信させることも可能ですが、その場合はテナント毎にポリシーの作成が必要です。
ACIではテナントをまたいで共通の通信要件をよりシンプルなポリシーによりデザインし共通サービス化することが可能です。
例えば、ユーザテナントPepsiとCokeがありこの2つのテナントに共通の監視やメール、ファイルサービスを提供したいと仮定します。

ACIにはあらかじめCommonテナントというものが用意されており、このテナントのリソースは全ての他のテナントが利用可能です。
このCommonテナントで、共通サービスのサーバ用のEPGを作成、通信サービスのContractを作成しProvideさせると各ユーザテナントにてこの共通サービスContractをConsumeすることができるようになります。
これによりユーザテナント追加時には、共通サービスをConsumeするだけで共通サービスとの通信が可能になり、あとはテナント固有の通信要件は各テナント内でポリシー設計をするとで、ポリシー設計をシンプルにすることが可能です。
それでは設定方法を見ていきましょう。
1.テナントCommonへのNW作成
まずは共通サービスの配置場所となるテナントCommonにてVRF,BDを作成します。
ここではVRF1という名前のContext、SharedBDという名前のBridgeDomainを作成します。
この共通サービスEPGを配備するBridgeDomainは、テナントをまたいで接続性を共通します。
通常のBDの作成方法と違うのはIPを定義しない点です。(手順3にてEPG配下でIPを定義します)

2.共通サービス用のEPG,Contractの作成
共通サービスを提供するサーバ用のEPGとその接続サービスであるContractを作成します。
ProviderとなるCommonテナント側で作成します。
SharedServiceという名前でANPを、SharedEPGという名前でEPGを作成します。ここでSharedEPGはCommonに作成したBDに所属させます。

共通接続サービスとなるSharedContractを作成します。
通常のContractと異なる点は、VRFをまたいで通信サービスを提供するので、ScopeをGlobalに変更ください。

共通サービスの提供者となるSharedEPGで作成したContractをProvideします。

テナント間でIPサブネットをLeakingするためにEPGの属性をSharedにします。(Provider側のみ設定します)

※Provider側 サブネットをL3Outに広報したい場合 、BDでも同じサブネットを設定 うえ、「Public」オプション(Advertised Externally)を有効にする必要があります。
共通サービスの提供側の準備は完了です。
ポリシーは図のようにSharedEPGがSharedContractをサービスとして提供している状態です。

3.利用者テナント側の設定
テナントPepsiが共通サービスを利用する場合の設定方法を見ていきましょう。
設定方法は非常にシンプルでCommonで作成したContractをConsumeするだけです。

これでテナントPepsiのWeb EPGに参加するサーバはテナントCommonの共通サービスにアクセスすることが可能です。
3.利用者テナントの追加
テナントCokeが追加になったと仮定し、ここのWeb EPGもCommonの共通サービスを利用する場合、
すでに共通サービスは作成されているので、同様のSharedContractをConsumeするだけで接続が可能になります。

4.Leafレベルでのルーティング確認
Leafのルーティングテーブルで確認すると、Commonテナント用のVRFでは両ユーザテナントのIPサブネットがLeakingされ通信が可能であること。
ユーザテナントではCommonのサブネットのみを受け取り共通サービスのみに通信が可能でテナント間通信は分離されていることが確認できます。


実際にPepsi,CokeのWeb EPGにエンドポイントからテナントCommonの共通サービスEPGに対して通信が可能であり、かつPepsi,CokeのWebサーバ同士は通信ができないことを確認できます。
このようにしてテナントCommonのリソースは、各テナントへ共通のサービスを配備するのに最適である、これをうまく活用することにより、ポリシーの簡素化と設定を迅速化することが可能になります。