次の方法で共有


Azure DevOps Serverの複雑なトポロジの例

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Azure DevOps Serverは、いくつかのトポロジ構成のいずれかで構成できます。 一般に、トポロジが単純なほど、Azure DevOps Serverデプロイをより簡単に維持できます。 ビジネス ニーズを満たす最も単純なトポロジをデプロイする必要があります。

この記事では、2 つの複雑なAzure DevOps Server トポロジについて説明します。 複雑なトポロジには、Azure DevOps Serverコンポーネントが多数のサーバーに分散されています。 地理的に離れた物理的な場所にある複数のドメイン内のクライアントによってアクセスされます。 Azure DevOps プロキシ サーバーは、SharePoint 製品やSQL Server Reporting Servicesなどのオプションコンポーネントに加えてインストールされます。 いくつかの異なるコード ベースがあり、これらのコード ベースにはそれぞれ、それらを使用するプロジェクト用の独自のプロジェクト コレクションがあります。 チーム プロジェクト コレクションのデータベースは、SQL Serverを実行している複数の異なるサーバーに格納されます。

複雑な単一ドメイン トポロジ

複雑なサーバー トポロジでは、クラスター内の複数のサーバーまたはその他のフェールオーバー構成を使用して、論理 Azure DevOps データとアプリケーション層コンポーネントをホストします。 次の図は、複雑な単一ドメイン トポロジを示しています。

複雑な単一ドメイン トポロジの例

このトポロジの例は、中程度の トポロジに似ています。 Azure DevOps Server サービスは 1 つのサーバーに展開され、Azure DevOps Server データベースは別のサーバーにインストールされ、Team Foundation Build とチームのテスト エージェントとテスト エージェント コントローラーが追加のサーバーにデプロイされます。 また、フェールオーバー コンポーネントが追加されました。 Azure DevOps データベースは、SQL Server クラスターにインストールされています。

この例の図は、シアトルとシアトルの子ドメインを示しており、それぞれが親ドメインに対する双方向の推移的信頼を持っています。 Azure DevOps Serverのサービス アカウントは、両方のドメインによって信頼されます。 地理的に離れた各子ドメインでは、帯域幅が制限された接続が使用されます。 Azure DevOps Serverのバージョン コード制御コンポーネントから参加を取得するには、このような限られた帯域幅条件下で非常に長い時間がかかる可能性があるため、バージョン管理ファイル プロキシ キャッシュとして機能するために、Azure DevOps プロキシ サーバーが各子ドメインにインストールされます。 すべてのクライアント要求は、バージョン管理コード の get 要求を除き、アプリケーション層に直接送信されます。 これらの要求は、Azure DevOps プロキシ サーバー経由で送信され、プロキシ サーバーにダウンロードされたすべてのソース ファイルがキャッシュされます。

この例のトポロジは、フォールト トレランスと高パフォーマンスにも関係しています。 データ層のフォールト トレランスは、SQL Server クラスタリング テクノロジを利用して提供されます。 複数の SharePoint Web アプリケーションは、SharePoint Web ファーム内のコレクション内のプロジェクトで使用するように構成されています。 プロジェクト コレクション データベースは、パフォーマンスを向上させ、個々の管理を容易にするために、SQL Server インスタンス間で分散されます。 SQL Server Reporting ServicesとSQL Server Analysis Server は、パフォーマンスを向上させるために別々のサーバーで実行されています。

この例は、最大 2,000 人のユーザーを持つ大規模な製品開発チーム向けに設計されています。

複雑なマルチドメイン トポロジ

複雑なマルチドメイン サーバー トポロジでは、2 つ以上のドメイン内の複数のサーバーが使用されます。 複雑な単一ドメイン トポロジと同様に、デプロイではクラスターまたはその他のフェールオーバー構成を使用して、Azure DevOps のデータ層のコンポーネントをホストします。 この展開の管理者は、ネットワーク負荷分散を構成し、運用負荷を分散するために複数のアプリケーション層サーバーを追加しました。 次の図は、複雑なマルチドメイン トポロジを示しています。

複雑なマルチドメイン トポロジ

複雑なマルチドメイン トポロジの続行

上記の例のように、このトポロジはフォールト トレランスと高パフォーマンス用に構成されています。 さらに、このトポロジは複数のドメインに分散されており、その一部は親ドメインの完全に信頼された子ドメインですが、そのうちの 1 つ (IsolatedLab.com) は完全に独立したドメインです。 Azure DevOps Serverによって使用されるサービス アカウントは、すべてのドメインの完全に信頼されたメンバーであり、両方のドメインで作業する必要があるユーザーに対して、必要に応じて、親ドメインと別のドメインの両方でユーザー アカウントが構成されています。 ファイアウォールは、Azure DevOps Serverに必要なポート間のトラフィックを許可するように構成されています。