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.
Información general de la arquitectura
Diagrama de arquitectura
Al implementar esta solución con los parámetros predeterminados, se implementan los siguientes componentes en su cuenta de AWS.
Pruebas de carga distribuidas en la arquitectura de AWS en AWS
nota
Los CloudFormation recursos de AWS se crean a partir de componentes del AWS Cloud Development Kit (AWS CDK).
El flujo de proceso de alto nivel para los componentes de la solución implementados con la CloudFormation plantilla de AWS es el siguiente:
-
Una API de comprobador de carga distribuida utiliza Amazon API Gateway
para invocar los microservicios de la solución (funciones de AWS Lambda). -
Los microservicios proporcionan la lógica empresarial necesaria para gestionar los datos de las pruebas y ejecutarlas.
-
Estos microservicios interactúan con Amazon Simple Storage Service
(Amazon S3), Amazon DynamoDB y AWS Step Functions para almacenar los detalles y los resultados del escenario de las pruebas y organizar la ejecución de las pruebas. -
Se implementa una topología de red Amazon Virtual Private Cloud
(Amazon VPC) que contiene los contenedores Amazon Elastic Container Service (Amazon ECS) de la solución que se ejecutan en AWS Fargate. -
Los contenedores utilizan una imagen base de Amazon Linux 2023
con el marco de pruebas de carga Taurus instalado. Taurus es un marco de automatización de pruebas de código abierto que admite K6 JMeter, Locust y otras herramientas de prueba. La imagen del contenedor es compatible con Open Container Initiative (OCI) y está alojada por AWS en un repositorio público de Amazon Elastic Container Registry (Amazon ECR). Para obtener más información, consulte Personalización de imágenes de contenedores. -
Se implementa una consola web con tecnología AWS Amplify
en un bucket de S3 configurado para el alojamiento web estático. -
Amazon CloudFront
proporciona un acceso público y seguro al contenido del bucket del sitio web de la solución. -
Durante la configuración inicial, la solución crea una función de administrador predeterminada (función de IAM) y envía una invitación de acceso a la dirección de correo electrónico de un usuario especificada por el cliente.
-
Un grupo de usuarios de Amazon Cognito
administra el acceso de los usuarios a la consola, a la API del comprobador de carga distribuido y al servidor MCP. -
Tras implementar esta solución, puede utilizar la consola web o APIs crear y ejecutar escenarios de prueba que definan una serie de tareas.
-
Los microservicios utilizan este escenario de prueba para ejecutar tareas de ECS en Fargate en las regiones especificadas.
-
Si habilita la opción de datos en tiempo real, la solución envía CloudWatch los registros de las tareas de Fargate a una función Lambda durante la prueba para cada región en la que se ejecute la prueba.
-
La función Lambda publica los datos en el tema correspondiente en AWS IoT Core
en la región en la que se implementó la pila principal. La consola web se suscribe al tema y muestra datos en tiempo real mientras se ejecuta la prueba. nota
Los siguientes pasos describen la integración opcional del servidor MCP para el análisis de las pruebas de carga asistido por IA. Este componente solo se implementa si selecciona la opción de servidor MCP durante la implementación de la solución.
-
Un cliente MCP (herramienta de desarrollo de IA) se conecta al punto final de AWS AgentCore Gateway
para acceder a los datos de la solución de pruebas de carga distribuidas a través del protocolo Model Context. AgentCore Gateway valida el token de autenticación de Cognito del usuario para garantizar el acceso autorizado al servidor MCP. -
Tras la autenticación correcta, AgentCore Gateway reenvía la solicitud de la herramienta MCP a la función Lambda del servidor MCP de DLT. La función Lambda devuelve los datos estructurados a AgentCore Gateway, que los envía de vuelta al cliente MCP para obtener análisis e información asistidos por IA.
-
La función Lambda procesa la solicitud y consulta los recursos de AWS correspondientes (tablas de DynamoDB, buckets de S3 o CloudWatch registros) para recuperar los datos de las pruebas de carga solicitados.