Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Tutorial: Ejecutar esfuerzo de la CPU en una instancia con AWS FIS
Puede usar AWS Fault Injection Service (AWS FIS) para probar cómo gestionan sus aplicaciones el esfuerzo de la CPU. Usa este tutorial para crear una plantilla de experimento que use AWS FIS para ejecutar un documento de SSM preconfigurado que ejecute esfuerzo de la CPU en una instancia. El tutorial utiliza una condición de detención para detener el experimento cuando la utilización de la CPU de la instancia supera un umbral configurado.
Para obtener más información, consulte Documentos preconfigurados AWS FIS SSM.
Requisitos previos
Antes de poder utilizar AWS FIS para ejecutar esfuerzo de la CPU, se deben completar los siguientes requisitos previos:
Crear un rol de IAM
Cree un rol y adjunte una política que permita a AWS FIS utilizar la acción aws:ssm:send-command
en su nombre. Para obtener más información, consulte Roles de IAM para los experimentos de AWS FIS.
Verificación del acceso a AWS FIS
Asegúrese de tener acceso a AWS FIS. Para obtener más información, consulte Ejemplos de política de AWS FIS.
Preparación de una instancia EC2 de prueba
-
Lance una instancia EC2 con Amazon Linux 2 o Ubuntu, tal y como exigen los documentos de SSM preconfigurados.
-
SSM debe administrar la instancia. Para comprobar que SSM administra la instancia, abra la consola de Fleet Manager
. Si SSM no administra la instancia, compruebe que el agente SSM esté instalado y que la instancia tenga una función de IAM asociada a la política de AmazonSSM. ManagedInstanceCore Para verificar el SSM Agent instalado, conéctese a la instancia y ejecute el siguiente comando. Amazon Linux 2
yum info amazon-ssm-agent
Ubuntu
apt list amazon-ssm-agent
-
Habilite la monitorización detallada para la instancia. Esto proporciona datos en periodos de 1 minuto por un cargo adicional. Seleccione la instancia y elija Acciones, Monitoreo y solución de problemas, Administrar el monitoreo detallado.
Paso 1: Cree una alarma para una condición de parada CloudWatch
Configure una CloudWatch alarma para poder detener el experimento si la utilización de la CPU supera el umbral que especifique. El siguiente procedimiento establece el umbral en un 50 % de uso de la CPU para la instancia de destino. Para obtener más información, consulte Condiciones de detención.
Para crear una alarma que indique cuándo el uso de la CPU supera un umbral
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En el panel de navegación, seleccione Instancias.
-
Seleccione la instancia de destino y elija Acciones, Supervisar y solucionar problemas y Administrar CloudWatch alarmas.
-
En Notificación de alarma, active la opción para desactivar las notificaciones de Amazon SNS.
-
En Umbrales de alarma, utilice los siguientes ajustes:
Agrupar muestras por: Máximo
Tipo de datos para la muestra: Utilización de la CPU
Porcentaje:
50
Período:
1 Minute
-
Cuando haya terminado de configurar la alarma, elija Crear.
Paso 2: Crear una plantilla de experimento
Cree la plantilla de experimento con la consola AWS FIS. En la plantilla, debe especificar la siguiente acción para ejecutarla: AWSFISaws:ssm:send-command/ -Run-CPU-Stress.
Para crear una plantilla de experimento
Abra la consola de AWS FIS en https://console.aws.amazon.com/fis/
. -
En el panel de navegación, elija Plantillas de experimento.
-
Elija Crear plantilla de experimento.
-
En Descripción y nombre, escriba un nombre y una descripción para la plantilla.
-
En Actions (Acciones), haga lo siguiente:
-
Seleccione Agregar acción.
-
Escriba un nombre para la acción. Por ejemplo, escriba
runCpuStress
. -
Como Tipo de acción, elija AWSFIS aws:ssm:send-command/ -Run-CPU-Stress. Esto agrega automáticamente el ARN del documento de SSM al ARN de documento.
-
En Destino, mantenga el destino que AWS FIS crea automáticamente.
-
En Parámetros de acción, Parámetros del documento, ingrese lo siguiente:
{"DurationSeconds":"120"}
-
En Parámetros de acción, Duración, especifique 5 minutos (PT5M).
-
Seleccione Guardar.
-
-
En Targets (Destinos), haga lo siguiente:
-
Elija Editar en el destino que AWS FIS creó automáticamente en el paso anterior.
-
Sustituya el nombre por defecto por un nombre más descriptivo. Por ejemplo, escriba
testInstance
. -
Compruebe que Tipo de recurso sea aws:ec2:instance.
-
En Método de destino, elija ID de recurso y, a continuación, elija el ID de la instancia de prueba.
-
En Modo de selección, elija Todos.
-
Seleccione Guardar.
-
-
En Acceso al servicio, elija Usar un rol de IAM existente y, a continuación, elija el rol de IAM que creó, tal como se describe en los requisitos previos de este tutorial. Si su rol no aparece, compruebe que tiene la relación de confianza requerida. Para obtener más información, consulte Roles de IAM para los experimentos de AWS FIS.
-
Para las condiciones de parada, seleccione la alarma que creó en el paso 1. CloudWatch
-
(Opcional) En Etiquetas, elija Agregar nueva etiqueta y especifique una clave y un valor de etiqueta. Las etiquetas que agregue se aplican a la plantilla de experimento, no a los experimentos que se ejecutan con la plantilla.
-
Elija Crear plantilla de experimento.
(Opcional) Para ver la plantilla de experimento JSON
Elija la pestaña Exportar. A continuación, verá un ejemplo del JSON creado por el procedimiento de consola anterior.
{ "description": "Test CPU stress predefined SSM document", "targets": { "testInstance": { "resourceType": "aws:ec2:instance", "resourceArns": [ "arn:aws:ec2:
region
:123456789012
:instance/instance_id
" ], "selectionMode": "ALL" } }, "actions": { "runCpuStress": { "actionId": "aws:ssm:send-command", "parameters": { "documentArn": "arn:aws:ssm:region
::document/AWSFIS-Run-CPU-Stress", "documentParameters": "{\"DurationSeconds\":\"120\"}", "duration": "PT5M" }, "targets": { "Instances": "testInstance" } } }, "stopConditions": [ { "source": "aws:cloudwatch:alarm", "value": "arn:aws:cloudwatch:region
:123456789012
:alarm:awsec2-instance_id
-GreaterThanOrEqualToThreshold-CPUUtilization" } ], "roleArn": "arn:aws:iam::123456789012
:role/AllowFISSSMActions
", "tags": {} }
Paso 3: Iniciar el experimento
Cuando haya terminado de crear la plantilla de experimento, podrá utilizarla para iniciar un experimento.
Para iniciar un experimento
-
Debería estar en la página de detalles de la plantilla de experimento que acaba de crear. De lo contrario, elija Plantillas de experimento y, a continuación, seleccione el ID de la plantilla de experimento para abrir la página de detalles.
-
Elija Start experiment (Iniciar experimento).
-
(Opcional) Para agregar una etiqueta a su experimento, elija Agregar nueva etiqueta e ingrese una clave y un valor de etiqueta.
-
Elija Start experiment (Iniciar experimento). Cuando se le solicite confirmación, ingrese
start
. Elija Start experiment (Iniciar experimento).
Paso 4: Hacer un seguimiento del progreso del experimento
Puede hacer un seguimiento del progreso de un experimento en ejecución hasta que se complete, se detenga o falle.
Para hacer un seguimiento del progreso de un experimento
-
Debería estar en la página de detalles del experimento que acaba de iniciar. De lo contrario, seleccione Experimentos y, a continuación, seleccione el ID del experimento para abrir la página de detalles del experimento.
-
Para ver el estado del experimento, seleccione Estado en el panel Detalles. Para obtener más información, consulte Estados de experimento.
-
Cuando el estado del experimento sea En ejecución, pase al siguiente paso.
Paso 5: Verificar los resultados del experimento
Puede monitorizar el uso de la CPU de la instancia mientras se ejecuta el experimento. Cuando el uso de la CPU alcanza el umbral, se activa la alarma y el experimento se detiene cuando se produce la condición de detención.
Para verificar los resultados del experimento
-
Seleccione la pestaña Condiciones de detención. El borde y el icono de marca de verificación verdes indican que el estado inicial de la alarma es
OK
. La línea roja indica el umbral de alarma. Si prefiere un gráfico más detallado, elija Ampliar en el menú del widget. -
Cuando el uso de la CPU supera el umbral, el borde y el icono de signo de exclamación rojos de la pestaña Condiciones de detención indican que el estado de alarma ha cambiado a
ALARM
. En el panel Detalles, el estado del experimento es Detenido. Si selecciona el estado, el mensaje que aparece es “El experimento se ha detenido por la condición de detención”. -
Cuando el uso de la CPU cae por debajo del umbral, el borde y el icono de marca de verificación verdes indican que el estado de alarma ha cambiado a
OK
. -
(Opcional) Seleccione Ver en alarmas en el menú del widget. Esto abre la página de detalles de la alarma en la CloudWatch consola, donde puede obtener más detalles sobre la alarma o editar la configuración de la alarma.
Paso 6: Limpiar
Si ya no necesita la instancia EC2 de prueba que creó para este experimento, puede terminarla.
Para terminar la instancia
-
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
. -
En el panel de navegación, seleccione Instancias.
-
Seleccione las instancias de prueba y elija Estado de instancia y Terminar instancia.
-
Cuando se le indique que confirme, elija Terminate (Rescindir).
Si ya no necesita la plantilla de experimento, puede eliminarla.
Para eliminar una plantilla de experimento con la consola de AWS FIS
Abra la consola de AWS FIS en https://console.aws.amazon.com/fis/
. -
En el panel de navegación, elija Plantillas de experimento.
-
Seleccione la plantilla de experimento y elija Acciones, Eliminar plantilla de experimento.
-
Cuando se le solicite confirmación, ingrese
delete
y luego, elija Eliminar plantilla de experimento.