Solución de problemas con Azure Chaos Studio

A medida que use Azure Chaos Studio, es posible que encuentre algunos problemas ocasionalmente. En este artículo se explican los problemas comunes y los pasos para solucionarlos.

Sugerencias para solución de problemas generales

Las siguientes fuentes son útiles para solucionar problemas con Chaos Studio:

  • Registro de actividad: el registro de actividad de Azure tiene un registro de todas las operaciones de creación, actualización y eliminación de la suscripción. Entre estos registros se incluyen las operaciones de Chaos Studio, como la habilitación de destinos o funcionalidades, la instalación de agentes y la creación o ejecución de experimentos. Los errores en el registro de actividad indican que es posible que una acción del usuario esencial para usar Chaos Studio no se haya completado. La mayoría de los errores directos de servicio también insertan errores mediante la ejecución de una operación de Azure Resource Manager, por lo que el registro de actividad también tendrá el registro de los errores insertados durante un experimento para algunos errores directos de servicio.
  • Detalles del experimento: los detalles de ejecución del experimento muestran el estado y los errores de la ejecución de un experimento individual. Al abrir un error específico en los detalles del experimento, se muestran los recursos con errores y los mensajes de cada error. Obtenga más información sobre cómo acceder a los detalles del experimento.
  • Registros de agente: si usa un error basado en agente, es posible que tenga que usar RDP o SSH en la máquina virtual para comprender por qué el agente no pudo ejecutar un error. Las instrucciones para acceder a los registros del agente dependen del sistema operativo:
    • Agente de Windows de Chaos: los registros del agente se encuentran en el registro de eventos de Windows en la categoría Aplicación con el origen AzureChaosAgent. El agente agrega eventos de actividad de error y comprobación de mantenimiento periódica (capacidad para autenticarse y comunicarse con el servicio del agente de Chaos Studio) a este registro.
    • Agente de Linux de Chaos: el agente de Linux usa systemd para administrar el proceso del agente como servicio de Linux. Para ver el diario de systemd del agente (los eventos registrados por el servicio del agente), ejecute el comando journalctl -u azure-chaos-agent.
  • Estado de la extensión de VM: si usa un error basado en agente, compruebe que la extensión de VM está instalada y en buen estado. En Azure Portal, vaya a la máquina virtual y a Extensiones o Extensiones y aplicaciones. Haga clic en la extensión ChaosAgent y busque los campos siguientes:
    • El Estado debería mostrar el mensaje El aprovisionamiento se realizó correctamente. Cualquier otro estado indica que el agente no se pudo instalar. Compruebe que cumple todos los requisitos del sistema. Vuelva a instalar al agente.
    • El Estado del controlador debería mostrar Listo. Cualquier otro estado indica que el agente está instalado, pero no se puede conectar a Chaos Studio. Compruebe que cumple todos los requisitos de red y que la identidad administrada asignada por el usuario se agregó a la máquina virtual. Intente reiniciar.

Problemas al agregar un recurso

Puede encontrarse con los siguientes problemas al agregar un recurso.

Los recursos no se muestran en la lista de destinos en Azure Portal

Si no ve los recursos que quiere habilitar en la lista de destinos de Chaos Studio, puede deberse a cualquiera de los siguientes problemas:

Se produce un error en la habilitación de destinos o funcionalidades o no se muestran correctamente en la lista de destinos

Si ve un error al habilitar destinos o funcionalidades, haga lo siguiente:

  1. Compruebe que tiene los permisos adecuados para los recursos que va a agregar. La habilitación de un destino o funcionalidades requiere el permiso Microsoft.Chaos/* en el ámbito del recurso. Los roles integrados, como el de colaborador, tienen permisos comodín de lectura y escritura, lo que incluye permisos para todas las operaciones de Microsoft.Chaos.
  2. Espere unos minutos a que se actualice la lista de destinos y funcionalidades. Azure Portal usa Azure Resource Graph para recopilar información sobre cómo agregar destinos y funcionalidades. La actualización puede tardar hasta cinco minutos en propagarse.
  3. Si el recurso sigue apareciendo como No habilitado, pruebe los pasos siguientes:
    1. Intente habilitar el recurso de nuevo.
    2. Si la habilitación de recursos sigue devolviendo errores, vaya al registro de actividad y busque la operación de creación de destino con errores para ver información detallada sobre el error.
  4. Si el recurso muestra Habilitado, pero no se pueden agregar funcionalidades, haga lo siguiente:
    1. Seleccione Administrar acciones en el recurso en la lista de destinos. Marque las funcionalidades que no se marcaron y seleccione Guardar.
    2. Si la habilitación de funcionalidades sigue devolviendo errores, vaya al registro de actividad y busque la operación de creación de destino con errores para ver información detallada sobre el error.

Problemas de requisitos previos

Algunos problemas se deben a que faltan algunos requisitos previos.

Errores basados en agente en una máquina virtual

Los errores basados en agente pueden producir errores por varios motivos relacionados con la falta de requisitos previos:

  • En las máquinas virtuales Linux, los errores de presión de CPU, presión de memoria física, presión de E/S de disco y esfuerzo stress-ng arbitrario requieren la instalación de la utilidad stress-ng en la máquina virtual. Para obtener más información sobre cómo instalar stress-ng, consulte las secciones de requisitos previos de los errores.
  • En las máquinas virtuales Linux o Windows, también debe agregarse a la máquina virtual la identidad administrada asignada por el usuario proporcionada durante la habilitación de destinos basada en agente.
  • En las máquinas virtuales Linux o Windows, la identidad administrada asignada por el sistema para el experimento debe tener el rol de lector en la máquina virtual. (Los roles aparentemente elevados, como el de colaborador de máquina virtual, no incluyen la operación */Read necesaria para que el agente de Chaos Studio lea el recurso de proxy de destino del agente de Microsoft en la máquina virtual).

El agente de Chaos no se instala en conjuntos de escalado de máquinas virtuales

Si la directiva de actualización del conjunto de escalado de máquinas virtuales está establecida en Manual, es posible que se produzca un error al instalar el agente de Chaos en conjuntos de escalado de máquinas virtuales sin que se muestre el error. Para comprobar la directiva de actualización de conjuntos de escalado de máquinas virtuales:

  1. Inicie sesión en Azure Portal.
  2. Seleccione Conjuntos de escalado de máquinas virtuales.
  3. En el panel izquierdo, seleccione Directiva de actualización.
  4. Compruebe el modo de actualización para ver si está establecido en Manual: las instancias existentes deben actualizarse manualmente.

Si la directiva de actualización está establecida en Manual, debe actualizar las instancias de Azure Virtual Machine Scale Sets para que pueda finalizar la instalación del agente de Chaos.

Actualización de instancias desde Azure Portal

Puede actualizar las instancias de Virtual Machine Scale Sets desde Azure Portal:

  1. Inicie sesión en Azure Portal.
  2. Seleccione Conjuntos de escalado de máquinas virtuales.
  3. En el panel izquierdo, seleccione Instancias.
  4. Seleccione todas las instancias y seleccione Actualizar.

Actualización de instancias con la CLI de Azure

Puede actualizar las instancias de Virtual Machine Scale Sets con la CLI de Azure:

  • Desde la CLI de Azure, use az vmss update-instances para actualizar manualmente las instancias:

    az vmss update-instances --resource-group myResourceGroup --name myScaleSet --instance-ids {instanceIds}
    

Para obtener más información, consulte Actualización de las máquinas virtuales con el modelo de conjunto de escalado más reciente.

Errores de Chaos Mesh de AKS

Los errores de Chaos Mesh de Azure Kubernetes Service (AKS) pueden producir errores por varios motivos relacionados con la falta de requisitos previos:

  • Chaos Mesh debe instalarse primero en el clúster de AKS antes de usar los errores de Chaos Mesh de AKS. Para obtener instrucciones, consulte el tutorial sobre errores de Chaos Mesh en AKS.
  • Se debe usar la versión de Chaos Mesh 2.0.4 o posterior. Para obtener la versión de Chaos Mesh, puede conectarse al clúster de AKS y ejecutar helm version chaos-mesh.
  • Chaos Mesh debe instalarse con el espacio de nombres chaos-testing. No se admiten otros nombres de espacio de nombres para Chaos Mesh.
  • El rol de administrador del clúster de AKS debe asignarse a la identidad administrada asignada por el sistema para el experimento de caos.

Problemas al crear o diseñar un experimento

Es posible que encuentre problemas al crear o diseñar un experimento.

Al agregar un error, el recurso no se muestra en la lista de recursos de destino

Al agregar un error, si no ve en la lista de recursos de destino el recurso al que desea aplicar el error, puede deberse a alguno de los siguientes problemas:

  • El filtro Suscripción se establece para excluir la suscripción en la que se implementa el destino. Seleccione el filtro de suscripción y modifique las suscripciones seleccionadas.
  • El recurso aún no se ha agregado. Vaya a la vista Destinos y habilite el destino. Luego, cierre el panel Agregar error y vuelva a abrirlo para ver la lista de destinos actualizada.
  • El recurso aún no se ha habilitado para el tipo de destino de ese error. Consulte la biblioteca de errores para ver qué tipo de destino se usa para el error. Luego, vaya a la vista Destinos y habilite ese tipo de destino. El tipo es basado en agente para los errores de agente de Microsoft o bien directo de servicio para todos los demás tipos de destino. Luego, cierre el panel Agregar error y vuelva a abrirlo para ver la lista de destinos actualizada.
  • El recurso aún no tiene habilitada la funcionalidad para ese error. Consulte la biblioteca de errores para ver el nombre de la funcionalidad del error. Luego, vaya a la vista Destinos y seleccione Administrar acciones en el recurso de destino. Active la casilla de la funcionalidad correspondiente al error que está intentando ejecutar y seleccione Guardar. Luego, cierre el panel Agregar error y vuelva a abrirlo para ver la lista de destinos actualizada.
  • El recurso se ha agregado recientemente y aún no aparece en Resource Graph. La lista de recursos de destino se consulta desde Resource Graph. Una vez que se habilita un nuevo destino, la actualización puede tardar hasta cinco minutos en propagarse a Resource Graph. Espere unos minutos y vuelva a abrir el panel Agregar error.

Al crear un experimento, obtengo el error "El proveedor microsoft:agent requiere una identidad administrada"

Este error se produce cuando el agente no se ha implementado en la máquina virtual. Para obtener instrucciones de instalación, consulte el artículo sobre la creación y ejecución de un experimento que usa errores basados en agentes.

Al crear un experimento, obtengo el error "No se admite el tipo de medio de contenido 'null'". Solo se admite "application/json"

Puede que se encuentre con este error si está creando el experimento mediante una plantilla de Azure Resource Manager o la API de REST de Chaos Studio. El error indica que hay un código JSON con formato incorrecto en la definición del experimento. Compruebe si tiene errores de sintaxis, como llaves o corchetes que no coinciden ({} y []). Para comprobarlo, use un linter de JSON, como Visual Studio Code.

Problemas al ejecutar un experimento

Es posible que encuentre problemas al ejecutar un experimento.

El estado de ejecución de mi experimento después del inicio es "Error".

En la lista Experimentos de Azure Portal, seleccione el nombre del experimento para ver la información general del experimento. En la sección Historial, seleccione Detalles junto a la ejecución del experimento con errores para ver información detallada del error.

Captura de pantalla donde se muestra el historial de experimentos.

El error basado en agente produjo el siguiente error: "Compruebe que el destino se ha agregado correctamente y que se han concedido los permisos de lectura adecuados al MSI del experimento"

Este error se puede producir si se agrega el agente mediante Azure Portal, lo que causa un problema conocido. La habilitación de un destino basado en agente no asigna la identidad administrada asignada por el usuario a la máquina virtual o al conjunto de escalado de máquinas virtuales.

Para resolver este problema, vaya a la máquina virtual o al conjunto de escalado de máquinas virtuales en Azure Portal y vaya a Identidad. Abra la pestaña Asignado por el usuario y agregue la identidad asignada por el usuario a la máquina virtual. Una vez que termine, es posible que tenga que reiniciar la máquina virtual para que el agente se conecte.

Error basado en agente con el error "El agente ya está realizando otra tarea"

Este error se producirá si intenta ejecutar varios errores de agente al mismo tiempo. En la actualidad, el agente solo admite la ejecución de un solo error de agente a la vez y producirá un error si define un experimento que ejecuta varios errores de agente al mismo tiempo.

Problemas al configurar una identidad administrada

Cuando intento agregar al experimento existente una identidad administrada asignada por el sistema o por el usuario, no se puede guardar.

Si se intenta agregar una identidad administrada asignada por el usuario o asignada por el sistema a un experimento que ya tiene asignada una identidad administrada, el experimento no se puede implementar. Para poder agregar la identidad administrada deseada, primero se debe eliminar la identidad administrada existente asignada por el usuario o por el sistema del experimento correspondiente.

Cuando ejecuto un experimento configurado para crear y asignar automáticamente un rol personalizado, obtengo el error "No se pudieron resolver los recursos de destino". Código de error: AccessDenied. Recursos de destino:"

Cuando la casilla "Permisos de roles personalizados" está seleccionada para un experimento, Chaos Studio crea y asigna un rol personalizado con los permisos necesarios a la identidad del experimento. Sin embargo, esto está sujeto a los siguientes límites de asignación y definición de roles:

  • Cada suscripción de Azure tiene un límite de 4000 asignaciones de roles.
  • Cada inquilino de Microsoft Entra tiene un límite de 5000 definiciones de roles (o 2000 definiciones de roles para Azure en China).

Cuando se alcance uno de estos límites, se producirá el error. Para solucionarlo, conceda permisos a la identidad del experimento manualmente.