Примеры сложной топологии для Azure DevOps Server

Azure DevOps Server 2022 г. | Azure DevOps Server 2020 г. | Azure DevOps Server 2019 г.

Вы можете настроить Azure DevOps Server в одной из нескольких конфигураций топологии. Вообще говоря, чем проще топология, тем проще поддерживать развертывание Azure DevOps Server. Следует развернуть простейшие топологии, соответствующие потребностям вашего бизнеса.

В этой статье описываются две сложные топологии Azure DevOps Server. Сложная топология содержит Azure DevOps Server компоненты, распределенные между несколькими серверами. Доступ к нему осуществляется клиентами в нескольких доменах в географически удаленных физических расположениях. Прокси-сервер Azure DevOps устанавливается в дополнение к дополнительным компонентам, таким как продукты SharePoint и SQL Server Reporting Services. Существует несколько разных баз кода, и каждая из этих баз кода имеет собственную коллекцию проектов для проектов, которые их используют. Базы данных для коллекций командных проектов хранятся на нескольких разных серверах, работающих SQL Server.

Сложная топология с одним доменом

Сложная топология серверов использует несколько серверов в кластерах или других конфигурациях отработки отказа для размещения компонентов логического уровня данных Azure DevOps и уровня приложений. На следующей схеме показана сложная топология с одним доменом:

Пример сложной однодоменной топологии

Этот пример топологии аналогичен топологии умеренной. Azure DevOps Server службы развертываются на одном сервере, а базы данных Azure DevOps Server устанавливаются на отдельном сервере. Сборка Team Foundation и агенты тестирования команды и контроллеры агентов тестирования развернуты на дополнительных серверах. Кроме того, добавлены компоненты для отработки отказа. Базы данных Azure DevOps установлены в кластере SQL Server.

На схеме примера показаны дочерние домены в Сиэтле и Кливленде, каждый из которых имеет двустороннее транзитивное доверие к родительскому домену. Учетная запись службы для Azure DevOps Server является доверенной для обоих доменов. Каждый географически удаленный дочерний домен использует подключение с ограниченной пропускной способностью. Так как получение зачисления из компонента управления кодом версий Azure DevOps Server может занять очень много времени при таких условиях ограниченной пропускной способности, в каждом дочернем домене устанавливается прокси-сервер Azure DevOps, который будет выступать в качестве кэша файлов управления версиями. Все клиентские запросы переходят непосредственно на уровень приложений, за исключением кода управления версиями. Эти запросы направляются через прокси-сервер Azure DevOps, который затем кэширует все исходные файлы, скачиваемые на прокси-сервер.

Топология в этом примере также связана с отказоустойчивостью и высокой производительностью. Отказоустойчивость уровня данных обеспечивается за счет использования SQL Server кластеризация технологий. Несколько веб-приложений SharePoint настроены для использования проектами в коллекциях в веб-ферме SharePoint. Базы данных коллекции проектов распределяются между SQL Server экземплярами для повышения производительности и простоты индивидуального управления. SQL Server Reporting Services и SQL Server Analysis Servers работают на отдельных серверах для повышения производительности.

Этот пример предназначен для крупной группы разработчиков продуктов с 2000 пользователями.

Сложная многодоменная топология

Сложная топология серверов с несколькими доменами использует несколько серверов в двух или более доменах. Как и в случае со сложной топологией с одним доменом, развертывание использует кластеры или другие конфигурации отработки отказа для размещения компонентов уровня данных для Azure DevOps. Администраторы этого развертывания настроили балансировку сетевой нагрузки и добавили несколько серверов уровня приложений для распределения рабочей нагрузки. На следующем рисунке показана сложная топология с несколькими доменами:

Сложная многодоменная топология

Продолжение сложной многодоменной топологии

Как и в приведенном выше примере, эта топология настроена для обеспечения отказоустойчивости и высокой производительности. Кроме того, эта топология распределяется между несколькими доменами, некоторые из которых являются полностью доверенными дочерними доменами родительских доменов, но один из которых (IsolatedLab.com) является полностью отдельным доменом. Учетные записи служб, используемые Azure DevOps Server, являются полностью доверенными членами всех доменов, и учетные записи пользователей были настроены как в родительском, так и в отдельном домене по мере необходимости для пользователей, которые должны работать в обоих доменах. Брандмауэры настроены для разрешения трафика через порты, необходимые для Azure DevOps Server.