Overview
The article discusses SafetyCulture's transition to using Kubernetes as their microservice orchestrator on Amazon EKS. It outlines their current use of AWS ECS, the challenges faced in migrating to Kubernetes, and plans for future blog posts detailing their implementation experiences.
What You'll Learn
1
How to migrate microservices to Kubernetes without impacting production workloads
2
Why using Amazon EKS simplifies Kubernetes management
3
How to leverage Helm for efficient CI/CD deployments
Key Questions Answered
What challenges does SafetyCulture face when migrating to Kubernetes?
SafetyCulture faces several challenges in migrating to Kubernetes, including how to transition without affecting production workloads, making early decisions for success such as logging and monitoring, and planning the architectural integration of existing VPCs with persistent data layers.
What microservices technologies does SafetyCulture currently use?
SafetyCulture currently utilizes a variety of microservices technologies including Node.js, Golang, Python, and Java, with approximately 300 containers running across 120+ microservices in production.
What benefits does EKS provide for SafetyCulture's Kubernetes journey?
Using Amazon EKS allows SafetyCulture to benefit from not having to deploy and maintain the Kubernetes control plane, which is particularly advantageous while they are still establishing usage patterns within their engineering team.
Key Statistics & Figures
Number of containers running in production
300
SafetyCulture operates approximately 300 containers across 120+ microservices.
Technologies & Tools
Some links below are affiliate links. We may earn a commission if you make a purchase.
Orchestration
Kubernetes
Used as the microservice orchestrator for SafetyCulture.
Cloud Service
Amazon Eks
Provides managed Kubernetes services to simplify deployment and management.
Orchestration
AWS Ecs
Currently used for running microservices before migrating to Kubernetes.
Packaging
Helm
Used within CI/CD pipelines to simplify deployments.
Key Actionable Insights
1Consider leveraging Amazon EKS to simplify your Kubernetes management and focus on developing microservices.By using EKS, teams can offload the complexity of managing the Kubernetes control plane, allowing them to concentrate on building and deploying applications more efficiently.
2Plan your migration to Kubernetes carefully to avoid disruptions to existing production workloads.This involves deciding on traffic migration strategies and ensuring that logging and monitoring systems are in place before making the switch.
3Utilize Helm within your CI/CD pipelines to streamline deployments.Helm can help reduce deployment times significantly, as demonstrated by SafetyCulture's experience of cutting deployment times to under 50 seconds.
Common Pitfalls
1
Failing to adequately plan the migration to Kubernetes can lead to significant disruptions in production.
This often happens when teams do not consider the impact on existing workloads or do not have a clear strategy for traffic migration.