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

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 — TFS 2013

Примечание

Предложение Azure DevOps Server раньше называлось Visual Studio Team Foundation Server.

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

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

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

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

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

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

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

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

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

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

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

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

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

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