Case Study

Amazon EKS Implementation for Software Company

Download the Case Study
Industry 

Software Development

Expertise 

Amazon EKS, Amazon API Gateway, Network Load Balancer, Application Load Balancer, AWS Lambda, AWS CloudTrail, Amazon CloudWatch.

Offerings/solutions 

Robust Amazon EKS Infrastructure with eksctl Cluster Autoscaler RBAC ELK Prometheus and API Gateway

About the Client

The client was started in 2014 by recruitment and staffing industry veterans Alok Gupta and Shalini Gupta. The company has rapidly grown over the past few years, building a highly successful business with intelligence-driven technology, automation, and analytics. The client helps companies manage their human capital better through several services, including hiring, recruitment, onboarding, talent management, and employee engagement. 

Highlights

Automatic Scaling

Amazon EKS Cluster, Cluster Autoscaler, HPA

Efficient Log Management

ELK, Fluent Bit agents

In-Depth Monitoring

Prometheus, Grafana

The Challenge

The client was facing multiple challenges with its current infrastructure. Its microservices application hosted on Amazon EKS was resulting in high monthly costs. Key concerns were managing varying headers and ensuring efficient function performance to prevent latency. Error handling and logging were critical for detecting issues during header parsing and augmentation. As the user base expanded, the system encountered substantial scalability hurdles. Moreover, the absence of monitoring and logging tools led to limited insight into infrastructure and application performance.

Solutions

• Eksctl was used to launch clusters across node-groups of different environments by applying eksctl config files (in YAML format) that define the desired cluster configuration, including the number and size of nodes in each group.
• Cluster Autoscaler was set up in Amazon EKS clusters to automatically adjust the number of nodes in a cluster based on resource requirements.
• Horizontal Pod Autoscaler (HPA) is configured in Amazon EKS clusters to scale pods based on metrics such as CPU or memory utilization. This ensures that the application can automatically adjust the number of pods to match the current demand, providing optimal performance and resource management.
• To implement RBAC for separating access of developers, testers, and other user groups, define roles and cluster roles with appropriate permissions, and bind them to the respective users or groups. Create Kubernetes users or groups as needed, and thoroughly test and verify RBAC configurations to ensure proper access separation by assigning specific permissions such as “get”, “list”, and “watch” to the developers.
• The node affinity scheduling strategy has been implemented to optimize resource usage and improve performance, to ensure that pods are placed on suitable nodes based on specific conditions such as labels or availability zone.
• ELK is a logging stack that collects, processes, and visualizes logs from applications and infrastructure. This provides comprehensive insights into system behavior and troubleshooting capabilities.
• Fluent Bit is implemented in EKS clusters to ship logs to the ELK stack. Fluent Bit collects and forwards logs from the pods running in the EKS cluster to Elasticsearch for storage and processing, enabling efficient log management and analysis.
• Prometheus with Grafana is in place for node level and pod level metrices running as deamonset providing insights on current health of our deployed applications and infrastructure
• Implement Blue-Green deployment strategy using Argo Rollouts for Kubernetes based applications, ensuring zero-downtime deployments and rollback capabilities

The Results

Amazon EKS with managed node groups, Cluster Autoscaler, and HPA scales automatically, while Nginx Ingress handles endpoints, API Gateway and NLB ensure secure communication, AWS Lambda improves requests, and ELK, Fluent Bit, Prometheus, and Grafana manage logging and monitoring.

Download the Case Study

AWS Partner – AWS DevOps Services Competency

Pioneering AWS DevOps Services by being an AWS Partner – AWS DevOps Service Competency.

Learn more

An authorized partner for all major cloud providers

A cloud agnostic organization with the rare distinction of being an authorized partner for AWS, Microsoft, Google and VMware.

Learn more

A house of strong pool of certified consulting experts

150+ cloud certified experts in AWS, Azure, GCP, VMware, etc.; delivered 200+ projects for top 100 fortune 500 companies.

Learn more

Get The Most Out Of Us

Our support doesn't end here. We have monthly newsletters, study guides, practice questions, and more to assist you in upgrading your cloud career. Subscribe to get them all!