Migration from Heroku to AWS EKS for Software Development Company

Executive Summary

Shaparency is a software company that develops unique solutions for digital board management, which help companies save time and money and be more effective in using their collaboration tools.

For cost optimizations for the cloud services and to obtain more benefits, they decided to move Ruby on Rails applications from Heroku to AWS EKS using such AWS services as RDS, CloudFront, and others. Also, they are providing white-label solutions to their big clients, therefore they required additional tenants in AWS.

Customer Challenge

When the traffic scaled up, the Client faced problems, limitations, and cost issues with Heroku and decided to move the RoR application with the backend sidekiq workers from Heroku to AWS EKS.

Since Shaparency has come to a growing phase and exceeded the startup phase, it needed a solution to meet high computational demands. If the challenge were not addressed, Shaparency would face an essential price hike as Heroku proves to be expensive for large and high-traffic apps. Moreover, they would come up with limited types of instances offered as well as in general, limits on the ability to customize (due to Ruby).

Likewise, they could meet higher inbound and outbound latency and decrease communication quality as the former solution supports fewer Geographical Regions. It is highly important for Shaparency as they are spread geographically and have a presence in South America, Europe, Asia, and Australia.

Advascale Solution

Shaparency reached out to Advascale for this infrastructure migration project with a focus on Scalability and Cost Reduction. Advascale had carried out a top-notch migration and anticipated all required environments, so that Shaparency is capable to transform the governance industry and perform cost-efficiently.

The Advascale Team migrated the entire infrastructure from previous solution (Heroku) to AWS EKS. This improved scalability, optimized costs, and ensured high availability across multiple Availability Zones.

“Advascale was an excellent partner helping us with deep technical expertise, great involvement, and a positive attitude that allowed us to finish the project achieving great cost reduction, higher scalability, and improved efficiency of our platform. ”

Hannah Burgess, CPO, Shaparency

The solution offered by Advascale also incorporates deploying application environments across two VPCs. One for production, one for staging + development application stack. VPC was created using Terraform and contains two Availability Zones, each of them has three subnets.

The Ruby applications was deployed in the EKS cluster. The admin panel is static and was deployed to S3 with CloudFront.HA and Multi-AZ support was enabled just for the production environment.

Results and Benefits

Advascale successfully migrated the company’s system to the new infrastructure, ensuring scalability, optimized costs, and ensure high availability across multiple Availability Zones.

Advascale needed to calculate the AWS cost of one tenant (stage/prod) and the implementation part cost for proofing of values and cost efficiency, which the Client can obtain with this transition. Other essential metrics were the performance of the new cloud infrastructure and the opportunity to manage its web app environment efficiently.

Advascale calculated with AWS Pricing Calculator and found several tips on decreasing costs compared with Heroku prices. For example, some services like CloudFront have a Free Tier - the first 1TB per month of data transfer out to the internet, and 10 million HTTP/HTTPS requests from all Edge locations will be free (excludes CloudFront China). Estimates for production and stage were about 388,48 $/Mo without cost-saving and about 332,03 $/Mo with the cost-saving option “1 year no upfront”.

With Advascale’s solution, RoR stack does not have any limitation in scalability during load activity peaks. Advascale also adopted the advantageous cloud cost model ensured by EKS scaling. The Client also achieved lower network latency.