Migra recursos de Config Controller

En esta página, se muestra cómo migrar recursos de Config Connector de un clúster del controlador de configuración a otro. Es posible que debas migrar un recurso si el clúster principal del controlador de configuración falla y debe reemplazarse, o si necesitas cambiar una configuración de clúster inmutable.

En esta página, se usa la siguiente terminología:

  • Clúster de origen: el clúster que contiene los recursos de Config Connector que necesitas migrar.
  • Clúster de destino: el clúster al que migrarás los recursos.

Recomendaciones

  • Antes de realizar cambios en la producción, completa estos pasos en un entorno de pruebas.
  • Si necesitas migrar varios clústeres del controlador de configuración, migra cada uno por separado y comienza con el clúster menos crítico.
  • Si el clúster del Sincronizador de configuración se sincroniza desde más de una fuente de información, migra todos los recursos de cada fuente a la vez.

Pasos para la migración en varias situaciones

Migra todos los recursos

Para migrar todos los recursos, completa los siguientes pasos:

  1. Crea el clúster de destino.

  2. Deja de enviar los cambios a la fuente de información desde la que el clúster de origen está configurado para sincronizarse. El Sincronizador de configuración debe continuar sincronizándose desde la fuente de información. Solo se deben detener los cambios desde los que se sincroniza el clúster de origen.

  3. Asegúrate de que los cambios recientes en la fuente de información se hayan sincronizado en el clúster y de que todos los recursos estén actualizados en el clúster de origen.

    Si hay errores en algunos recursos, es posible que debas analizarlos de forma individual. Si un recurso aún no se creó debido a un error, se creará más tarde con el Config Connector que se ejecuta en el clúster de destino. Por lo general, estos errores se pueden ignorar. Sin embargo, para la mayoría de los errores, se deben encontrar y corregir las causas principales antes de intentar la migración.

  4. Configura el Sincronizador de configuración en el clúster de destino para leer desde la misma fuente de información desde la que está configurado el clúster de origen. Si hay varias sincronizaciones configuradas para sincronizarse desde más de una fuente de información, haz lo siguiente con cada sincronización.

  5. Usa el comando nomos status para asegurarte de que el clúster de destino haya sincronizado todos los recursos desde la fuente de información.

  6. Una vez que se sincronicen los recursos, quita RootSync o RepoSync del clúster de origen.

  7. Una vez que se haya migrado cada fuente de información, borra el clúster del controlador de configuración de origen.

Migra algunos recursos

Para migrar algunos recursos, completa los siguientes pasos:

  1. Completa los pasos del 1 al 6 de la sección Migra todos los recursos anterior.

  2. Anota los recursos que se deben migrar al clúster de destino con la anotación cnrm.cloud.google.com/deletion-policy: abandon. Esta anotación evita que Config Connector borre los recursos subyacentes cuando el recurso de Config Connector se borra del clúster del controlador de configuración.

  3. Borra los recursos que se marcaron como abandonados del clúster de origen. Esta eliminación solo funciona si estos recursos se quitan de la fuente de información antes de reanudar el Sincronizador de configuración.

  4. Mueve estos recursos a una fuente de información diferente o a una carpeta diferente dentro de la misma fuente de información.

  5. Configura el clúster de destino para sincronizar desde la ubicación a la que trasladaste los recursos. El clúster de destino ahora puede adquirir estos recursos y comenzar a administrarlos.

Migra recursos individuales

Cuando no se puede borrar un clúster del controlador de configuración (por ejemplo, cuando solo se migra un subconjunto de recursos a un clúster diferente), puedes borrar recursos individuales. Para borrar recursos individuales, inhabilita el Sincronizador de configuración y, luego, establece la anotación cnrm.cloud.google.com/deletion-policy: abandon en los recursos individuales que necesitas borrar.

Migra recursos que tienen un resourceID generado por el servicio

En el caso de los recursos en los que no se haya proporcionado el campo resourceID de forma explícita, no es necesario especificar el resourceID para la adquisición de recursos mediante otra instancia de Config Connector. Sin embargo, hay recursos que tienen un ID de recurso generado por el servicio que necesitan pasos adicionales. Aunque resourceID es generado por el servicio, debe proporcionarse para adquirir estos recursos desde otra instancia de Config Connector. Para estos recursos, los resourceID se deben agregar a la fuente de información antes de intentar adquirir recursos desde el clúster de destino.

Migra recursos con la política de prevención de conflictos

De forma predeterminada, la política de prevención de conflictos está desactivada para los recursos. Para habilitarla en un recurso, configura la siguiente anotación:

cnrm.cloud.google.com/management-conflict-prevention-policy: "resource"

Una vez configurado, Config Connector debe adquirir una asignación de tiempo en el recurso subyacente antes de realizar cualquier cambio en él. Esto significa que el clúster de destino no puede adquirir la asignación de tiempo de inmediato, ya que Config Connector mantiene la asignación de tiempo en el clúster de origen. La asignación de tiempo se otorga durante 40 minutos. Sin embargo, después de 20 minutos, Config Connector intenta renovar la asignación de tiempo de forma proactiva. Debido a este comportamiento, si Config Connector en el clúster de origen está en buen estado y en ejecución, el clúster de destino no puede adquirir la asignación de tiempo. El clúster de origen debe liberar su asignación de tiempo antes de que el clúster de destino pueda adquirirla. Esto se puede lograr si borras el clúster de origen o el recurso en el clúster de origen.

Una vez que el clúster de origen haya liberado la asignación de tiempo, el clúster de destino puede adquirirla. El clúster de destino puede adquirir la asignación de tiempo después de 40 minutos como máximo y puede comenzar a administrar los recursos. No se deben realizar cambios en los recursos de Config Connector hasta que el clúster de destino haya adquirido la asignación de tiempo.

¿Qué sigue?