The Challenge
Everblue’s training software resided in Rackspace, making it expensive per customer and difficult to scale for the growth they anticipated. The application was monolithic, making feature development a slow, and drawn-out process.
The Solution
Sela met with Everblue to evaluate their software platform, reviewing their business goals and the problems they were trying to solve. The evaluation resulted in the decision to modernize the customer's existing application using containers, serverless technologies, and cloud-native databases.
Multiple accounts were set up to host the new platform. An initial lift and shift from Rackspace to docker containers on AWS was performed, allowing for easier scaling of infrastructure.
A central logging account was created to host all the logs across the platform. OpenSearch and CloudWatch were used for observability and log monitoring. SNS (Simple Notification Service) used AWS Chatbot for reporting errors.
Cloud infrastructure was deployed and maintained as code using Terraform, the AWS Chalice CLI, or AWS CDK (Cloud Development Kit). Deployments were automated with GitHub Actions.
The application was modernized using containers, serverless technologies, and cloud-native databases. The application was orchestrated with a combination of ECS (Elastic Container Service) Fargate and Lambda functions.
Databases were modernized to RDS (Relational Database Service) Postgres and were moved via a dump and restore methodology when possible. Mission-critical databases were migrated with DMS (Database Migration Service).
The Results
The migration of Everblue’s workloads and automation of their build and deployment processes resulted in a higher velocity and more agile infrastructure and feature production. Everblue also realized cost savings due to right sizing of containerized applications and by leveraging the power of the AWS cloud to provision only the resources needed to deploy and maintain their platform. This migration demonstrated the significance of planning and comprehensive assessment because it's crucial to understand the architecture and requirements of both platforms prior to a migration. After a TCO was performed using the AWS pricing calculator to estimate the cost of running the customer’s application on AWS, the modernized environment proved to be a great cost savings with serverless chosen when possible.