Traslado de un entorno a otro para Azure DevOps local

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

El escenario de movimiento basado en entornos más común es cambiar el dominio de la implementación de Azure DevOps Server, ya sea un cambio de nombre de dominio o pasar de un grupo de trabajo a un dominio.

Importante

En algunas situaciones, es posible que desee cambiar el dominio de una implementación de Azure DevOps Server, así como su hardware. Cambiar el hardware es un movimiento basado en la restauración y nunca deben combinarse ambos tipos de movimiento. En primer lugar, complete el traslado de hardware y, a continuación, cambie el entorno.

Además, el cambio de identidades en Azure DevOps Server como parte de un movimiento ambiental es el aspecto que más a menudo causa conflictos o problemas. El comando Identities es una herramienta eficaz, pero tiene ciertas limitaciones. Infórmese sobre ella como parte de la planeación del movimiento. Para garantizar un movimiento correcto, asegúrese de que entiende los requisitos siguientes:

  • Una vez que una cuenta de usuario está presente en Azure DevOps Server, no se puede quitar ni tener otra cuenta asignada. Por ejemplo, si va a mover DomainA/UserA a DomainB/UserB, el comando Identities solo funcionaría para migrar el usuario si DomainB/UserB aún no está presente en Azure DevOps Server.
  • Dado que los miembros del grupo administradores locales se agregan automáticamente a Azure DevOps Server, asegúrese de quitar las cuentas que quiera migrar de ese grupo antes de cambiar el dominio o el entorno.

Para obtener más información general, vaya aquí para obtener una descripción detallada de cómo funcionan los cambios de identidad en Azure DevOps Server, incluidas las limitaciones de la herramienta.

Le guiaremos por los pasos necesarios para cambiar el entorno de la implementación de Azure DevOps Server en las secciones siguientes:

  1. Comprobar permisos y cuentas
  2. Detener servicios de Azure DevOps Server
  3. Copia de seguridad de datos
  4. Unir Azure DevOps Server a su nuevo dominio
  5. Mover Azure DevOps Server cuentas de usuario y servicio
  6. Configurar Reporting y Analysis Services
  7. Reinicio de servicios de Azure DevOps Server

Comprobar permisos y cuentas

Para cambiar correctamente el entorno de Azure DevOps Server, deberá ser administrador en el equipo local, así como para Azure DevOps Server y todo el software en el que depende la implementación: SQL Server, informes y cualquier otro software con el que interopera la implementación, como Project Server. Sin embargo, todos los miembros del grupo administradores locales se incluyen automáticamente en Azure DevOps Server, lo que puede causar problemas al intentar migrar cuentas. Por consiguiente, debe usar una cuenta que no piense migrar como parte del movimiento de entorno. Considere agregar una cuenta administrativa especial solo para el movimiento y usar esa cuenta para realizar la migración.

Para comprobar los permisos de nivel de administrador

  • Asegúrese de que la cuenta que usa es miembro de los grupos siguientes:
    • Servidores: Administradores (grupo Administradores local o equivalente)
    • Azure DevOps Server: administradores de Team Foundation y usuarios de la consola de Administración
    • SQL Server: sysadmin

Si no es miembro de uno o varios de estos grupos, obtenga permisos ahora.

Ahora que está seguro de estar usando una cuenta que tiene todos los permisos necesarios, es el momento de iniciar la comprobación de las cuentas para ver si existen conflictos con nombres o grupos del entorno al que se moverá. Ya sabemos que las cuentas que son miembros del grupo local Administradores no se pueden migrar, por lo tanto se quitarán primero.

Quitar las cuentas que se van a migrar del grupo local Administradores

  • Abra el grupo local Administradores y quite cualquier cuenta que desee migrar al nuevo entorno. Repita este paso para cualquier otro grupo que pueda verse afectado.

Ahora compruebe la lista de identidades en el entorno de Azure DevOps Server actual y busque los posibles problemas con grupos o cuentas de usuario individuales que puedan existir en el nuevo entorno.

Sugerencia

Considere la posibilidad de crear una tabla o un mapa de migración de las identidades que se van a mover como parte del movimiento de entorno, incluyendo detalles de qué cuentas quizás no puedan migrarse automáticamente.

Comprobar identidades

  1. En el servidor de capa de aplicación para Azure DevOps, abra una ventana del símbolo del sistema con permisos administrativos, vaya a %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools y ejecute el siguiente comando para ver las identidades que hay actualmente en el sistema:

    TFSConfig Identities
    
  2. Se mostrará una lista de identidades. Compruebe estos usuarios y grupos para asegurarse de que no haya posibles duplicados o problemas con identidades en el entorno al que moverá Azure DevOps Server y tome medidas para mitigar los posibles conflictos.

Detener servicios

Detener los servicios ayuda a garantizar que los usuarios no puedan realizar cambios en los elementos de trabajo o proteger el código fuente de la implementación original durante o después del proceso de mover.

  1. En el equipo de capa de aplicación, abra una ventana del símbolo del sistema y cambie los directorios a Unidad:\%programfiles%\TFS 12.0\Tools.

  2. Escriba el siguiente comando TFSServiceControl :

    Inactividad de TFSServiceControl

Realizar copias de seguridad de las bases de datos y de la clave de cifrado de SQL Server Reporting Services

  1. Abra la consola de administración para Azure DevOps Server y, en la página Copias de seguridad programadas, realice una copia de seguridad completa. La copia de seguridad realizará una copia de todos los valores configurados para esta en el plan de copia de seguridad, pero lo hará inmediatamente, no según la hora programada en el plan. Si la implementación usa informes, puede realizar copias de seguridad de la clave de cifrado como parte de este conjunto de copias de seguridad.

    Puede cerrar la ventana mientras se completa el trabajo

    (Si no tiene copias de seguridad configuradas, tendrá que crear un plan para poder realizar una copia de seguridad completa).

  2. Una vez completada la copia de seguridad, compruebe que esté disponible en el dispositivo de almacenamiento o el recurso compartido de red y que puede tener acceso a ella desde el nuevo hardware.

Unión del servidor de nivel de aplicación a su nuevo dominio

  1. En cada servidor, abra las propiedades del equipo.

  2. Cambie la configuración del equipo al dominio o grupo de trabajo al que desea unir el servidor.

    Si se le pide que proporcione el nombre de usuario y la contraseña de una cuenta con permisos para unir este equipo al dominio, especifique las credenciales correspondientes.

  3. Reinicie el equipo para que el cambio de dominio surta efecto.

    Nota

    Después de reiniciar el equipo, puede que aparezca una advertencia que le indique que no se pudieron iniciar determinados servicios o controladores. Continúe con el procedimiento siguiente.

Traslado de cuentas de usuario y cuentas de servicio

Como se ha mencionado al principio de este tema, mover cuentas se traduce en una mayor probabilidad de encontrar dificultades, especialmente si no ha planeado cuidadosamente la migración de usuario. El comando TFSConfig Identities no puede migrar ninguna cuenta a una cuenta que ya existe en Azure DevOps Server.

Si los nombres de cuenta son iguales en ambos dominios y la única diferencia es el nombre de dominio, puede usar el modo por lotes de TFSConfig Identities para cambiar todas las identidades a la vez. De lo contrario, debe cambiar las identidades individualmente y especificar otro nombre de cuenta de destino, tal y como se detalla a continuación.

  1. En el servidor de capa de aplicación para Azure DevOps, abra una ventana del símbolo del sistema con permisos administrativos, vaya a %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools y ejecute el siguiente comando para cambiar los identificadores de servicio (SID) de la cuenta de servicio al nuevo dominio:

    TFSConfig identities /change /fromdomain:OldComputerorDomainName /todomain:NewDomainName /account:OldTFSServiceAccount /toaccount:NewTFSServiceAccount
    

    Advertencia

    Si la cuenta de servicio era una cuenta del sistema como Network Service, no puede migrar directamente la cuenta de servicio al existir una cuenta del sistema con el mismo nombre en el nuevo entorno. Tendrá que realizar un cambio del proceso en dos etapas. Vea el ejemplo en Identities Command.

  2. Para migrar todas las cuentas que tengan el mismo nombre en el nuevo entorno, escriba el comando siguiente:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName
    

    Este procesará las cuentas por lotes.

  3. Si es nuevo dominio contiene una o varias identidades en las que cambia el nombre entre entornos, deberá actualizar manualmente los SID de cada una de esas identidades. Por ejemplo, si la cuenta de usuario de Christie Church era Fabrikam\CChurch en el entorno anterior, pero es NewFabrikam/ChristieC en el nuevo entorno, tendría que actualizar manualmente su SID. Para cada cuenta con este requisito, escriba el comando siguiente:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Ahora, ejecute el siguiente comando para actualizar la cuenta de servicio:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Si la implementación usa informes, ejecute el siguiente comando para actualizar la cuenta de origen de datos usada para crear informes:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Si la implementación usa el servidor proxy de Azure DevOps, ejecute el siguiente comando para actualizar la cuenta de servicio usada para el proxy:

    TFSConfig Accounts /change /AccountType:Proxy /account:AccountName /password:Password
    

    Nota

    Si va a pasar a un dominio que no es de confianza, es posible que también tenga que agregar manualmente usuarios y grupos a equipos, proyectos, colecciones y Azure DevOps Server sí mismo. Para obtener más información, vea Agregar usuarios a proyectos, Establecer permisos de administrador para colecciones de proyectos y Establecer permisos de administrador para Azure DevOps Server.

  7. Si la implementación se integra con Project Server, es posible que necesite realizar unos pasos adicionales para configurar las cuentas de servicio con los permisos necesarios para su funcionamiento. Para obtener más información, consulte Asignación de permisos para admitir la integración de TFS-Project Server y ConfigureTFS-Project Server integration.

Configurar Reporting y Analysis Services

Puede omitir este procedimiento si no está utilizando informes como parte de su implementación.

Si cambió el nombre de un servidor de informes como parte de este tipo de movimiento, debe redirigir Azure DevOps Server al servidor de informes en su nueva ubicación. También debe reiniciar el almacén de datos y recompilar manualmente la base de datos de Analysis Services.

  1. Abra la consola de administración de Azure DevOps, vaya al nodo Informes y edite la configuración.

    Los informes siguen señalando al servidor anterior

  2. Cambie los valores de las tres pestañas para que incluyan el nuevo nombre del servidor. Asegúrese de proporcionar la información correcta de la cuenta de origen de datos en el nuevo entorno.

    Asegurarse de que la información de las 3 pestañas sea correcta

  3. Elija Iniciar trabajos para reiniciar los informes.

  4. Elija Iniciar recompilación para recompilar el almacén.

Configuración de copias de seguridad

Si el nombre de recurso compartido de red o el dispositivo de almacenamiento se modificó con el cambio de nombre de dominio, tendrá que actualizar el plan de copias de seguridad programadas para apuntar a esos recursos cuyo nombre se cambió.

  • En la consola de administración, vaya al nodo Copias de seguridad programadas y vuelva a configurar las copias de seguridad programadas para realizar copias de seguridad de las bases de datos de Azure DevOps Server en el nuevo servidor. Para obtener más información, consulte Create una programación y un plan de copia de seguridad.

Reiniciar los servicios

Ahora que ha actualizado Azure DevOps Server con toda la información del nuevo entorno, reinicie los servicios.

  1. En el equipo de nivel de aplicación Azure DevOps Server, abra una ventana del símbolo del sistema con permisos administrativos y cambie los directorios a Unidad:\%programfiles%\TFS 12.0\Tools.

  2. Escriba el siguiente comando TFSServiceControl :

    TFSServiceControl unquiesce

Preguntas y respuestas

P: Deseo cambiar el servidor o los servidores físicos para la implementación, no los dominios. ¿Puedo hacerlo?

R: Sí. Esto se denomina movimiento basado en hardware y los pasos se proporcionan en Mover o clonar de un hardware a otro. No debe intentar combinar un movimiento basado en el entorno con un movimiento basado en hardware. Complete primero el movimiento de hardware y después cambie el entorno.