Exemplos de topologia complexa para Azure DevOps Server

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

Você pode configurar Azure DevOps Server em uma das várias configurações de topologia. Em geral, quanto mais simples for a topologia, mais facilmente você poderá manter uma implantação Azure DevOps Server. Você deve implantar a topologia mais simples que atenda às suas necessidades de negócios.

Este artigo descreve duas topologias Azure DevOps Server complexas. Uma topologia complexa tem Azure DevOps Server componentes distribuídos entre muitos servidores. Ele é acessado por clientes em vários domínios em locais físicos geograficamente distantes. O Servidor Proxy do Azure DevOps é instalado além de componentes opcionais, como Produtos do SharePoint e SQL Server Reporting Services. Há várias bases de código diferentes, e cada uma dessas bases de código tem sua própria coleção de projetos para os projetos que as usam. Os bancos de dados para coleções de projetos de equipe são armazenados em vários servidores diferentes que estão executando SQL Server.

Topologia complexa de domínio único

Uma topologia de servidor complexa usa vários servidores em clusters ou outras configurações de failover para hospedar os dados lógicos do Azure DevOps e os componentes da camada de aplicativo. O diagrama a seguir demonstra uma topologia complexa de domínio único:

Exemplo de topologia complexa de domínio único

Este exemplo de topologia é semelhante à topologia moderada. Azure DevOps Server serviços são implantados em um servidor e os bancos de dados Azure DevOps Server são instalados em um servidor separado, com o Team Foundation Build e os agentes de teste da equipe e controladores de agente de teste implantados em servidores adicionais. Além disso, componentes de failover foram adicionados. Os bancos de dados do Azure DevOps foram instalados em um cluster SQL Server.

O diagrama de exemplo mostra domínios filho em Seattle e Cleveland, cada um com uma relação de confiança transitiva bidirecional para o domínio pai. A conta de serviço para Azure DevOps Server é confiável por ambos os domínios. Cada domínio filho geograficamente distante usa uma conexão de largura de banda limitada. Como obter uma inscrição do componente de controle de código de versão do Azure DevOps Server pode levar muito tempo em condições de largura de banda limitadas, um Servidor proxy do Azure DevOps é instalado em cada domínio filho para atuar como um cache de proxy de arquivo de controle de versão. Todas as solicitações de cliente vão diretamente para a camada de aplicativo, com exceção das solicitações de obtenção de código de controle de versão. Essas solicitações são direcionadas por meio do Servidor Proxy do Azure DevOps, que armazena em cache todos os arquivos de origem baixados no servidor proxy.

A topologia neste exemplo também se preocupa com tolerância a falhas e alto desempenho. A tolerância a falhas da camada de dados é fornecida aproveitando as tecnologias de SQL Server clustering. Vários aplicativos Web do SharePoint são configurados para uso por projetos dentro de coleções em um farm da Web do SharePoint. Os bancos de dados de coleção de projetos são distribuídos entre SQL Server instâncias para melhorar o desempenho e a facilidade de gerenciamento individual. SQL Server Reporting Services e SQL Server Analysis Servers estão em execução em servidores separados para melhorar o desempenho.

Este exemplo foi projetado para uma grande equipe de desenvolvimento de produtos com até 2.000 usuários.

Topologia complexa de vários domínios

Uma topologia complexa de servidor de vários domínios usa vários servidores em dois ou mais domínios. Assim como acontece com a complexa topologia de domínio único, a implantação usa clusters ou outras configurações de failover para hospedar os componentes da camada de dados do Azure DevOps. Os administradores dessa implantação configuraram o balanceamento de carga de rede e adicionaram vários servidores da camada de aplicativo para distribuir a carga operacional. A ilustração a seguir demonstra uma topologia complexa de vários domínios:

Topologia complexa de vários domínios

Topologia multidomaina complexa continuada

Como no exemplo acima, essa topologia é configurada para tolerância a falhas e alto desempenho. Além disso, essa topologia é distribuída entre vários domínios, alguns dos quais são domínios filho totalmente confiáveis dos domínios pai, mas um dos quais (IsolatedLab.com) é um domínio completamente separado. As contas de serviço usadas por Azure DevOps Server são membros totalmente confiáveis de todos os domínios e as contas de usuário foram configuradas no domínio pai e no domínio separado, conforme necessário, para os usuários que devem trabalhar em ambos os domínios. Firewalls foram configurados para permitir o tráfego entre as portas exigidas por Azure DevOps Server.