TruckPro Application Modernization utilizing Kubernetes on Amazon EKS

Jason Kim / January 28, 2022

The Challenge

TruckPro operates a national network of heavy-duty truck and trailer parts stores and service centers as well as online parts ordering to wholesale customers. TruckPro’s aging .Net application allowed their wholesale customers to interface with the TruckPro part catalog, place orders, and process billing and credit. The application is essential to Truckpro’s business and it was becoming less and less reliable while costing more and more. The monolithic application codebase also made it difficult and costly for TruckPro to add new customer features and internal capabilities.

The Solution

The recommended solution was to re-architect the monolith to microservices and port the application to Linux .Net core. While the TruckPro software engineering team focused on application architecture and writing micro-services, the Blue Sentry team focused on deploying an enterprise-grade Kubernetes cluster, integrating the microservices into the cluster, fine-tuning the cluster for cost and performance, and building a CI/CD pipeline for TruckPro’s engineering team to quickly and efficiently deploy new changes.

Blue Sentry deployed the Kubernetes cluster using Elastic Kubernetes Service (EKS) on AWS. Once the infrastructure and pipelines were implemented and the Truckpro had the application up and successfully running in production, The Blue Sentry team began tuning the clusters.

The Blue Sentry team optimized the resource quotas of the microservices Kubernetes deployments by defining proper requests and limits. This reduced the amount of EC2 instances required to run their application by half without any performance impact. In addition, the extreme redundancy of the clusters allowed for the use of Spot Instances on the DEV and QA autoscaling groups, which represents around 40% of the workload of the clusters, further reducing costs.