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.
Creación de un entorno de pruebas
Esta guía proporciona pruebas prácticas para validar la funcionalidad de respuesta a incidentes del AWS DevOps agente mediante una arquitectura de muestra. Utilice este suplemento si quiere probar DevOps Agent antes de conectar sus sistemas de producción.
Requisitos previos
AWS cuenta con acceso administrativo
AWS DevOps Espacio de agente creado y configurado mediante el flujo de roles de DevOps agente de creación automática
Resumen de costes y seguridad
Protección de costes
Prueba EC2: GRATUITA (nivel AWS gratuito) o aproximadamente 0,02$ durante 2 horas
Prueba Lambda: GRATUITA (nivel gratuito de 1 millón requests/month )
CloudWatch: GRATIS (10 alarmas, métricas básicas incluidas)
Costo total estimado esperado: entre 0,00 y 0,05$ para completar las pruebas
Características de seguridad de estas pruebas
Terminación automática: apagado automático incorporado
Apto para el nivel gratuito: utiliza los tipos de instancias más pequeños
Alcance limitado: recursos de prueba mínimos y aislados
Limpieza sencilla: sencillos pasos de consola para quitarlo todo
Sin impacto en la producción: entorno de prueba completamente independiente
Configure su AWS cuenta para realizar las pruebas
importante
Los recursos de infraestructura deben desplegarse en la AWS cuenta en la que creó su cuenta de nube principal de DevOps Agent Space. La región específica no importa.
Inicie sesión en AWS la consola: https://console.aws.amazon.com
Asegúrese de trabajar en la misma AWS cuenta en la que se encuentra su espacio de DevOps agente
Puedes usar cualquier región para tus recursos de prueba
nota
El mapeo individual entre la cuenta principal de su DevOps agente y los recursos del entorno de prueba que está creando simplifica la configuración de la prueba. Puede ampliar fácilmente su espacio de DevOps agente para incluir cuentas secundarias y permitir investigaciones entre cuentas.
Elige tu prueba
Puede realizar cualquiera de las dos pruebas de forma independiente o ambas a la vez:
Opción de prueba A: prueba de capacidad de la CPU EC2
Objetivo: validar la capacidad del AWS DevOps agente para detectar e investigar los problemas de rendimiento de EC2
Tiempo estimado: 5 minutos de configuración más 10 minutos de ejecución automática
Dificultad: Totalmente automatizado (no se requieren pasos manuales)
Opción de prueba B: prueba de tasa de error Lambda
Objetivo: Validar la capacidad del AWS DevOps agente para detectar e investigar los errores de la función Lambda
Tiempo estimado: 10 minutos de configuración más 2 minutos de activación
Dificultad: Muy fácil
Opción de prueba A: prueba de capacidad de la CPU EC2
Paso 1: Implemente la CloudFormation pila para la prueba de EC2
Los utilizaremos CloudFormation para crear nuestros recursos de prueba, lo que permitirá al AWS DevOps agente rastrearlos e investigarlos adecuadamente.
Navega hasta CloudFormation:
En AWS la consola, busque CloudFormation "» y haga clic en CloudFormation
Haga clic en Crear pila > Con recursos nuevos (estándar)
Cargar plantilla:
Cree un nuevo archivo local llamado
AWS-DevOpsAgent-ec2-test.yamlCopia y pega esta CloudFormation plantilla en el archivo:
-
AWSTemplateFormatVersion: '2010-09-09' Description: 'AWS DevOps Agent EC2 CPU Test Stack' Parameters: MyIP: Type: String Description: Your current IP address for SSH access (find at https://whatismyipaddress.com) Default: '0.0.0.0/0' Resources: # Security Group for SSH access TestSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupName: AWS-DevOpsAgent-test-sg GroupDescription: AWS DevOps Agent beta testing security group SecurityGroupIngress: - IpProtocol: tcp FromPort: 22 ToPort: 22 CidrIp: !Ref MyIP Description: SSH access from your IP Tags: - Key: Name Value: AWS-DevOpsAgent-Test-SG - Key: Purpose Value: AWS-DevOpsAgent-Testing # Key Pair for SSH access TestKeyPair: Type: AWS::EC2::KeyPair Properties: KeyName: AWS-DevOpsAgent-test-key KeyType: rsa Tags: - Key: Name Value: AWS-DevOpsAgent-Test-Key - Key: Purpose Value: AWS-DevOpsAgent-Testing # EC2 Instance for CPU testing TestInstance: Type: AWS::EC2::Instance Properties: InstanceType: t3.micro ImageId: '{{resolve:ssm:/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-6.1-x86_64}}' KeyName: !Ref TestKeyPair SecurityGroupIds: - !Ref TestSecurityGroup UserData: Fn::Base64: !Sub | #!/bin/bash yum update -y yum install -y htop # Create the CPU stress test script cat > /home/ec2-user/cpu-stress-test.sh << 'EOF' #!/bin/bash echo "Starting AWS DevOpsAgent CPU Stress Test" echo "Time: $(date)" echo "Instance: $(curl -s http://169.254.169.254/latest/meta-data/instance-id)" echo "" # Get number of CPU cores CORES=$(nproc) echo "CPU Cores: $CORES" echo "" echo "Starting stress test (5 minutes)..." echo "This will generate >70% CPU usage to trigger CloudWatch alarm" echo "" # Create CPU load using yes command echo "Starting CPU load processes..." for i in $(seq 1 $CORES); do (yes > /dev/null) & CPU_PID=$! echo "Started CPU load process $i (PID: $CPU_PID)" echo $CPU_PID >> /tmp/cpu_test_pids done # Auto-cleanup after 5 minutes (sleep 300 && echo "Stopping CPU load processes..." && kill $(cat /tmp/cpu_test_pids 2>/dev/null) 2>/dev/null && rm -f /tmp/cpu_test_pids) & echo "" echo "CPU load processes started for 5 minutes" echo "Check CloudWatch for alarm trigger in 3-5 minutes" EOF chmod +x /home/ec2-user/cpu-stress-test.sh chown ec2-user:ec2-user /home/ec2-user/cpu-stress-test.sh # Create auto-shutdown script (safety mechanism) cat > /home/ec2-user/auto-shutdown.sh << 'SHUTDOWN_EOF' #!/bin/bash echo "Auto-shutdown scheduled for 2 hours from now: $(date)" sleep 7200 echo "Auto-shutdown executing at: $(date)" sudo shutdown -h now SHUTDOWN_EOF chmod +x /home/ec2-user/auto-shutdown.sh nohup /home/ec2-user/auto-shutdown.sh > /home/ec2-user/auto-shutdown.log 2>&1 & echo "AWS DevOpsAgent test setup completed at $(date)" > /home/ec2-user/setup-complete.txt Tags: - Key: Name Value: AWS-DevOpsAgent-Test-Instance - Key: Purpose Value: AWS-DevOpsAgent-Testing # CloudWatch Alarm for CPU utilization CPUAlarm: Type: AWS::CloudWatch::Alarm Properties: AlarmName: AWS-DevOpsAgent-EC2-CPU-Test AlarmDescription: AWS-DevOpsAgent beta test - EC2 CPU utilization alarm MetricName: CPUUtilization Namespace: AWS/EC2 Statistic: Average Period: 60 EvaluationPeriods: 1 Threshold: 70 ComparisonOperator: GreaterThanThreshold Dimensions: - Name: InstanceId Value: !Ref TestInstance TreatMissingData: notBreaching Outputs: InstanceId: Description: EC2 Instance ID for testing Value: !Ref TestInstance SecurityGroupId: Description: Security Group ID Value: !Ref TestSecurityGroup AlarmName: Description: CloudWatch Alarm Name Value: !Ref CPUAlarm SSHCommand: Description: SSH command to connect to instance Value: !Sub 'ssh -i "AWS-DevOpsAgent-test-key.pem" ec2-user@${TestInstance.PublicDnsName}'
-
En la CloudFormation consola, selecciona Cargar un archivo de plantilla
Haz clic en Elegir archivo
Seleccione el
AWS-DevOpsAgent-ec2-test.yamlarchivoHaga clic en Siguiente.
Configurar la pila:
Nombre de la pila:
AWS-DevOpsAgent-EC2-TestParámetros:
MyIP: dejar como predeterminado
0.0.0.0/0(puede asegurarlo más adelante si es necesario)
Haga clic en Siguiente.
Configura las opciones de pila:
Deje los valores predeterminados y haga clic en Siguiente
Revise y cree:
Marque Acepto que AWS CloudFormation podría crear recursos de IAM
Haga clic en Enviar
Espere a que finalice:
La creación de la pila tarda de 3 a 5 minutos
El estado cambiará de
CREATE_IN_PROGRESSaCREATE_COMPLETEImportante: ¡Su instancia EC2 ahora forma parte de una CloudFormation pila que AWS DevOpsAgent puede rastrear!
Opcional: acceso SSH seguro (solo si planea conectarse a la instancia)
Omite este paso si solo quieres ejecutar la prueba automática
Navegue hasta los grupos de seguridad de EC2:
En la AWS consola, vaya a EC2 → Grupos de seguridad
Buscar
AWS-DevOpsAgent-test-sg
Actualizar la regla SSH:
Seleccione el grupo de seguridad → pestaña Reglas de entrada → Editar reglas de entrada
Busque la regla SSH (puerto 22)
Cambia la fuente de
0.0.0.0/0a tu IP:[YOUR_IP]/32Obtenga su IP de https://whatismyipaddress.com
Haz clic en Guardar reglas
Paso 2: Espere a que se ejecute automáticamente la prueba
Ejecución automática de la prueba:
La prueba de stress de la CPU se iniciará automáticamente 5 minutos después del lanzamiento de la instancia
No es necesaria ninguna intervención manual: espere, la prueba se ejecuta completamente en segundo plano
Supervise la prueba:
La instancia inicia y prepara la prueba automáticamente
El script se ejecutará durante 5 minutos y generará un uso de CPU superior al 70%
CloudWatch la alarma debería activarse en un plazo total de 8 a 10 minutos (5 minutos de retraso + 3-5 minutos para la alarma)
Opcional: repetición manual (para pruebas adicionales):
Conéctese a su instancia: consola EC2 → → Connect
AWS-DevOpsAgent-Test-Instance→ Session ManagerVuelva a realizar la prueba de stress:
./cpu-stress-test.shPerfecto para probar AWS DevOpsAgent la respuesta varias veces
Opción de prueba B: prueba de tasa de error Lambda
Paso 1: Implementar la CloudFormation pila para la prueba Lambda
Navegue hasta CloudFormation:
En AWS la consola, vaya a CloudFormation
Haga clic en Crear pila → Con nuevos recursos (estándar)
Cargar plantilla:
Cree un nuevo archivo local llamado
AWS-DevOpsAgent-lambda-test.yamlCopia y pega esta CloudFormation plantilla en el archivo:
-
AWSTemplateFormatVersion: '2010-09-09' Description: 'AWS DevOpsAgent Lambda Error Test Stack' Resources: # IAM Role for Lambda function LambdaExecutionRole: Type: AWS::IAM::Role Properties: RoleName: AWS-DevOpsAgentLambdaTestRole AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: lambda.amazonaws.com Action: sts:AssumeRole ManagedPolicyArns: - arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole Tags: - Key: Name Value: AWS-DevOpsAgent-Lambda-Test-Role - Key: Purpose Value: AWS-DevOpsAgent-Testing # Lambda function that generates errors TestLambdaFunction: Type: AWS::Lambda::Function Properties: FunctionName: AWS-DevOpsAgent-test-lambda Runtime: python3.12 Handler: index.lambda_handler Role: !GetAtt LambdaExecutionRole.Arn Code: ZipFile: | import json import random import time from datetime import datetime def lambda_handler(event, context): print(f"AWS DevOpsAgent Test Lambda - {datetime.now()}") print(f"Event: {json.dumps(event)}") # Intentionally generate errors for testing error_scenarios = [ "Simulated database connection timeout", "Test API rate limit exceeded", "Intentional validation error for AWS DevOpsAgent testing" ] # Always throw an error for testing purposes error_message = random.choice(error_scenarios) print(f"Generating test error: {error_message}") # This will create a Lambda error that CloudWatch will detect raise Exception(f"AWS DevOpsAgent Test Error: {error_message}") Description: AWS DevOpsAgent beta test function - intentionally generates errors Timeout: 30 Tags: - Key: Name Value: AWS-DevOpsAgent-Test-Lambda - Key: Purpose Value: AWS-DevOpsAgent-Testing # CloudWatch Alarm for Lambda errors LambdaErrorAlarm: Type: AWS::CloudWatch::Alarm Properties: AlarmName: AWS-DevOpsAgent-Lambda-Error-Test AlarmDescription: AWS-DevOpsAgent beta test - Lambda error rate alarm MetricName: Errors Namespace: AWS/Lambda Statistic: Sum Period: 60 EvaluationPeriods: 1 Threshold: 0 ComparisonOperator: GreaterThanThreshold Dimensions: - Name: FunctionName Value: !Ref TestLambdaFunction TreatMissingData: notBreaching Outputs: LambdaFunctionName: Description: Lambda Function Name for testing Value: !Ref TestLambdaFunction LambdaFunctionArn: Description: Lambda Function ARN Value: !GetAtt TestLambdaFunction.Arn AlarmName: Description: CloudWatch Alarm Name Value: !Ref LambdaErrorAlarm TestCommand: Description: AWS CLI command to test the function Value: !Sub 'aws lambda invoke --function-name ${TestLambdaFunction} --payload "{\"test\":\"AWS DevOpsAgent validation\"}" response.json'
-
En la CloudFormation consola, selecciona Cargar un archivo de plantilla
Haz clic en Elegir archivo
Seleccione el
AWS-DevOpsAgent-lambda-test.yamlarchivoHaga clic en Siguiente.
Configurar la pila:
Nombre de la pila:
AWS-DevOpsAgent-Lambda-TestHaga clic en Siguiente.
Configura las opciones de pila:
Deje los valores predeterminados, haga clic en Siguiente
Revise y cree:
Marque Acepto que AWS CloudFormation podría crear recursos de IAM
Haga clic en Enviar
Espere a que finalice:
La creación de la pila tarda de 2 a 3 minutos
El estado cambiará a
CREATE_COMPLETE
Paso 2: Activar errores Lambda
Navegue a la consola Lambda:
Ir a la AWS consola Lambda
Encuentre su función
AWS-DevOpsAgent-test-lambda
Pruebe la función:
Haga clic en la pestaña Probar
Haz clic en Crear nuevo evento
Nombre del evento:
AWS-DevOpsAgent-test-eventUsa esta carga útil de JSON:
-
{ "test": "AWS DevOpsAgent validation", "timestamp": "2024-01-01T00:00:00Z" }
-
Haz clic en Guardar
Generar errores:
Haga clic en el botón Probar 3 veces (espere 10 segundos entre cada una)
Cada prueba generará un error intencionado
CloudWatch la alarma debería activarse en 2-3 minutos
AWS DevOpsAgentahora debería poder detectar la alarma con una investigación en la aplicación Operator que configurarás a continuación.
Valide la detección AWS DevOps del agente
Paso 1: CloudWatch Alarmas de control de cordura (opcionales)
Este paso sirve para garantizar que las pruebas anteriores estén ahora en estado de alarma.
Para la prueba EC2:
En la CloudWatch consola, vaya a Alarmas
Espere de 3 a 5 minutos después de comenzar la prueba de stress
La alarma debería mostrarse en estado de alarma
Si sigue «bien»: espera otros 2 o 3 minutos (CloudWatch las métricas pueden retrasarse)
Para la prueba Lambda:
Compruebe la alarma
AWS-DevOpsAgent-Lambda-Error-TestDebería mostrar la alarma entre 2 y 3 minutos después de ejecutar las pruebas
Paso 2: Iniciar una investigación sobre un AWS DevOps agente
Abre tu AWS DevOps agente AgentSpace
Haz clic en Acceso de administrador. Esto abrirá la aplicación web DevOps Agent Space en una ventana nueva
Haga clic en el botón Iniciar investigación en la parte derecha de la pantalla
Complete el siguiente formulario:
Detalles de la investigación: describe la investigación que te gustaría llevar a cabo. Incluye todos los detalles que puedas sobre los objetivos de la investigación, las áreas a explorar o la información relevante.
Punto de partida de la investigación: describe la información con la que quieres iniciar la investigación. Puedes mencionar una alarma, una métrica, un fragmento de registro o cualquier otra cosa para que el DevOps agente tenga un punto de partida desde el que trabajar. En este caso, proporciona un resumen de las alarmas que acabas de crear.
Fecha y hora del incidente (se prefiere la norma ISO 8601) ::MMZ YYYY-MM-DDTHH
Ponle un nombre a tu investigación: ejemplo:
Oncall_investigation_1:2025-10-27AWS ID de cuenta del incidente
Región donde ocurrió el incidente
Prioridad: AWS DevOpsAgent permite realizar dos investigaciones simultáneas. La prioridad le permite definir el orden de ejecución de sus investigaciones.
Haga clic en Investigar para iniciar la investigación.
Haz clic en la investigación que aparece en el panel de control. Accederás a la pantalla de detalles de la investigación, donde podrás ver las medidas detalladas que está tomando el DevOps agente.
Resultados esperados
Resultados de la prueba EC2:
Detecta la alarma de la CPU EC2
Identifica la causa raíz: «carga de trabajo de pruebas de stress de la CPU»
Muestra la cronología: Prueba de esfuerzo → Pico de CPU → Alarma
Proporciona recomendaciones para la supervisión y el escalado
Resultados de la prueba Lambda:
Detecta un pico en la tasa de errores de Lambda
Identifica la causa principal: «Excepciones de prueba intencionales»
Muestra la cronología: Invocaciones de funciones → Errores → Alarma
Proporciona recomendaciones para el manejo y monitoreo de errores
Instrucciones de limpieza
Prueba de limpieza A (prueba EC2)
Limpieza automática
La instancia finalizará automáticamente después de 2 horas (integrada en la CloudFormation plantilla)
Limpieza manual (inmediata)
Eliminar CloudFormation pila:
Ve a la CloudFormation consola
Selecciona una
AWS-DevOpsAgent-EC2-TestpilaHaz clic en Eliminar
Confirme la eliminación
Esto eliminará automáticamente todos los recursos: instancia EC2, grupo de seguridad, key pair y alarma CloudWatch
Prueba de limpieza B (prueba Lambda)
Eliminar pila CloudFormation :
Ve a la CloudFormation consola
Selecciona una
AWS-DevOpsAgent-Lambda-TestpilaHaz clic en Eliminar
Confirme la eliminación
Esto eliminará automáticamente todos los recursos: función Lambda, función de IAM y alarma CloudWatch
Resolución de problemas
Problemas comunes
«No se puede conectar a la instancia EC2»
Compruebe el grupo de seguridad: asegúrese de que SSH (puerto 22) esté abierto a su IP
Compruebe los permisos clave: ejecute
chmod 400 AWS-DevOpsAgent-test-key.pemVerificar la IP pública: la instancia debe tener una IP pública asignada
Espere una instancia: asegúrese de que la instancia esté en estado «En ejecución»
«La alarma no se activa»
Espere a que aparezcan las métricas: CloudWatch las métricas pueden tardar entre 2 y 5 minutos en aparecer
Comprueba la carga de la CPU: usa SSH a la instancia y ejecútala
toppara verificar que la CPU sea superior al 70%Verifica la prueba de esfuerzo:
ps aux | grep yesejecútala para ver si los procesos de carga se están ejecutandoEspera prolongada: a veces se tarda entre 7 y 8 minutos en activarse la primera alarma
Validación de prueba
La prueba de su AWS DevOp agente se realiza correctamente cuando:
Validación técnica
Precisión de la investigación: los resultados de la prueba EC2 deberían indicar correctamente que la alarma se activó debido a la carga de la CPU. El resultado de la prueba Lambda debería indicar que se trató de un fallo intencionado.
Precisión del cronograma: se muestra la secuencia correcta de eventos
Calidad de la recomendación: se proporcionan sugerencias prácticas