Traslada una instancia

En esta página, se describe cómo trasladar una instancia en Spanner.

Puedes trasladar la instancia de Spanner desde cualquier instancia a cualquier otra configuración de instancias, incluidas las configuraciones regionales, birregionales y multirregionales. Para mudanza la instancia no cause tiempo de inactividad, y Spanner seguirá proporcionar las garantías de transacción habituales, incluida la coherencia sólida durante la migración.

También puedes trasladar tu instancia de su configuración de instancia de origen a una configuración de instancia personalizada (por ejemplo, una configuración base nam3 con una réplica de solo lectura us-west2). Debido a que no puedes actualizar la topología de las configuraciones de instancias existentes, debes crear una nueva instancia personalizada configuración con la topología que desees primero. Después de crear la nueva campaña configuración de la instancia, puedes trasladarla del directorio configuración a la nueva configuración de instancia personalizada.

¿Por qué trasladar tu instancia de Spanner?

Estos son algunos de los beneficios de trasladar la instancia:

  • Aumento de la disponibilidad: Obtén una disponibilidad del 99.999% sin tiempo de inactividad. después de realizar un traslado regional a birregional o multirregional.
  • Reduce la latencia: Reduce la latencia y aumenta la cobertura geográfica con réplicas de solo lectura adicionales en una región a birregional o multirregional o multirregional a multirregional.
  • Reducción de costos: Cambia los costos por hora desde una ubicación birregional o multirregional. configuración a una regional.
  • Colocar base de datos: Coloca la base de datos de Spanner con el una aplicación cliente trasladando la instancia a una ubicación más optimizada.

Precios

Cuando trasladas una instancia, los parámetros de configuración de la instancia de origen y de destino están sujetos a cargos por hora de procesamiento y almacenamiento. Cuando se complete el traslado, se te facturará por el almacenamiento de la instancia en el configuración del destino.

Si trasladas tu instancia a una nueva región, región doble o multirregión de la instancia de VM, podrías estar sujeto a cargos por transferencia de datos de salida. Para obtener más información, consulta Precios de Spanner.

Limitaciones

  • Para trasladar la instancia, debe tener un mínimo de 1 nodo (1,000 unidades de procesamiento)
  • No puedes trasladar tu instancia entre proyectos y cuentas de Google Cloud.
  • No puedes trasladar una instancia de prueba gratuita de Spanner. Puedes trasladar la instancia después de actualizar a una instancia pagada.
  • Si tienes solicitudes activas que usan un extremo de servicio regional en cualquiera de los recursos de la instancia, el traslado de la instancia afecta a todas las solicitudes que usan el extremo regional porque bloquean la aplicación regional acceso a instancias entre regiones. Las solicitudes que usan un extremo global se no se vean afectados.
  • Las copias de seguridad de Spanner son específicas para una configuración de instancia y no se incluyen cuando la trasladas. Para para obtener más información, consulta Copias de seguridad.
  • Las siguientes APIs se inhabilitan durante el traslado de una instancia:
    • InstanceAdmin.DeleteInstance
    • InstanceAdmin.UpdateInstance
    • DatabaseAdmin.CreateDatabase
    • DatabaseAdmin.UpdateDatabaseDdl (se inhabilita si default_leader es especificadas en la solicitud).
    • DatabaseAdmin.RestoreDatabase
    • DatabaseAdmin.CreateBackup
    • DatabaseAdmin.CopyBackup
  • No puedes mover instancias que contengan cualquier tipo de CMEK habilitada bases de datos.
  • Si una base de datos tiene un líder predeterminado modificado, la selección se conserva si nombra una región de lectura y escritura en el la configuración de la instancia de destino, y esa configuración se multirregionales. Si la configuración de destino es regional o no incluyen la región de lectura y escritura con nombre, la selección líder predeterminada es borrar.
  • Mover una instancia cambia el atributo de configuración de la instancia de tu instancia. Si administras tus recursos de Spanner automatización, asegúrate de preparar y abordar las incoherencias que puedan surgir.
    • Por ejemplo, si usas Terraform para administrar tus instancias y bases de datos de Spanner, y tú habilita terraform apply --auto-approve para mantener tus recursos sincronizados Todas las instancias y los recursos secundarios se borran cuando trasladamos la instancia. Actualiza la configuración según corresponda para evitar la eliminación y la pérdida de datos. Consulta Opciones de aplicación de Terraform para obtener más información sobre el comando apply.
  • Mientras se traslada la instancia, el servicio de supervisión las métricas y los gráficos pueden mostrar datos tanto en la fuente como en el destino configuraciones de instancias, o podría reflejar el rendimiento en una sola instancia configuración.
  • Si configuraste la herramienta Escalador automático de código abierto, no es necesario debes inhabilitarla. Falla porque InstanceAdmin.UpdateInstance (se usa para (cambios en el nodo y la unidad de procesamiento) está inhabilitada.
  • No puedes trasladar una instancia si Escalador automático administrado por Spanner está habilitada en él. Para trasladar la instancia, debes inhabilitar escalador automático administrado, mover la instancia y volver a habilitar con un escalador automático.

    Además, si usas el ajuste de escala automático, debes aprovisionar suficientes nodos para el uso máximo de CPU de acuerdo con máximas de las recomendaciones indicadas y, luego, inhabilita el ajuste de escala automático antes mueves la instancia.

Consideraciones de rendimiento

Cuando se traslada una instancia, experimenta latencias de lectura y escritura más altas, y una tasa de anulación de transacciones más alta. El uso de CPU durante el traslado podría aumentar al 100% porque el traslado de la instancia se realiza con la CPU libre aprovisionada por del usuario. Sin embargo, mover una instancia no causa ningún tiempo de inactividad. La hora que se necesita para trasladar una instancia depende de varios factores, incluido el tamaño las bases de datos, la cantidad de nodos y el tipo de traslado (p.ej., regional a multirregional).

Después de trasladar una instancia, su rendimiento varía según los detalles de la configuración de la instancia. Por ejemplo: región doble y parámetros de configuración multirregionales suelen tener una latencia de escritura más alta y una latencia de lectura menor que parámetros de configuración regionales.

Copias de seguridad

Cuando trasladas una instancia, las copias de seguridad en la instancia de origen no se trasladan automáticamente la nueva configuración de destino. El traslado de la instancia se anula si las copias de seguridad existen en la configuración de la instancia de origen cuando la inicias mover. Es importante que copies las copias de seguridad y consideres plan de recuperación de datos antes de transferir tu instancia.

Si hay copias de seguridad en la instancia de origen que debes conservar, te recomendamos que copias tus copias de seguridad la configuración de la instancia de destino y otra instancia con la misma configuración como la instancia de origen que se moverá. Esto es así:

  • Puedes copiar tus copias de seguridad en la configuración de la instancia de destino inmediatamente después de que se complete el traslado de la instancia.
  • Si necesitas cancelar el traslado de la instancia, también puedes restablecer rápidamente tus copias de seguridad desde la instancia con la misma configuración que la fuente la configuración de una instancia de Compute Engine.

Después de copiar tus copias de seguridad en otra instancia, debes borrar las existentes crear copias de seguridad en la instancia de origen antes de trasladarla. Luego, una vez que se complete el traslado de la instancia, tienes una copia de la copia de seguridad en el destino configuración existente. También puedes crear una copia de seguridad nueva.

Para obtener más información sobre la copia de copias de seguridad y los costos asociados, consulta Cómo copiar una copia de seguridad.

Cómo trasladar una instancia

Puedes trasladar una instancia con Cloud Shell de la consola de Google Cloud gcloud CLI con comandos gcloud

Requisitos previos

Antes de trasladar la configuración de tu instancia, asegúrate de haber consulta el artículo Limitaciones y Consideraciones de rendimiento secciones. Luego, sigue estos pasos:

  1. Verifica que tengas el permiso de IAM spanner.instances.update en la instancia de origen.
  2. Si corresponde, mueve tus instancias de no producción. (como los de prueba y etapa de pruebas) antes de trasladar las instancias de producción para Evaluar y comprender el impacto en el rendimiento de las cargas de trabajo durante una instancia mover.
  3. Cuando migras una instancia de Spanner, el proceso de traslado elimina las etiquetas de la instancia que creaste en Data Catalog. Para preservar tu etiquetas, debes exportarlas antes del traslado y, luego, impórtalos después de la migración. Para obtener más información, consulta Importa y exporta etiquetas.

Para conocer las prácticas recomendadas, sigue estos lineamientos:

  • Prueba las cargas de trabajo de rendimiento en instancias de no producción en el destino la configuración de la instancia antes de trasladarla. Probar trasladar una instancia de etapa de pruebas similar a la de producción para tener una idea de cuánto tardará el traslado de la instancia de producción.
  • Verifica que no haya hotspots en tus bases de datos con Key Visualizer.
  • Revisa para asegurarte de que tienes suficiente cuota de nodos en la configuración de la instancia de destino para admitir el uso máximo esperado de la instancia. Para obtener más información, consulta Cuotas y servicios de Spanner Límites.
  • Asegúrate de que el uso de CPU máximo del tu instancia es inferior al 40% para la configuración de instancia que trasladaste y la cantidad de almacenamiento por nodo es menor que 1 tebibyte (TiB).
  • No realices cambios en la instancia durante el traslado. Esta incluye cambiar el recuento de nodos de la instancia y los esquemas de las bases de datos crear o descartar bases de datos y crear o borrar copias de seguridad.

Si mueves tu instancia de acuerdo con estas recomendaciones, el traslado por lo general, se completa en un plazo de 24 horas. Sin embargo, según la aplicación el tiempo de finalización puede ser más largo o más corto.

Traslada una instancia

Consola de Google Cloud

  1. Haz clic en Activa el ícono de Cloud Shell. Activa Cloud Shell en la parte superior de la consola de Google Cloud.

    Se abrirá una sesión de Cloud Shell en un marco nuevo en el en la parte inferior de la consola de Google Cloud y muestra un prompt de línea de comandos. La sesión puede tardar unos segundos en inicializarse.

  2. Usa la gcloud spanner instances move. comando para trasladar la instancia.

    gcloud spanner instances move INSTANCE_ID \
    --target-config=TARGET_CONFIG
    

    Reemplaza lo siguiente:

    • INSTANCE_ID: El identificador permanente de la instancia que que quieres mover.
    • TARGET_CONFIG: Es un identificador permanente de la instancia. configuración a la que quieres mover tu instancia. La nueva ubicación geográfica de tu instancia. Puede ser regional, birregional configuración de instancias personalizada o multirregional (por ejemplo, nam3, us-central1 o custom-nam3-us-west2).

Por ejemplo, para trasladar tu instancia test-instance de su actual la configuración de la instancia en nam3, ejecuta lo siguiente:

  gcloud spanner instances move test-instance --target-config=nam3

Opcional: Si deseas agregar una réplica de solo lectura, us-west2, a la base la configuración de instancia nam3, haz lo siguiente:

  1. Clona la configuración base y agrega la réplica de solo lectura:

    gcloud spanner instance-configs create custom-nam3-us-west2 \
    --clone-config=nam3 --add-replicas=location=us-west2, type=READ_ONLY
    
  2. Mueve tu instancia test-instance de su instancia actual actual a esta configuración de instancia nueva de custom-nam3-us-west2:

    gcloud spanner instances move test-instance --target-config=custom-nam3-us-west2
    

gcloud CLI

Usa la gcloud spanner instances move. comando para trasladar la instancia.

gcloud spanner instances move INSTANCE_ID \
--target-config=TARGET_CONFIG

Reemplaza lo siguiente:

  • INSTANCE_ID: El identificador permanente de la instancia que que quieres mover.
  • TARGET_CONFIG: Es un identificador permanente de la instancia. configuración a la que quieres mover tu instancia. La nueva ubicación geográfica de tu instancia. Puede ser regional, birregional o configuración de instancias multirregionales (por ejemplo, nam3, us-central1, o custom-nam3-us-west2).

Por ejemplo, para trasladar tu instancia test-instance de su actual la configuración de la instancia en nam3, ejecuta lo siguiente:

  gcloud spanner instances move test-instance --target-config=nam3

Opcional: Si deseas agregar una réplica de solo lectura, us-west2, a la base la configuración de instancia nam3, haz lo siguiente:

  1. Clona la configuración base y agrega la réplica de solo lectura:

    gcloud spanner instance-configs create custom-nam3-us-west2 \
    --clone-config=nam3 --add-replicas=location=us-west2, type=READ_ONLY
    
  2. Mueve tu instancia test-instance de su instancia actual actual a esta configuración de instancia nueva de custom-nam3-us-west2:

    gcloud spanner instances move test-instance --target-config=custom-nam3-us-west2
    

Cómo supervisar el progreso del traslado y la cancelación de una instancia

Puedes usar gcloud spanner operations describe o crear uno personalizado Panel de Cloud Monitoring para supervisar el progreso del traslado de una instancia.

Visualiza el progreso de la operación de traslado y cancelación

Para realizar un seguimiento del progreso de un traslado de instancia o su cancelación de traslado de instancia usa gcloud spanner operations describe kubectl. Este comando requiere que el ID de operación del traslado de la instancia en curso una sola operación.

  1. Para obtener el ID de operación de tu operación de traslado de instancia, ejecuta lo siguiente:

    gcloud spanner operations list --instance="INSTANCE_ID"
    

    Reemplaza lo siguiente:

    • INSTANCE-ID: El identificador permanente de la instancia que que quieres mover.

    El resultado muestra una lista de operaciones de larga duración, incluida la migración de instancias una sola operación.

  2. Ejecuta el comando gcloud spanner operations describe para ver el progreso porcentaje y estado:

    gcloud spanner operations describe OPERATION_ID --instance=INSTANCE_ID
    

    Reemplaza lo siguiente:

    • OPERATION_ID: Es el ID de la operación de traslado de instancias. que quieres comprobar.
    • INSTANCE_ID: El ID de la instancia que deseas de verificación.

Supervisa una operación de traslado de instancias

Puedes crear un panel personalizado de Cloud Monitoring para mostrar y supervisar métricas durante el traslado de la instancia, una operación de larga duración con posibles implicaciones de los servicios.

Los gráficos de Almacenamiento total y Almacenamiento total de la base de datos por bases de datos en la panel de control son útiles para supervisar el progreso de la migración. Puedes consultar la en la configuración de origen disminuyen de forma gradual, mientras que el almacenamiento aumentos en la configuración del destino.

Consola de Google Cloud

  1. Descargue la move-instance-dashboard.json . Este archivo tiene la información necesaria para propagar un panel personalizado en Monitoring.
  2. En la consola de Google Cloud, ve a la página  Paneles.

    Dirígete a Paneles de control

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.

  3. En la página Descripción general de los paneles, haz clic en Crear panel.
  4. En la barra de herramientas del panel, haz clic en el menú desplegable Configuración del panel. Después Selecciona JSON, seguido de Editor de JSON.
  5. En el panel JSON Editor, copia el contenido del archivo move-instance-dashboard.json que descargaste y pégalo en el Editor.
  6. Para aplicar los cambios en el panel, haz clic en Aplicar cambios. Si Si no quieres usar este panel, regresa a Paneles de control Página Resumen.
  7. Después de crear el panel, haz clic en Agregar filtro. Luego, selecciona project_id o instance_id para supervisar el progreso de la instancia mover.

gcloud CLI

  1. Descargue la move-instance-dashboard.json . Este archivo tiene la información necesaria para propagar un panel personalizado en Monitoring.
  2. Para crear un panel en un proyecto, usa el comando gcloud monitoring dashboards create:

    gcloud monitoring dashboards create --config-from-file=move-instance-dashboard.json
    

    Para obtener más información, consulta la referencia de gcloud monitoring dashboards create.

Cómo cancelar el traslado de una instancia

Solo puedes cancelar un traslado de instancia que aún esté en curso. Si quieres revertir un traslado de instancia ya completado, debes comenzar un nuevo traslado.

Puedes usar gcloud spanner operations cancel para cancelar operaciones de traslado de instancias. La cancelación no es instantánea y tarda más o menos la misma cantidad de tiempo que el tiempo transcurrido desde el inicio de la mudanza. Esto se debe a que los datos deben regresar a la instancia de origen. configuración.

Este comando requiere que el ID de operación del traslado de la instancia en curso una sola operación.

  1. Para obtener el ID de operación, ejecuta lo siguiente:

    gcloud spanner operations list --type=INSTANCE --instance="INSTANCE_ID"
    --filter="done:False AND metadata.@type:MoveInstanceMetadata
    

    Reemplaza lo siguiente:

    • INSTANCE_ID: El identificador permanente de la instancia que que quieres mover.

    El resultado muestra una lista de las operaciones de traslado de instancias en curso.

  2. Ejecuta el comando gcloud spanner operations cancel para cancelar la instancia. mover:

    gcloud spanner operations cancel OPERATION_ID
    

    Reemplaza lo siguiente:

    • OPERATION_ID: Es el ID de la operación de traslado de instancia que que quieres cancelar.

¿Qué sigue?