Search:

TestGenie AWS Well Architected Case Study

testgenie-casestudy

TestGenie is a platform that can run two different types of tests, behavioral and load testing. Behavioral testing, TestGenie supports tools that aim to run behavioral testing using technologies such as Cucumber, Selenium, Puppeteer that we can add later. It also aims to analyze the results of the tests and show them to the user in graphics and raw form. Load testing, only supports Gatling for now. Its purpose is to send a high number of requests per second to systems specified by the user. In this way, it allows the user to run a load test and observe how their system works under load. According to the results of the tests, it can create alarm mechanisms and aims to provide the user with information about the result of the test with graphics.

Problem

AWS Well Architected projects tend to have extensive scope and various domains of task to be executed. The most important ones emerge from cost effective infrastructure with higher performance, security,  networking efficiency, and at the same time, wanting to make the most out of available AWS services.

The AWS Organization contains Shared* accounts for centralized Logging, Security and Networking. This architecture supports adding arbitrary numbers of Workload Accounts because they’d only have to run the applications.

Client: TestGenie

Project type: AWS Well Architected

Website: TestGenie

Solution

Automated capability to Load and Behavioral testing workloads

TestGenie intends to serve for efficient load testing, behavioral testing and log management. For each new customer, new Accounts must be created based on their production infrastructure/environment. As Kloia, we suggested an IaC approach with Terraform for this case. The AWS resources that must be produced for each client have been specified as a Terraform Module and version controlled in their respective Terraform Cloud Private Registry.

Untitled Diagram.drawio

 

Multi Cluster Management 

When Amazon EKS is used, its user-friendliness is combined with AWS's capabilities, reliability, and performance. Each of the workload accounts has an EKS cluster, and a centralized management for them was required. 

 

Cost Optimization - Running workloads at a lower cost.

For non-critical tasks, it is advantageous to use EC2 Spot instances to optimize costs. We designated environments for staging and development as non-critical workloads. After a few months of development and staging, EC2 expenditures were reduced by about 60 percent compared to a standard production account.

 

In-house Serverless CI/CD Pipeline

The search for a suitable CI/CD tool was in vain, so we created a CI/CD Pipeline with using several AWS services such as SQS, Fargate, DynamoDB. 

This custom CI/CD Pipeline supports rolling updates on live hosts and it also creates EC2 Images to use with Auto Scaling Groups at the same time. 

image-Oct-25-2022-03-00-30-0557-PM

 

Centralized Log Management

We have created an AWS Log Account for centralized logging. 

  • We have created log export logic for the managed services and CI/CD pipeline components. It exports logs to an S3 log bucket in the Log Account. These logs are also accessible in the Cloudwatch logs. 

Results

TestGenie's AWS WAF results can be conveyed as:

  • Automated creation of new Workload Accounts by creating a new Terraform variables file
  • Networking, Security and Logging mechanisms
  • Application Auto Scaling
  • In-house Serverless CICD Pipeline 
  • Easier security audits with shared logging and networking account
  • Cost optimization with Spot Instance usage on non-prod environments

Some of our results:
  • 15 Minutes
    Rolling Updates
  • 30%
    Cost Optimization at Compute Layer
img-1_03.jpg

Results

But I must explain to you how all this mistaken.

Idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness.

Some of our results:
  • 400%
    Samsa was a travelling
  • 150%
    llustrated magazine

Contact