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 プロキシ サーバーが各子ドメインにインストールされます。 バージョン管理コード の取得 要求を除き、すべてのクライアント要求はアプリケーション層に直接送信されます。 これらの要求は 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 に必要なポート間のトラフィックを許可するように構成されています。