Use case
Seamless EKS Cluster Upgrade for Zero Downtime and Smooth Transitions
- Chirag Sharma
About the Customer
Virora provides an end-to-end guest management platform that streamlines hotel operations from room reservations to customer support. Virora allows hotels to effortlessly manage high tourist seasons across the globe, integrating with over 70 Property Management Systems (PMS) and Channel Management (CM) systems. With support for 13 languages, Virora helps hoteliers digitize processes, boost profitability, and enhance guest experiences through a modern, intuitive interface.
Customer Challenge
With the platform expanding to support a growing global customer base, upgrading the Amazon EKS (Elastic Kubernetes Service) cluster to the latest compatible version became essential to maintain security, performance, and compliance. The challenge was to execute the upgrade without any downtime, ensuring continuous operations for hotel management services. This required a detailed approach to upgrading the control plane, worker nodes, add-ons, and core services while minimizing any risk of disruption. Additionally, the solution needed to be cost-neutral, with no increase in infrastructure or operational costs.
Solution
IAMOPS was tasked with upgrading Virora’s EKS cluster while ensuring that no downtime occurred. The solution was designed to be comprehensive, covering all aspects of the upgrade process, including the control plane, worker nodes, add-ons, and core application services.
1) Upgrading Control Plane:
- The control plane version was upgraded using the AWS Console to the latest stable release. Pod Security Policies were checked and updated to ensure compliance with new Kubernetes versions (1.25 or later).
2) Add-on Updates:
- Key add-ons such as CoreDNS, VPC CNI, and Kube-Proxy were updated to their latest compatible versions. Used the AWS CLI and kubectl to manage the update of these add-ons and ensure they were correctly configured.
3) Node Group and Worker Node Rollout:
- A new node group was created with the latest worker node AMI, ensuring compatibility with the upgraded Kubernetes version.A rolling update strategy was used to gradually replace old nodes with new ones, ensuring minimal disruption to running workloads.
4) Karpenter Node Rollout:
- Karpenter was leveraged to manage auto-scaling and ensure pods were scheduled onto new nodes. Old nodes were marked as unscheduled (kubectl cordon), and application deployments were restarted to ensure smooth migration of workloads to new nodes.
Results & Benefits
- Zero Downtime: The entire EKS version upgrade process, including updates to control plane, add-ons, and worker nodes, was completed without any impact on application availability.
- Improved Security and Performance: The upgrade resolved older vulnerabilities, applied essential bug fixes, and leveraged new features from the latest Kubernetes release.
- Cost Neutral:The upgrade did not result in any increase in operational costs as no additional services or infrastructure were added during the process.
- Efficient Resource Management: The use of Pod Disruption Budgets and rolling node updates allowed for seamless transitions between old and new resources, maintaining optimal performance and availability throughout.
About IAMOPS
IAMOPS is a full DevOps suite company that supports technology companies to achieve intense production readiness.
Our mission is to ensure that our clients’ infrastructure and CI/CD pipelines are scalable, mitigate failure points, optimize performance, ensure uptime, and minimize costs.
Our DevOps suite includes DevOps Core, NOC 24/7, FinOps, QA Automation, and DevSecOps Services to accelerate overall exponential growth.
As an AWS Advanced Tier Partner and Reseller, we focus on two key pillars: Professionalism by adhering to best practices and utilizing advanced technologies, Customer Experience with responsiveness, availability, clear project management, and transparency to provide an exceptional experience for our clients.