マルチテナント環境で単にフォルダを分けるだけは、真の分離ではない。
MSPやサービスプロバイダーの環境では、各顧客に個別のアプライアンスを使うのはコストが高く、管理が難しく、容量面で非効率です。しかしすべての顧客を単一デバイス上で名前やフォルダの分離だけで実行するのも不十分です。トラフィック、ログ、ネットワーク、リソース、権限の境界が明確に分離されなければ、テナントは互いに影響を与え得ます。
コンプライアンスを要する環境では、この分離はさらに重要になります。PCI、ヘルスケアデータ、政府分類といった異なるセキュリティ範囲が同じ物理リソース上で動作するなら、どのテナントがどのリソース、どのネットワーク、どのログにアクセスできるかが証明可能でなければなりません。ソフトウェアによるタグ付けだけでは、多くのシナリオで信頼を与えるのに不十分です。
マルチテナント構成では、リソース消費も運用リスクを生みます。あるテナントの接続数、トラフィック密度、ログ量、誤設定が、他のテナントのパフォーマンスに影響を与えてはなりません。そのため、CPU、メモリ、ディスク、ネットワークインターフェース、フロー制限はテナントレベルで計画されなければなりません。
正しいアプローチは、各テナントを個別の作業ゾーンとして扱い、リソース、ネットワーク、ログ、監査、管理権限をテナント境界に従って分離することです。テナント分離はUIレベルだけでなく、トラフィックとリソースの面でも適用されなければなりません。
TR7 vTenant仮想化はこのモデルを提供します:単一TR7上で複数テナントを実行しながら、リソース、ネットワーク、運用の境界を個別に管理可能にします。
私たちのアプローチ
TR7 vTenantアーキテクチャは、テナントごとの独立した作業領域、割り当てられたネットワークリソース、分離されたトラフィックコンテキスト、リソースクォータのアプローチで構築されます。
各テナントは個別の作業ゾーンとして扱われる
vTenantは、単一デバイス内で個別の管理境界とトラフィック境界を持つ独立した作業領域です。各テナントは自身のサービス、ネットワークコンテキスト、ログ、リソース設定を、他のテナントから分離された形で利用できます。
テナントごとに個別のネットワークインターフェースとトラフィック領域が提供される
物理インターフェースは、テナントに分割された仮想ファンクションやスロット構造で共有できます。これにより各テナントは自身のネットワーク表面を通じてトラフィックを受け取り、他のテナントのトラフィックと混ざりません。
ネットワークコンテキストはテナントレベルで分離される
各テナントは自身のIP、route、firewall、インターフェースコンテキストを持てます。同じIPレンジが異なるテナントで衝突せずに使え、トラフィックはテナント境界に従って評価されます。
CPU、メモリ、ディスク、フロー制限がテナントごとに割り当てられる
各テナント向けにプロセッサコア、メモリ、ディスク領域、接続/フロー制限を計画できます。このモデルは、あるテナントのリソース消費が他のテナントに影響を与えることを軽減します。
ケイパビリティ
vTenant仮想化は、マルチテナント構造をリソース、ネットワーク、アイデンティティ、ログ、運用のレベルで分離します。
テナントごとの独立した作業領域が複数顧客の分離を実現する
各vTenantは個別の作業領域として管理されます。テナント内で定義されたvService、証明書、ルール、ネットワーク、ログ構造は自身の境界内に留まります。MSPとサービスプロバイダーは異なる顧客を同じTR7上で並んで実行できます。このモデルは物理デバイス数を削減しながら運用上の分離を維持します。
テナントライフサイクルが起動、停止、再起動のフローをカバーする
各テナントは個別のライフサイクル動作で管理できます。テナントは起動、停止、再起動、または自動起動動作で構成できます。これにより、あるテナントでメンテナンスを行う間、他のテナントが影響を受けないことが保証されます。運用チームは顧客または環境ごとのメンテナンスウィンドウを実行できます。
テナントごとに、いつでもそこにある帯域スライス
テナントには、作成時に装置全体の容量から差し引かれる固定の取り分が与えられ、その制御は表計算ではなく装置そのもので行われます。この取り分は意図的にwork-conservingではありません。空いているテナントの帯域が、忙しい隣のテナントに貸し出されることはないため、売ったものは顧客が求めたその瞬間に使えます — 利用率よりも予測可能性です。トラフィックは破棄ではなくペーシングされるので、上限に達したテナントはパケットを失うのではなく、速度が落ちます。
テナントごとのCPUコア割り当てがリソースのノイズを軽減する
TR7は、ホスト用に予約されたコアを考慮しつつ、テナントに割り当て可能なCPUコアを計画できます。重要なテナントにより多くのプロセッサリソースを割り当て、低負荷のテナントはより限定されたリソースで実行できます。これにより、密度の高い顧客トラフィックが他のテナントの制御プレーンに影響を与えることを軽減します。リソース管理は容量計画の一部になります。
テナントごとのディスク領域がデータとログの分離を強化する
各テナント向けに個別の作業ディスクと生データ領域を割り当てられます。デフォルト値から始められ、必要が増すにつれてテナントごとに計画できます。ログ、レポート、設定、一時データはテナント境界内に保持されます。この構造はコンプライアンスと運用上のデータ分離にとって重要です。
ハードウェア支援インターフェース割り当てがテナントトラフィックを分離する
物理ネットワークインターフェースからテナントへ仮想ファンクションを割り当てられます。各テナントは自身のインターフェーススロットを通じてトラフィックを受信・送信します。このアプローチはソフトウェアによるタグ付けよりも強力なトラフィック分離を提供します。高負荷のテナントでもパフォーマンスと分離が同時に維持されます。
インターフェースのtrustとspoof制御がテナントのネットワーク動作を管理する
テナントに割り当てられたインターフェースでtrustとspoof制御の設定を管理できます。これにより、テナントが自身のMACとトラフィック動作を予期される境界内で使うことが保証されます。特にマルチテナントネットワークでは、誤ったまたは衝突するアドレス動作が早期に制御されます。ネットワークセキュリティがテナント境界の自然な一部になります。
MACプレフィックスとスロットモデルがアドレス衝突を防ぐ
TR7はmacprefixとスロット構造でテナントインターフェース向けにユニークなMACアドレスを生成できます。このモデルは3バイトのプレフィックスとテナント/スロット情報を組み合わせて整然としたアドレッシングを提供します。同じデバイス上で多数のテナントとインターフェースが定義されたときに衝突リスクが軽減されます。ネットワークチームはテナントインターフェースをより読みやすく追跡できます。
ゾーンとインターフェースのビット領域がスケーラブルなテナント計画を実現する
TR7はdevice、zone、interfaceのビット領域でテナントとインターフェースの容量を計画します。6ビットのzone領域は64テナントまで、5ビットのinterface領域はテナントあたり32インターフェースまでのアドレッシングモデルを提供します。この構造は大規模なMSPとマルチ環境構築において整然としたスケーリングを実現します。テナントの成長は最初から予測可能な容量モデルに結びつきます。
個別のネットワークコンテキストがrouteとfirewallの分離を支える
各テナントは自身のIP、route、firewall、インターフェースビューを持てます。同じプライベートIPレンジが異なるテナントで衝突せずに使えます。これは複数顧客環境における古典的なRFC1918アドレス衝突問題を軽減します。トラフィックはテナントコンテキストで評価され、誤ったネットワーク領域に混ざりません。
テナントごとのログと監査の可視性がデータ漏洩を軽減する
各テナントのログと監査ストリームを個別に扱えます。あるテナントの運用記録は他のテナントから見えません。この分離は顧客のプライバシー、コンプライアンス、インシデント調査のプロセスにおいて極めて重要です。中央管理レベルで権限を持つユーザーはテナント別のレポートを作成できます。
内部コマンド実行がテナントのライフサイクルと診断操作を支える
テナント内への制御されたコマンド送信により、ライフサイクル、ヘルス、診断の操作を実行できます。これにより、テナント固有の問題調査やメンテナンスを行う際に、デバイス全体に影響を与えずに運用を実行できます。コマンド権限はRBACと監査で制限できます。サポートチームはテナントコンテキストでより速く診断できます。
中央管理とRBACがテナントの可視性を監査可能にする
Central Management側はテナントを一括して見て管理できます。RBACにより、ユーザーがどのテナントを見たり変更したりできるかを制限できます。MSPシナリオでは顧客別の権限分離ができます。管理の容易さとテナントのプライバシーが同じモデル内で維持されます。
運用上の深さ
vTenant運用は、デフォルトのディスク値、CPU計画、ビット領域、管理IPモデル、インターフェース割り当て、MACアドレス生成とともに運用されます。
デフォルトのディスク計画
各テナント向けにデフォルトの作業ディスクと生データ領域を定義できます。作業ディスクはデフォルト20 GB、生データ領域はデフォルト30 GBの初期値で迅速にセットアップでき、本番の負荷に応じて容量を増やせます。ログとレポートの量はディスク計画で別途考慮すべきです。
CPUリソース計算
総コア数からホスト用に予約された分を差し引いて、テナントに割り当て可能なコアプールを作ります。重要なテナントにより多くのコアを割り当てられます。このモデルはリソース分離を容量計画と結びつけます。
ビット領域の容量
device、zone、interfaceのビット領域は合計12ビットのアドレッシングモデルを構成します。6ビットのzone領域は64テナントの容量を、5ビットのinterface領域はテナントあたり32インターフェースの容量を提供します。これらの値は大規模構築におけるスケール計画を明確にします。
テナント管理IP
各テナント向けに管理目的のローカルIPを生成できます。このIPはテナントのライフサイクル、ヘルス、内部管理のフローで使えます。管理トラフィックはテナントのデータトラフィックとは別に扱うべきです。
インターフェーススロットモデル
テナントに割り当てられたインターフェースでは、スロット、VF数、MAC領域、MTUといった情報を保持できます。このモデルは物理ネットワークリソースをテナントに整然と分配することを実現します。スロット計画を変更する際はネットワークへの影響を慎重に評価すべきです。
MACプレフィックス生成
3バイトのmacprefixの上にテナントとスロット情報を加えてユニークなMACアドレスを生成できます。この構造はアドレス衝突を軽減し、インターフェースがどのテナントに属するかの追跡を容易にします。ネットワーク運用に読みやすさを提供します。
どんなシナリオで使われるか
MSP環境で複数顧客を単一TR7上に
サービスプロバイダーは30の顧客を個別のvTenantとして実行できます。各顧客が自身のネットワーク、ログ、ルール、リソース領域を持ち、運用は単一デバイス上で簡素化されます。
銀行業でPCI範囲をテナントごとに分離
カードデータを処理するテナントと企業Webトラフィックのテナントが、同じTR7上で個別の作業領域として動作できます。リソース、ネットワーク、監査の分離がコンプライアンスの証拠を強化します。
ヘルスケアで開発環境と本番環境を分離して実行
医療機関はテスト、開発、本番のトラフィックを個別のテナントに保持できます。本番の患者データと開発トラフィックは、同じ運用パネルから管理されつつ互いに分離されます。
政府環境で機密分類サービスと公開サービスの分離
政府機関は異なるセキュリティレベルのサービスを個別のテナントで実行できます。ネットワーク、ログ、アクセス権限がテナントごとに分離され、誤ったアクセスのリスクが軽減されます。
テスト、ステージング、本番の3環境構築
同じTR7上でテスト、ステージング、本番のテナントを作成できます。アプリケーションの変更は、本番に投入される前に同様のADC/WAAP動作で検証されます。
よくある質問
vTenantと古典的なソフトウェアによるマルチテナンシーの違いは何ですか?
いくつのテナントを同時に実行できますか?
各テナントに個別のネットワークインターフェースは必須ですか?
あるテナントのメンテナンスは他のテナントに影響しますか?
vTenantのログと監査の分離はどう機能しますか?
vTenantとCentral Managementはどう連携しますか?
単一TR7で複数テナント環境を構築する
リソース、ネットワーク、運用の分離により、MSP、銀行、ヘルスケア、政府の環境向けのテナント構造を。お客様自身の構築でライブデモをお見せします。