Administración de colecciones de proyectos en Azure DevOps Server

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

Cuando Azure DevOps Server hospeda varios proyectos, puede administrarlos de forma más eficaz agrupandolos y asignando los mismos recursos a ellos. Por ejemplo, puede agrupar proyectos que tengan requisitos o objetivos similares, como todos los proyectos que tienen acceso a una base de código determinada. A continuación, puede administrar el grupo de proyectos de equipo como un recurso autónomo con sus propios grupos de usuarios, recursos de servidor y programación de mantenimiento.

Un grupo de proyectos se denomina colección de proyectos. Al instalar Azure DevOps Server, se crea una colección predeterminada para contener todos los proyectos. Al crear una colección, se especifican los recursos lógicos y físicos que se pueden usar en esa colección. Todos los artefactos y datos que usan esos proyectos se almacenan en la base de datos única de la colección.

En la ilustración siguiente se muestra cómo se integran las bases de datos de las colecciones de proyectos con la arquitectura lógica. Al crear un proyecto, se especifica la colección que almacenará sus datos.

Ejemplo: posible ubicación de las bases de datos de recopilación

Ver información o configurar el proyecto existente

  1. Si no se ha agregado como administrador de Azure DevOps Server, agregue ahora.

    Debe ser miembro del grupo administradores local en el servidor en el que desea abrir la consola, y un miembro del grupo Administradores de Azure DevOps Server o Team Foundation, o bien el permiso Editar información de nivel de servidor debe establecerse en Permitir.

  2. Inicie sesión en el servidor de nivel de aplicación, abra la Consola de administración y abra el nodo Colecciones de proyectos de equipo.

    Captura de pantalla del nodo Consola de administración, Colecciones de proyectos de equipo, Azure DevOps Server 2022.

    Captura de pantalla del nodo Consola de administración, Colecciones de proyectos de equipo, Azure DevOps Server 2019-2020.

  3. Resalte el nombre de una colección y revise la información proporcionada en las distintas pestañas. Algunas pestañas solo aparecen si se ha configurado la aplicación correspondiente.

    Puede realizar las siguientes tareas desde la pestaña correspondiente.

    Pestaña Tareas
    General
    • Iniciar colección o detener recopilación: inicie o detenga una colección. Los proyectos dejan de estar disponibles cuando se detiene una colección. Normalmente, se detiene una colección para admitir operaciones de mantenimiento, como mover o dividir una colección.
    • Si se inicia la colección, solo aparecerá Detener colección . Si la colección está detenida, solo aparecerá Start Collection (Iniciar colección). Iniciar o detener una colección puede tardar varios minutos en completarse. Es posible que tenga que elegir Actualizar para mostrar el cambio en estado.
    • Editar configuración: edite la descripción o configuración de la colección.
    • Pertenencia a grupos: agregue o quite usuarios o grupos como miembros de una colección. Para más información, consulte Establecimiento de permisos de administrador para colecciones de proyectos.
    • Administrar seguridad: administre los permisos de un grupo de recopilación. Para más información, consulte Referencia de permisos y grupos.
    Estado
    • Vea un registro de actividad o vuelva a ejecutar un trabajo.
    Proyectos

Configurar informes

La página Informes solo aparece cuando ha agregado un servidor de informes a Azure DevOps. Elija esta página para realizar las siguientes tareas:

  • Configure el servidor de informes para que lo use la colección.
  • Al editar la ubicación de carpeta predeterminada, se producirá un error en la operación si escribe la ruta de acceso de una carpeta que no existe en el servidor y no tiene permiso para crear una carpeta en ese servidor. Debe especificar una carpeta existente si no tiene permisos para crear carpetas en ese servidor.
  • Para quitar la ubicación predeterminada de las subcarpetas de informe, elija Borrar configuración.
  • Al quitar la configuración, se quita la funcionalidad de informes de todos los proyectos existentes y futuros de la colección.

Creación de una colección de proyectos

Antes de crear una colección de proyectos, revise ¿Cuáles son las ventajas y desventajas de crear varias colecciones de proyectos? como se describe más adelante en este artículo.

  1. Si no se ha agregado como administrador, se agrega ahora.

    Debe ser miembro del grupo administradores local en el servidor en el que desea abrir la consola, y un miembro del grupo Administradores de Team Foundation o el permiso Editar información de nivel de servidor debe establecerse en Permitir.

  2. En la consola de administración, abra la página Colecciones de proyectos de equipo y elija Crear colección.

    Captura de pantalla de la Consola de administración, nodo Colecciones de proyectos de equipo, Crear colección, Azure DevOps Server 2022.

    Captura de pantalla de la consola de administración del servidor de Azure DevOps con la opción Crear recopilación resaltada.

  3. Siga las instrucciones proporcionadas por el Asistente para crear colección de proyectos de equipo.

    En Nombre, especifique un nombre único sin más de 64 caracteres (cuanto más corto sea mejor) y no especifique barras diagonales ni otros caracteres especiales enumerados en Restricciones de nomenclatura.

    Cuadro de diálogo Crear colección, Azure DevOps Server 2022, con la opción Herencia seleccionada.

    Captura de pantalla del cuadro de diálogo Crear colección de proyectos de equipo con la opción Herencia seleccionada.

  1. Elija Herencia si desea usar la interfaz de usuario para personalizar el seguimiento del trabajo. Esta opción se basa en el servicio analytics para satisfacer sus necesidades de informes.

    Elija XML si desea usar archivos de definición XML para personalizar el seguimiento del trabajo.

    Nota:

    Para el modelo de proceso XML local, puede usar witadmin para enumerar, importar, exportar y modificar un proceso para un proyecto. En el caso de los modelos de proceso heredados, solo puede usar witadmin para enumerar y exportar la información del proceso. Para obtener información general sobre los modelos de proceso y lo que se admite, consulte Personalización de la experiencia de seguimiento del trabajo.

El asistente admite la configuración de los siguientes recursos. Algunos recursos solo se pueden configurar si el servidor de nivel de aplicación que hospeda la colección se ha configurado previamente para admitir la aplicación correspondiente.

Capa de datos o instancia de SQL Server

  1. Especifique el nombre del servidor de capa de datos de Azure DevOps. Si desea usar una instancia con nombre para hospedar la base de datos para esta colección de proyectos, también debe especificar el nombre de la instancia como en el ejemplo siguiente:

    NombreDeServidorDeInstancia \

  2. Elija Crear una nueva base de datos para esta colección si desea crear una base de datos para la colección. Esta opción requiere que la cuenta de servicio usada por el Agente de trabajo en segundo plano de Visual Studio Team Foundation tenga permisos para crear una base de datos en la instancia de SQL Server.

    O bien, elija Usar esta base de datos existente si desea usar una base de datos que ya existe y especifique el nombre de la base de datos. Esta opción requiere que exista una base de datos vacía en la instancia de SQL Server con nombre y que tenga permisos de escritura.

SQL Server Reporting Services

  1. Los informes aparecen si ha configurado el nivel de aplicación para usar SQL Server Reporting Services; de lo contrario, está deshabilitado. Para configurarlo más adelante, consulte Agregar un servidor de informes.

  2. Revise la información del servidor y la carpeta que hospedará informes y elija Siguiente. Esta opción requiere que la cuenta de usuario tenga permisos para crear una carpeta en el servidor que ejecuta Reporting Services.

    A menos que las restricciones de seguridad de la infraestructura empresarial impidan la creación automática de una carpeta como parte del asistente, debe usar la opción predeterminada para crear una carpeta.

  3. Si debe usar una carpeta que un administrador creó automáticamente en el servidor que ejecuta Reporting Services, expanda Configuración avanzada, elija Especificar una ruta de acceso a una carpeta existente y especifique la ruta de acceso relativa de la carpeta que se ha creado automáticamente.

    Elija Comprobar ruta de acceso y, si la ruta de acceso es correcta, elija Siguiente.

Proceso de comprobación

  1. En Comprobaciones de preparación, revise el estado de las comprobaciones.

    Aparece un indicador de error subrayado azul junto a cualquier configuración que contenga un error. Puede elegir el indicador para obtener un mensaje detallado sobre el problema. Debe solucionar todos los errores antes de poder continuar.

    Después de que se hayan superado todas las comprobaciones de preparación, elija Crear.

  2. Se inicia el proceso de creación de una colección de proyectos.

    Captura de pantalla del cuadro de diálogo Crear colección de proyectos de equipo que muestra que el proceso de creación se ha realizado correctamente.

    Una vez finalizado el asistente, elija Cerrar.

Desasociar o eliminar una colección de proyectos

Desasocia una colección de proyectos cuando desea realizar una operación de mantenimiento, como mover o dividir una colección. Teams no puede acceder a proyectos ni código fuente al desasociar la colección.

Elimina una colección cuando ya no necesita los datos almacenados en los proyectos definidos en la colección. Los tres pasos para eliminar una colección son (1) desasociar la colección y (2) eliminar la base de datos de recopilación.

Desasociar la colección

  1. En la consola de administración, resalte el nombre de la colección que desea eliminar y, a continuación, elija Desasociar colección.

    Captura de pantalla de la selección de Separar colección, Azure DevOps Server 2022.

    Captura de pantalla de la selección de Separar colección, Azure DevOps Server 2019-2020.

  2. Siga las instrucciones proporcionadas por el Asistente para separar la colección de proyectos de equipo.

    (Opcional) En la página Proporcionar un mensaje de mantenimiento para la colección de proyectos, en Mensaje de mantenimiento, especifique un mensaje para los usuarios que podrían intentar conectarse a proyectos de esta colección.

  3. Cuando todas las comprobaciones de preparación se hayan completado correctamente, elija Desasociar.

    En la página Supervisar el progreso de desasociación de la colección de proyectos, cuando se hayan completado todos los procesos, elija Siguiente.

  4. (Opcional) En la página Revisar información complementaria de esta colección de proyectos, anote la ubicación del archivo de registro.

Eliminación de la base de datos de recopilación

  1. Abra SQL Server Management Studio, conéctese a la instancia de SQL Server Motor de base de datos que hospeda la base de datos de recopilación y expanda la instancia.

    Resalte el nombre de la base de datos de recopilación (de forma predeterminada, TFS_CollectionName) y, a continuación, elimine la base de datos.

    Para obtener más información, vea Eliminar una base de datos.

La colección de proyectos ya no aparece en la lista de colecciones de la consola de administración.

Preguntas y respuestas

P: ¿Existe una herramienta de línea de comandos para administrar colecciones?

R: Puede usar el comando COLECCIÓN TFSConfig para adjuntar, desasociar, eliminar o clonar una colección de proyectos.

P: ¿Cuáles son las ventajas y desventajas de crear varias colecciones de proyectos?

Si los esfuerzos de desarrollo se beneficiarán de la capacidad de bifurcar y combinar código o debe consultar el estado de los elementos de trabajo relacionados con el mismo código, debe consolidar los proyectos en la misma colección de proyectos.

R: Ventajas para crear más de una colección

Puede separar mejor las necesidades operativas de una base de código u otra agrupación de proyectos de las necesidades operativas para otra agrupación. Dado que los datos de cada colección se almacenan en su propia base de datos, puede administrar de forma independiente muchos aspectos de cada colección por separado de otras colecciones de la implementación. Por ejemplo, puede detener e iniciar individualmente cada colección. Por lo tanto, puede programar operaciones de mantenimiento para cada recopilación en momentos diferentes.

La agrupación de proyectos en más de una colección proporciona las siguientes ventajas:

  • Mayor flexibilidad y escalabilidad para administrar y distribuir bases de datos y recursos. Un grupo de proyectos relacionados comparten informes, elementos de trabajo e instrucciones de proceso, así como una base de código.

    Al crear una base de datos para cada colección, los equipos y los administradores pueden realizar las tareas siguientes:

    • Compile, bifurca, combine e itera una base de código autónoma según las necesidades de los proyectos de la colección. Las dependencias de código fuera de la colección se pueden administrar formalmente.
    • Realice una copia de seguridad y restaure los datos de cada colección independientemente de otras colecciones.
    • Almacene todas las bases de datos de recopilación en una sola instancia de SQL Server o distribuya las bases de datos entre una o varias instancias.
    • Desasocie una colección, realice una copia de seguridad y, a continuación, restáurela en otra implementación de Azure DevOps.
    • Reasignar recursos para satisfacer mejor las demandas de los proyectos a medida que aumentan el tamaño con el tiempo.
  • Mayor seguridad operativa. Dado que cada colección tiene su propio conjunto de usuarios y permisos, aislar diferentes bases de código se puede aislar en colecciones diferentes. Los administradores solo pueden agregar usuarios a la colección que contiene el proyecto o los proyectos que pertenecen a esa base de código concreta.

  • Mayor capacidad para admitir procesos de flujo de trabajo personalizados. Cada colección administra plantillas de proceso, tipos de elementos de trabajo, tipos de vínculo, listas globales y campos de elementos de trabajo independientes de otras colecciones. Al separar proyectos que tienen procesos de flujo de trabajo diferentes en colecciones diferentes, solo se exponen esas personalizaciones necesarias para esos proyectos dentro de una colección.

R: Desventajas de crear más de una colección

La principal desventaja de crear más de una colección de proyectos es que aumenta la complejidad de la implementación de Azure DevOps.

  • Debe realizar copias de seguridad y restaurar la base de datos para cada colección, y otras tareas de administración y mantenimiento también aumentarán en proporción al número de recopilaciones que tenga. Por ejemplo, debe administrar el conjunto de usuarios y permisos para cada colección de proyectos individualmente.
  • Teams no puede vincular elementos de trabajo entre colecciones.
  • Teams no puede bifurcar ni combinar código entre colecciones.
  • Teams no puede crear consultas entre colecciones.

P: ¿Qué recursos se administran en el nivel de recopilación?

R: Cada proyecto pertenece a una colección. Para obtener información sobre cómo administrar una colección, consulte Introducción a la administración de la organización o la colección de proyectos.

P: ¿Cómo admiten los informes los datos almacenados para diferentes colecciones de equipos?

R: Un único almacenamiento de datos relacional contiene todos los datos que se pueden notificar de todos los proyectos definidos en todas las colecciones de proyectos para una implementación de Azure DevOps. Los datos de ese almacenamiento se procesan y escriben en el cubo OLAP. Dado que los datos se recopilan en un único almacenamiento de datos, puede informar en varias colecciones de proyectos.

Para crear o personalizar informes, debe agregar cuentas de usuario al rol TfsWarehouseDataReader. Los autores de informes necesitan acceso de lectura tanto al almacenamiento de datos relacionales como al cubo de Analysis Services. Estas cuentas pueden ver los datos de todos los proyectos de equipo hospedados en todas las colecciones de proyectos de la implementación de Azure DevOps. No hay ninguna manera de limitar el acceso a un proyecto o colección.

P: ¿Cómo escalar mi implementación con colecciones?

R: Vea Mover una colección de proyectos o Dividir una colección de proyectos.