nClouds Client StoryTurbo Systems

How nClouds helped Turbo Systems enhance scalability and availability and reduce AWS costs for field services app.

About Turbo Systems

Turbo Systems’ no-code plug-and-play platform is for business process and IT stakeholders at field service businesses. Users can rapidly create field service apps in a safe and IT-compliant environment with a ready-to-use solution library.

The platform provides highly configurable modules to enable every aspect of the field service experience: calendars, maps, inventory, work orders, time cards, parts & returns, asset tracking, checklists, dynamic workflows, on-my-way, and much more. To learn more, go to https://turbosystems.com/

Turbo Systems Logo
Industry

Software-as-a-Service (SaaS) and on-prem field service software

Location

Pleasanton, CA

Challenge

Enhance scalability and availability, improve the speed of communications between microservices, and reduce costs.

Featured Services

DevOps Services – Infrastructure Build-Out and Automation, Containers, Microservices

Download case study

Benefits Summary

icon

Enhanced scalability and availability

icon

Faster communication between microservices

icon

Reduced costs

Moving from ECS to EKS and VPC deployment is a major milestone for Turbo. The nClouds team came in at the right time and helped us achieve our goals. We appreciate all the great work that went into this project.”
Rangarajan Vaithyalingam,

Platform Architect, Turbo Systems

Challenge

Challenge: Enhance scalability and availability, improve the speed of communication between microservices, and reduce costs.

Turbo Systems wanted to migrate their existing compute workload on Amazon Elastic Container Service (Amazon ECS) to Amazon Elastic Container Service for Kubernetes (Amazon EKS). They wanted a uniform Kubernetes-based platform to enhance their ability to distribute and scale their field service software solution, improve the speed of communication between microservices, and save costs.

Why AWS and nClouds

Turbo Systems asked nClouds to help them create a new Amazon EKS platform for their application stack. The project included adding Amazon CloudWatch monitoring to the workload, and using HashiCorp Terraform to capture the configuration of the new infrastructure as code.

nClouds, a Premier Consulting Partner in the AWS Partner Network (APN), applied its expertise in building and managing infrastructure modernization projects. nClouds helped Turbo Systems build out their application cloud and operations cloud core infrastructure for a new Amazon EKS platform.


Turbo Systems leveraged several Amazon Web Services:

  • Amazon CloudWatch - Monitors applications, responds to systemwide performance changes, optimizes resource utilization, and presents a unified view of operational health.
  • Amazon Elastic Compute Cloud (Amazon EC2) - A web service that delivers secure, resizable compute capacity in the cloud.
  • Amazon Elastic Container Registry (Amazon ECR) - A fully managed Docker container registry integrated with Amazon ECS that makes it easy for Turbo Systems to store, manage, and deploy Docker container images.
  • Amazon Elastic Container Service for Kubernetes (Amazon EKS) - Makes it easy to deploy, manage, and scale containerized applications using Kubernetes on AWS.
  • Amazon Relational Database Service (Amazon RDS) - Enables Turbo Systems to easily set up, operate, and scale a relational database in the cloud.
  • Amazon Virtual Private Cloud (Amazon VPC) - Enables Turbo Systems to provision a logically isolated section of the AWS Cloud where they can launch AWS resources in a virtual network that they define.
  • AWS Application Load Balancer (AWS ALB) - To support content-based routing and applications that run in containers.
  • AWS App Mesh - A service mesh that provides application-level networking to better run applications at scale. It enables Turbo Systems’ services to communicate with each other across multiple types of compute infrastructure, providing end-to-end visibility and ensuring high-availability for Turbo Systems’ applications.

Turbo Systems’ solution stack also included additional, essential third-party tools:

  • HashiCorp Terraform - An open source tool that codifies APIs into declarative configuration files to enable Turbo Systems to safely and predictably create, change, and improve infrastructure.
  • Helm - charts to templatize all Kubernetes application deployments.

nClouds' Solution Architecture for Turbo Systems:

Turbo Systems engaged with nClouds to help them migrate their application stack from Amazon ECS to Amazon EKS, and to create an Amazon VPC.

Turbo Systems’ cloud infrastructure was comprised of an application cloud and an operations cloud. The application cloud was a single-tenant setup with 12 services (four admin, one client, seven web modules) running on an Amazon ECS cluster, with data stored in Amazon RDS. The setup was replicated for nine clients. The operations cloud was running three common services on a single Amazon ECS cluster.

nClouds began by reviewing containers and fixing any gaps in configuration in both the application and operations clouds. Next, Terraform core infrastructure buildout was performed for Amazon EKS, and AWS services were migrated to Amazon EKS platform version eks.1.14 in both clouds.

nClouds implemented Amazon CloudWatch for Amazon EKS container monitoring of all services. Amazon CloudWatch’s automated dashboards summarize the performance and health of Turbo Systems’ Amazon EKS and Kubernetes clusters by pod, node, namespace, task, container, and service. The dashboards reveal insights on key metrics such as CPU utilization, memory utilization over pod limits, container restarts, pod network insights, etc.

The new infrastructure includes AWS App Mesh in each private subnet for Turbo Systems’ applications running on Amazon EKS. AWS App Mesh supports services that use service discovery naming for their components. Its application-level networking improves the speed of communication between microservices that are mesh-enabled and provides end-to-end visibility.

There are three private subnets in the Amazon VPC — one in Availability Zone A and the other two in Availability Zones B and C. AWS Auto Scaling groups are used to spawn Amazon EC2 instances in these zones automatically depending on the services and resources needed for them. The pods running the application stack connect to the Amazon RDS database.

The Amazon VPC connects to the Internet through an attached Internet gateway. A network address translation (NAT) gateway enables instances in the private subnets to connect to the Internet or other AWS services, but prevents the Internet from initiating a connection with those instances. Application Load Balancers distribute incoming application traffic to the respective pod in the Availability Zones via App Mesh proxy, to increase the availability of Turbo Systems’ applications.

High-level architecture diagram:

Solution Architecture

The Benefits

Teaming with nClouds, Turbo Systems now has a uniform Kubernetes-based platform for their application stack. The project has yielded numerous benefits:

icon

Enhanced scalability and availability

Amazon EKS automatically manages scalable and high-availability control plane nodes that run across multiple availability zones, eliminating a single point of failure. Kubernetes control plane nodes perform tasks such as starting and stopping containers and storing cluster data.

icon

Faster communication between microservices

AWS App Mesh enables Turbo Systems to have more flexible, more reliable, and faster communication between microservices.

icon

Reduced costs

AWS App Mesh not only provides flexible, reliable, and faster communication between microservices, it also helps to reduce cost by avoiding unnecessary AWS ALBs that were previously used for inter-service communication in ECS. And, cost savings are also achieved in the new infrastructure by having shared resources for Dev and Staging residing in the same Kubernetes cluster, plus a shared database server and shared network resources.

Contact Us Now

You can also email us directly at sales@nclouds.com for your inquiries or use the form below