View a markdown version of this page

Gambaran umum arsitektur - Pengujian Beban Terdistribusi di AWS

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Gambaran umum arsitektur

Diagram arsitektur

Menyebarkan solusi ini dengan parameter default menerapkan komponen berikut di akun AWS Anda.

Pengujian Beban Terdistribusi pada arsitektur AWS

Pengujian Beban Terdistribusi pada arsitektur AWS
catatan

Sumber CloudFormation daya AWS dibuat dari konstruksi AWS Cloud Development Kit (AWS CDK).

Alur proses tingkat tinggi untuk komponen solusi yang digunakan dengan CloudFormation template AWS adalah sebagai berikut:

  1. (CloudFront + Opsi penyebaran hosting S3) Pengguna Konsol mengakses konsol web melalui Amazon CloudFront, yang melayani aplikasi AWS Amplify yang dihosting di bucket Amazon Simple Storage Service (Amazon S3).

  2. (Opsi penyebaran hosting ALB + ECS Fargate) Pengguna Konsol mengakses konsol web melalui Application Load Balancer, yang merutekan lalu lintas ke aplikasi AWS Amplify yang berjalan di Amazon Elastic Container Service (Amazon ECS) di AWS Fargate di dalam Amazon Virtual Private Cloud (Amazon VPC).

  3. (Opsi penerapan tanpa kepala) Tidak ada front end publik yang digunakan. Solusinya menyediakan konsol web sebagai ZIP yang dapat diunduh di bucket Amazon S3 pribadi. Pengguna Konsol dapat mengakses konsol dari server web yang di-host sendiri.

  4. Selama konfigurasi awal, solusi membuat pengguna administrator default di kumpulan pengguna Amazon Cognito dan mengirimkan email pembuatan akun ke alamat email yang Anda berikan. Kumpulan pengguna Cognito mengelola akses pengguna ke konsol web, REST API, CLI, dan Server MCP.

  5. Amazon API Gateway memanggil layanan mikro AWS Lambda yang menyediakan logika bisnis untuk mengelola data pengujian dan menjalankan pengujian.

  6. Layanan mikro berinteraksi dengan Amazon S3, Amazon DynamoDB, dan Amazon EventBridge untuk menyimpan detail skenario pengujian dan mengelola jadwal pengujian. Saat Anda menjadwalkan pengujian untuk dijalankan di waktu mendatang atau pada interval berulang, layanan mikro membuat jadwal Pen EventBridge jadwal yang memanggil layanan mikro pada waktu yang dijadwalkan.

  7. Untuk menjalankan pengujian, layanan mikro memanggil AWS Step Functions, yang mengatur eksekusi pengujian.

  8. EventBridge aturan merutekan tugas Amazon ECS dan peristiwa kegagalan Fungsi Langkah ke fungsi Lambda pengendali kegagalan.

  9. Step Functions meluncurkan tugas Amazon Elastic Container Service (Amazon ECS) di AWS Fargate di setiap Wilayah AWS yang Anda pilih.

  10. Setiap tugas berjalan dalam Amazon Virtual Private Cloud (Amazon VPC) di Wilayah yang dipilih.

  11. Kontainer pengujian beban menggunakan gambar dasar Amazon Linux 2023, dan gambar yang digunakan tugas bergantung pada mode bentuk lalu lintas pengujian. Dalam mode Standar, gambar memiliki kerangka otomatisasi tes Taurus yang diinstal. Taurus mengeksekusi uji JMeter, k6, Locust, atau Simple HTTP Endpoint menggunakan parameter beban yang Anda tetapkan di konsol. Dalam mode Asli, gambar khusus untuk setiap kerangka kerja menjalankan kerangka kerja itu langsung terhadap skrip Anda, tanpa Taurus dan tanpa parameter beban dari solusi. Untuk detail tentang mode, lihat Mode bentuk lalu lintas. Untuk melihat bagaimana setiap kerangka pengujian disediakan, lihat Penyediaan kerangka kerja pengujian. Opsi ALB + ECS akan menggunakan wadah host web. Gambar kontainer dihosting oleh AWS di repositori publik Amazon Elastic Container Registry (Amazon ECR).

  12. Setiap tugas Fargate menulis hasil pengujian per wilayah ke Amazon S3 dan mengirimkan log ke Amazon. CloudWatch Ketika semua Wilayah selesai, layanan mikro menggabungkan hasil di DynamoDB.

  13. Jika Anda mengaktifkan opsi data langsung, fungsi Lambda menerima CloudWatch log dari tugas Fargate selama pengujian.

  14. Fungsi Lambda menerbitkan log ke topik di AWS IoT Core di Wilayah tempat tumpukan utama digunakan. Konsol web berlangganan topik untuk menampilkan metrik real-time saat pengujian berjalan.

  15. (Akses CLI opsional) Pengguna dapat menginstal antarmuka baris perintah DLT (CLI) secara lokal untuk berinteraksi dengan solusi dari terminal mereka. CLI mengotentikasi melalui Cognito dan memanggil REST API secara langsung, memungkinkan otomatisasi dan integrasi skrip. CI/CD

    catatan

    Langkah-langkah berikut menjelaskan integrasi MCP Server opsional untuk analisis pengujian AI-assisted beban. Komponen ini hanya digunakan jika Anda memilih opsi Server MCP selama penerapan solusi.

  16. Klien MCP (alat pengembangan AI) terhubung ke titik akhir Amazon Bedrock AgentCore Gateway untuk mengakses data solusi Pengujian Beban Terdistribusi melalui Protokol Konteks Model. AgentCore Gateway memvalidasi token otentikasi Amazon Cognito pengguna untuk memverifikasi akses resmi ke Server MCP.

  17. Setelah otentikasi berhasil, AgentCore Gateway meneruskan permintaan alat MCP ke fungsi DLT MCP Server Lambda.

  18. Fungsi Lambda memanggil DLT REST API yang ada untuk mengambil data pengujian beban yang diminta. Kemudian mengembalikan data terstruktur ke AgentCore Gateway, yang mengirimkannya kembali ke klien MCP untuk AI-assisted analisis dan wawasan.