Azure でのマルチテナント ソリューションの設計

マルチテナント ソリューションは、複数の顧客またはテナントによって使用されるソリューションです。 テナントはユーザーとは異なります。 1 つの組織、会社、またはグループの複数のユーザーが 1 つのテナントを形成します。 マルチテナント アプリケーションの例を次に示します。

  • 会計ソフトウェア、作業追跡、その他のサービスとしてのソフトウェア (SaaS) 製品などの企業間 (B2B) ソリューション。
  • 音楽ストリーミング、写真共有、ソーシャル ネットワーク サービスなどの企業-消費者間 (B2C) ソリューション。
  • 企業内の複数の事業単位で使用される共有 Kubernetes クラスターなど、企業全体のプラットフォーム ソリューション。

Azure で独自のマルチテナント ソリューションを構築する場合、アーキテクチャで考慮する必要がある要素がいくつかあります。

このシリーズでは、Azure で独自のマルチテナント ソリューションを設計、構築、運用する方法に関するガイダンスを提供します。

Note

このシリーズでは、テナントという語はお客様のテナントを指すために使用しています。それは、お客様の顧客またはユーザーのグループである可能性があります。 このガイダンスは、Azure プラットフォーム上で独自のマルチテナント ソフトウェアソ リューションを構築することを目的としています。

Microsoft Entra ID には、個々のディレクトリを指すテナントという概念があり、マルチテナントという語は、複数の Microsoft Entra テナント間の相互作用を指すために使用しています。 用語は同じですが、概念が異なります。 Microsoft Entra のテナントという概念を指す場合、Microsoft Entra テナントという完全な用語を使用して曖昧さを排除します。

Scope

Azure はそれ自体がマルチテナント サービスです。このガイダンスの一部は、大規模なマルチテナント ソリューションを実行する Microsoft の経験に基づいています。 ただし、このシリーズで重点を置いているのは、Azure プラットフォームの力を利用しながらユーザーが自身のマルチテナント サービスを構築するのを支援することです。

さらに、ソリューションを設計する際には、考慮する必要がある領域が多数あります。 このセクションの内容は、マルチテナントの設計方法に固有の内容です。 Azure サービスのすべての機能、またはすべてのアプリケーションのアーキテクチャ設計に関する考慮事項は説明しません。 このガイドは、Microsoft Azure Well-Architected Framework と、使用する各 Azure サービスのドキュメントと組み合わせてお読みください。

対象ユーザー

このシリーズで提供されるガイダンスは、Azure でマルチテナント アプリケーションを構築しているすべてのユーザーに適用できます。 対象読者には、独立系ソフトウェア ベンダー (ISV) やスタートアップ企業など、企業または消費者のいずれを対象にしているかに関わらず、SaaS 製品を構築しているあらゆるユーザーも含まれます。 また、複数の顧客またはテナントが使用することを目的とした製品またはプラットフォームを構築しているすべてのユーザーも含まれます。

このシリーズの一部のコンテンツは、最高技術責任者 (CTO) やアーキテクトなどの技術的意思決定者や、Microsoft Azure でマルチテナント ソリューションを設計または実装するあらゆるユーザーに役立つように設計されています。 その他のコンテンツでは、より技術面に重点を置き、マルチテナント ソリューションを実装するソリューション アーキテクトとエンジニアを対象にしています。

Note

管理サービス プロバイダー (MSP) は、顧客に代わって Azure 環境の管理と運用を行い、その過程で複数の Microsoft Entra テナントと連携します。 これもマルチテナントの一種ですが、複数の Microsoft Entra テナントで Azure リソースを管理することに重点を置いています。 このシリーズは、このような問題についてのガイダンスを提供することを意図していません。

ただし、このシリーズが、MSP 向けのソフトウェアを構築する ISV や、マルチテナント ソフトウェアを構築してデプロイするすべてのユーザーにとって役立つ可能性があります。

このシリーズの内容

このシリーズの内容は、次の 3 つの主要なセクションで構成されています。

  • マルチテナント ソリューションのアーキテクチャに関する考慮事項: このセクションでは、マルチテナント ソリューションを計画および設計するときに注意する必要がある主な要件と考慮事項の概要について説明します。

    アーキテクチャに関する考慮事項は、最高技術責任者 (CTO) やアーキテクトなどの技術的意思決定者に特に関係があります。 また、製品マネージャーは、マルチテナントが自社のソリューションに与える影響を理解することが重要です。 さらに、マルチテナント アーキテクチャを使用する人はすべて、これらの原則とトレードオフにある程度精通している必要があります。

  • マルチテナントのアーキテクチャ アプローチ: このセクションでは、主要なクラウド リソースの種類を使用して、マルチテナント ソリューションを設計および構築するときに考慮できる方法について説明します。 このセクションでは、コンピューティング、ネットワーク、ストレージ、メッセージング、ID、AI/ML、IoT コンポーネントを含めたマルチテナント ソリューションの構築方法と、デプロイ、構成、リソースの編成、ガバナンス、コンプライアンス、コスト管理について説明します。

    アーキテクチャ アプローチは、ソリューション アーキテクトやリード開発者に役立つ設計です。

  • マルチテナント ソリューションのサービス固有のガイダンス: このセクションでは、特定の Azure サービスの対象となるガイダンスを提供します。 これには、ソリューション内のコンポーネントに対して検討するテナント分離モデルと、マルチテナント ソリューションに特に関連する機能の説明が含まれます。

    このサービス固有のガイダンスは、アーキテクト、リード開発者、およびマルチテナント ソリューション用の Azure コンポーネントを構築または実装するユーザーに役立ちます。

さらに、マルチテナント ソリューションのアーキテクトと開発者向けの関連リソースとリンクの一覧も提供しています。

ビデオ

このシリーズで取り上げているコンテンツの概要とマルチテナントの基本的な概念については、Microsoft Reactor のこのビデオをご覧ください。


次のステップ

マルチテナント ソリューションのアーキテクチャに関する考慮事項を確認します。