Ejemplos de topología compleja para Azure DevOps Server
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Puede configurar Azure DevOps Server en una de varias configuraciones de topología. Por lo general, cuanto más sencillo sea la topología, más fácilmente puede mantener una implementación de Azure DevOps Server. Debe implementar la topología más sencilla que satisfaga sus necesidades empresariales.
En este artículo se describen dos topologías de Azure DevOps Server complejas. Una topología compleja tiene Azure DevOps Server componentes distribuidos entre muchos servidores. Los clientes acceden a ellos en varios dominios en ubicaciones físicas geográficamente lejanas. El servidor proxy de Azure DevOps se instala además de componentes opcionales, como productos de SharePoint y SQL Server Reporting Services. Hay varias bases de código diferentes y estas bases de código tienen cada una su propia colección de proyectos para los proyectos que los usan. Las bases de datos de las colecciones de proyectos de equipo se almacenan en varios servidores diferentes que ejecutan SQL Server.
Topología compleja de un solo dominio
Una topología de servidor compleja usa varios servidores en clústeres u otras configuraciones de conmutación por error para hospedar los componentes lógicos de los datos de Azure DevOps y del nivel de aplicación. En el diagrama siguiente se muestra una topología compleja de un solo dominio:
Esta topología de ejemplo es similar a la topología moderada. Azure DevOps Server servicios se implementan en un servidor y las bases de datos de Azure DevOps Server se instalan en un servidor independiente, con Team Foundation Build y los agentes de prueba del equipo y los controladores de agente de prueba implementados en servidores adicionales. Además, se han agregado componentes de conmutación por error. Las bases de datos de Azure DevOps se han instalado en un clúster de SQL Server.
En el diagrama de ejemplo se muestran dominios secundarios en Seattle y Cleveland, cada uno con una confianza transitiva bidireccional en el dominio primario. Ambos dominios confían en la cuenta de servicio de Azure DevOps Server. Cada dominio secundario geográficamente distante usa una conexión de ancho de banda limitado. Dado que obtener una inscripción del componente de control de código de versión de Azure DevOps Server puede tardar mucho tiempo en condiciones de ancho de banda limitados, se instala un servidor proxy de Azure DevOps en cada dominio secundario para actuar como caché de proxy de archivo de control de versiones. Todas las solicitudes de cliente van directamente al nivel de aplicación, con la excepción de que el código de control de versiones obtenga solicitudes. Estas solicitudes se dirigen a través del servidor proxy de Azure DevOps, que luego almacena en caché todos los archivos de origen que descarga en el servidor proxy.
La topología de este ejemplo también se preocupa por la tolerancia a errores y el alto rendimiento. La tolerancia a errores del nivel de datos se proporciona aprovechando las tecnologías de agrupación en clústeres de SQL Server. Varias aplicaciones web de SharePoint están configuradas para su uso por proyectos dentro de colecciones de una granja de servidores web de SharePoint. Las bases de datos de colección de proyectos se distribuyen entre instancias de SQL Server para mejorar el rendimiento y facilitar la administración individual. SQL Server Reporting Services y SQL Server Analysis Servers se ejecutan en servidores independientes para mejorar el rendimiento.
Este ejemplo está diseñado para un equipo de desarrollo de productos de gran tamaño con hasta 2000 usuarios.
Topología de varios dominios compleja
Una topología compleja de servidor multidominio usa varios servidores en dos o más dominios. Al igual que con la topología compleja de un solo dominio, la implementación usa clústeres u otras configuraciones de conmutación por error para hospedar los componentes del nivel de datos para Azure DevOps. Los administradores de esta implementación han configurado el equilibrio de carga de red y han agregado varios servidores de capa de aplicación para distribuir la carga operativa. En la ilustración siguiente se muestra una topología compleja de varios dominios:
Como en el ejemplo anterior, esta topología está configurada para tolerancia a errores y alto rendimiento. Además, esta topología se distribuye entre varios dominios, algunos de los cuales son dominios secundarios de plena confianza de los dominios primarios, pero uno de los cuales (IsolatedLab.com) es un dominio completamente independiente. Las cuentas de servicio usadas por Azure DevOps Server son miembros de plena confianza de todos los dominios y las cuentas de usuario se han configurado tanto en el dominio primario como en el dominio independiente según sea necesario para los usuarios que deben trabajar en ambos dominios. Los firewalls se han configurado para permitir el tráfico entre los puertos requeridos por Azure DevOps Server.