Hay varios problemas que pueden impedir que un grupo de instancias gestionadas (GIG) cree o vuelva a crear una instancia de VM correctamente.
Si se generan registros de un MIG eliminado
El problema puede estar relacionado con las siguientes situaciones.
La herramienta de escalado automático adjunta sigue existiendo
Si elimina un MIG mediante la API de Compute Engine y no envía una solicitud independiente para eliminar el escalador automático asociado, es posible que el Explorador de registros muestre registros con el siguiente mensaje.
The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/DELETED_INSTANCE_GROUP_NAME' was not found.
Resolución:
Para solucionar este problema, elimina el escalador automático adjunto mediante los métodos de la API Compute Engine:
- Para un escalador automático de un MIG zonal, usa el método
autoscalers.delete
. - Para una herramienta de escalado automático de un MIG regional, usa el método
regionAutoscalers.delete
.
Si tu MIG no puede crear ni recrear instancias
El problema puede estar relacionado con las siguientes situaciones.
El disco de arranque ya existe
De forma predeterminada, se crea un disco persistente de arranque al crear una instancia.
El nombre del disco de arranque coincide con el nombre de la VM. Si le asignas un nombre a una máquina virtual my-instance
, el disco también se llamará my-instance
. Si ya existe un disco persistente con ese nombre, la solicitud falla. Para solucionar este problema, puedes crear una instantánea (opcional) y, a continuación, eliminar el disco persistente.
La plantilla de instancia no es válida
Si has actualizado la plantilla de instancia recientemente, puede que haya una propiedad no válida que provoque que la MIG no pueda crear VMs. Examina las propiedades para detectar estos errores habituales:
- Has especificado un recurso que no existe, como una imagen de origen.
- Has escrito mal el nombre de un recurso.
- Has intentado conectar un disco persistente que no es de arranque en modo de lectura y escritura, pero tu grupo contiene más de una VM. En los grupos con más de una VM, los discos adicionales que quieras compartir entre todas las VMs del grupo solo se pueden montar en el modo de solo lectura.
Se ha superado el límite del tipo de recurso
Se produce el siguiente error cuando intentas crear más de 2000 VMs en un MIG regional o más de 1000 VMs en un MIG zonal. Has alcanzado el límite de tamaño de tu grupo de instancias.
Mensaje de error:
ERROR: (gcloud.compute.<INSTANCE_GROUP_TYPE>.<METHOD>) Could not fetch resource: - Exceeded limit 'MAX_INSTANCES_IN_INSTANCE_GROUP' on resource 'PROJECT_ID'. Limit: NUMBER
Resolución:
Para solucionar este problema, prueba una de las siguientes opciones:
- Si usas un MIG zonal, utiliza un MIG regional en su lugar.
- Crea varios MIGs y divide tu carga de trabajo entre ellos. Por ejemplo, puedes ajustar la configuración del balanceo de carga.
- Si sigues necesitando un grupo más grande, puedes aumentar el límite de tamaño de tu MIG o ponerte en contacto con el equipo de Asistencia para enviar una solicitud.
Si no puedes eliminar tu MIG o sus instancias
El problema puede estar relacionado con la siguiente situación.
No se ha encontrado el recurso en la zona o la región
El siguiente error se produce cuando intentas eliminar un MIG regional y
especificas la marca --zone
, no especificas ninguna región o especificas una región incorrecta.
Se puede producir un error similar si intentas eliminar un MIG zonal y especificas la marca --region
.
Mensaje de error:
ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed: ‐ The resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed: ‐ The resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME' was not found
Resolución:
Para solucionar este problema, prueba una de las siguientes opciones:
- Añade la marca
--region
o--zone
correspondiente al comando. - Definir una región y una zona predeterminadas
El recurso lo usa un servicio de backend
No puedes quitar un grupo de instancias cuando lo usa el servicio de backend de un balanceador de carga. Debes quitar la instancia del servicio backend para poder eliminar el grupo de instancias.
Mensaje de error:
ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed: ‐ The instance_group_manager resource 'projects/PROJECT/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE
ERROR: (gcloud.compute.instance-groups.managed.delete) Some requests did not succeed: ‐ The instance_group_manager resource 'projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME is already being used by 'projects/PROJECT/global/backendServices/BACKEND_SERVICE
Resolución:
Opcional: Vacía el grupo de instancias de backend.
En el caso de los balanceadores de carga proxy, puedes definir el escalador de capacidad en
0.0
antes de quitar el grupo de instancias de un servicio de backend. Puedes definir el escalador de capacidad en cero con el comandogcloud compute backend-services edit
.Tanto en los balanceadores de carga proxy como en los de transferencia, si habilitas el drenaje de conexiones en el servicio de backend, Google Cloud se intentará permitir que las conexiones existentes persistan, se completen y se drenen siempre que se quite un grupo de instancias de un servicio de backend.
Quita el MIG del servicio backend regional o global.
En el caso de un MIG zonal, ejecuta el siguiente comando:
gcloud compute backend-services remove-backend BACKEND_SERVICE \ --instance-group=INSTANCE_GROUP_NAME \ --instance-group-zone=ZONE \ [--region=REGION | --global]
En el caso de un MIG regional, ejecuta el siguiente comando:
gcloud compute backend-services remove-backend BACKEND_SERVICE \ --instance-group=INSTANCE_GROUP_NAME \ --instance-group-region=REGION \ [--region=REGION | --global]
Elimina el MIG:
gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME
Si tu MIG intenta recrear instancias continuamente
El problema puede estar relacionado con la siguiente situación.
Las sondas de comprobación del estado no pueden acceder a la instancia
Si has configurado una política de recuperación automática, pero no has configurado (o has configurado incorrectamente) la regla de cortafuegos que permite que las sondas de comprobación del estado lleguen a tu aplicación, tus VMs aparecerán como no saludables y el MIG intentará recrearlas continuamente. Para obtener información sobre cómo configurar una regla de cortafuegos de comprobación del estado, consulta el artículo Ejemplo de configuración de comprobación del estado.