Beispiele für komplexe Topologien für Azure DevOps Server

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

Sie können Azure DevOps Server in einer von mehreren Topologiekonfigurationen konfigurieren. Im Allgemeinen gilt: Je einfacher die Topologie ist, desto einfacher können Sie eine Azure DevOps Server Bereitstellung verwalten. Sie sollten die einfachste Topologie bereitstellen, die Ihren Geschäftlichen Anforderungen entspricht.

In diesem Artikel werden zwei komplexe Azure DevOps Server Topologien beschrieben. Eine komplexe Topologie verfügt über Azure DevOps Server Komponenten, die auf viele Server verteilt sind. Auf sie wird von Clients in mehreren Domänen an geografisch entfernten physischen Standorten zugegriffen. Azure DevOps Proxy Server wird zusätzlich zu optionalen Komponenten wie SharePoint-Produkten und SQL Server Reporting Services installiert. Es gibt mehrere verschiedene Codebasen, und diese Codebasen verfügen jeweils über eine eigene Projektauflistung für die Projekte, die sie verwenden. Die Datenbanken für Teamprojektsammlungen werden auf mehreren verschiedenen Servern gespeichert, auf denen SQL Server ausgeführt wird.

Komplexe Einzeldomänentopologie

Eine komplexe Servertopologie verwendet mehrere Server in Clustern oder anderen Failoverkonfigurationen, um die logischen Azure DevOps-Daten- und Anwendungsebenenkomponenten zu hosten. Das folgende Diagramm zeigt eine komplexe Topologie mit einer Domäne:

Beispiel für eine komplexe Topologie mit einer Domäne

Diese Beispieltopologie ähnelt der moderaten Topologie. Azure DevOps Server Dienste werden auf einem Server bereitgestellt, und die Azure DevOps Server Datenbanken werden auf einem separaten Server installiert, wobei Team Foundation Build und die Test-Agents und Test-Agent-Controller des Teams auf zusätzlichen Servern bereitgestellt werden. Außerdem wurden Fail-Over-Komponenten hinzugefügt. Die Azure DevOps-Datenbanken wurden auf einem SQL Server-Cluster installiert.

Das Beispieldiagramm zeigt untergeordnete Domänen in Seattle und Cleveland, die jeweils eine bidirektionale transitive Vertrauensstellung für die übergeordnete Domäne aufweisen. Das Dienstkonto für Azure DevOps Server wird von beiden Domänen als vertrauenswürdig eingestuft. Jede geografisch entfernte untergeordnete Domäne verwendet eine Verbindung mit begrenzter Bandbreite. Da das Abrufen eines Eintrags aus der Versionscodesteuerungskomponente von Azure DevOps Server unter so begrenzten Bandbreitenbedingungen sehr lange dauern kann, wird in jeder untergeordneten Domäne ein Azure DevOps-Proxyserver installiert, um als Versionssteuerungsdateiproxycache zu fungieren. Alle Clientanforderungen werden direkt an die Anwendungsebene gesendet, mit Ausnahme von Anforderungen zum Abrufen von Versionssteuerungscode. Diese Anforderungen werden über den Azure DevOps-Proxyserver geleitet, der dann alle Quelldateien zwischenspeichert, die auf dem Proxyserver heruntergeladen werden.

Die Topologie in diesem Beispiel befasst sich auch mit Fehlertoleranz und hoher Leistung. Die Fehlertoleranz der Datenebene wird durch Die Nutzung der SQL Server Clustertechnologien bereitgestellt. Mehrere SharePoint-Webanwendungen werden für die Verwendung durch Projekte in Sammlungen in einer SharePoint-Webfarm konfiguriert. Projektsammlungsdatenbanken werden auf SQL Server Instanzen verteilt, um die Leistung zu verbessern und die individuelle Verwaltung zu vereinfachen. SQL Server Reporting Services und SQL Server Analyseserver werden auf separaten Servern ausgeführt, um die Leistung zu verbessern.

Dieses Beispiel ist für ein großes Produktentwicklungsteam mit bis zu 2.000 Benutzern konzipiert.

Komplexe Topologie mit mehreren Domänen

Eine komplexe Servertopologie mit mehreren Domänen verwendet mehrere Server in mindestens zwei Domänen. Wie bei der komplexen Einzeldomänentopologie verwendet die Bereitstellung Cluster oder andere Failoverkonfigurationen, um die Komponenten der Datenebene für Azure DevOps zu hosten. Die Administratoren für diese Bereitstellung haben den Netzwerklastenausgleich konfiguriert und mehrere Server auf Anwendungsebene hinzugefügt, um die Betriebslast zu verteilen. Die folgende Abbildung veranschaulicht eine komplexe Topologie mit mehreren Domänen:

Komplexe Topologie mit mehreren Domänen

Komplexe Topologie mit mehreren Domänen fortgesetzt

Wie im obigen Beispiel ist diese Topologie für Fehlertoleranz und hohe Leistung konfiguriert. Darüber hinaus ist diese Topologie auf mehrere Domänen verteilt, von denen einige voll vertrauenswürdige untergeordnete Domänen der übergeordneten Domänen sind, von denen aber eine (IsolatedLab.com) eine völlig separate Domäne ist. Die von Azure DevOps Server verwendeten Dienstkonten sind voll vertrauenswürdige Mitglieder aller Domänen, und Benutzerkonten wurden sowohl in der übergeordneten Domäne als auch in der separaten Domäne konfiguriert, sofern dies für Benutzer erforderlich ist, die in beiden Domänen arbeiten müssen. Firewalls wurden so konfiguriert, dass sie Datenverkehr über die ports zulassen, die für Azure DevOps Server erforderlich sind.