Referencia de errores de Fail Compute

En esta página, se describe lo que sucede durante un experimento con un tipo de falla de Fail Compute y las medidas que se deben tomar en caso de que Fault Injection Testing no pueda detener el experimento.

Cómo funciona la falla de Fail Compute

La falla de Fail Compute usa etiquetas de recursos para marcar VMs y una política de firewall con reglas que se orientan a esas etiquetas para bloquear todo el tráfico de entrada y salida. Esta configuración hace que los recursos segmentados parezcan experimentar una interrupción, al mismo tiempo que garantiza que permanezcan intactos y se puedan recuperar rápidamente.

El destino de esta falla puede ser el siguiente:

  • Instancias de máquina virtual
  • VMs basadas en una etiqueta de recurso especificada
  • VMs dentro de un grupo de instancias administrado (MIG) zonal o regional especificado
  • VMs que no son de MIG en una zona y VMs en MIG zonales
  • VMs que no son de MIG en una región y VMs en todos los MIG

Qué sucede durante la ejecución del experimento

A medida que el experimento avanza por los estados, los recursos involucrados experimentan los siguientes cambios.

Recurso

PREPARING

INJECTING

REVERTING

VMs

Ninguno

Vincular etiqueta de recurso

Desvincular etiqueta de recurso

MIGs / RMIGs

Ninguno

Desactivar la reparación automática y el ajuste de escala automático (si están activos)

Restaurar la configuración de reparación automática y ajuste de escala automático

Etiqueta

Crear recurso TagValue único para el experimento

Ninguno

Borrar TagValue

Política de firewall

Crear recurso FirewallPolicy a nivel del SISTEMA

Completar con reglas DENY y vincular la política a las VPC pertinentes

Desvincular de las VPC y borrar FirewallPolicy

Recuperación manual de emergencia

En caso de una falla catastrófica del backend en la que Fault Injection Testing no pueda detener automáticamente un experimento, puedes restablecer manualmente la conectividad a los recursos de VM. Para ello, quita manualmente las etiquetas de recursos vinculadas a las VMs afectadas. La política de firewall del sistema, que se orienta a esas etiquetas, ya no se aplicará, lo que desconectará de manera efectiva las VMs de la falla de aislamiento.

Permisos necesarios

Necesitas los siguientes permisos de IAM:

  • Obligatorio para ver instancias de VM:
    • compute.instances.get
    • compute.instances.list
  • Obligatorio para ver y quitar las vinculaciones de etiquetas:
    • resourcemanager.tagValueBindings.list
    • resourcemanager.tagValueBindings.delete

Recuperación manual con la Google Cloud IU de la consola

Para realizar una recuperación con la Google Cloud consola, haz lo siguiente:

  1. Navega a la página Instancias de VM en la Google Cloud consola.
  2. Selecciona las instancias de VM específicas afectadas por la falla de aislamiento.
  3. En la página de detalles de la instancia, navega a la sección que administra las etiquetas.
  4. Identifica la vinculación de etiquetas específica del experimento asociada con la falla de Fail Compute de Fault Injection Testing.
  5. Quita la vinculación de etiquetas de la VM.

Una vez que se quite la etiqueta, la política de firewall asociada ya no se orientará a la VM y se restablecerá la conectividad.

Recuperación manual con gcloud CLI

Puedes quitar manualmente la vinculación de etiquetas del experimento de una VM con Google Cloud CLI. En los siguientes comandos, reemplaza TAG_VALUE_NAME, PROJECT_NUMBER, ZONE y VM_NAME por los valores específicos de tu entorno.

Primero, recupera el nombre del valor de la etiqueta específica del experimento. Para ello, enumera las vinculaciones de etiquetas actuales de la VM:

gcloud resource-manager tag bindings list --resource=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_NAME

Usa el resultado del comando anterior para determinar el TAG_VALUE_NAME necesario para el paso de eliminación:

gcloud resource-manager tag bindings delete --tag-value=TAG_VALUE_NAME --resource=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_NAME

Una vez que se quite la etiqueta, la política de firewall asociada ya no se orientará a la VM y se restablecerá la conectividad.