Managed Kubernetes Clusters on AWS for TUI Poland
TUI Poland Dystrybucja Sp. z o. o. needed a platform for their microservices-based applications.
In Oktawave we knew that TUI's developers were already familiar with containerization and running applications on Kubernetes clusters but they could not manage infrastructure and Kubernetes itself. That is why TUI Poland came to Oktawave with a request to implement the entire solution, that will be easily scalable, secure and cost-effective. The client also wanted to shift to Oktawave as much responsibility for maintenance as possible.
TUI Poland Dystrybucja Sp. z o. o. is a part of a TUI Group AG - one of the world's leading travel companies, listed on the London Stock Exchange and Deutsche Börse.
Looking for the right fit, AWS as a leader providing the most ways and services to fulfil the needs of TUI Poland cost-effectively and reliably.
Variety of AWS services in conjunction with flexible pricing models was a strong advantage in building made to measure solutions with elasticity and cost-effectiveness in mind.
Another important aspect was the maturity of AWS services along with the level of support that AWS offers.
Finally, deep inter-services integration offered by AWS makes building cloud solutions less time consuming and more reliable.
Our proposition was Elastic Kubernetes Service as the service to spin up a Kubernetes cluster on which microservices will run. Its integration with other services helped reduce the work necessary to develop such a solution.
Images used by containers are stored in Elastic Container Registry leveraging redundant and secure storage.
For scaling the cluster, EC2 autoscaling groups were configured. Such setup provided needed scalability based on metrics from CloudWatch which was also used for automatic application log ingestion.
All services used are integrated with Identity and Access Management to ensure defence in depth and principle of least privilege.
Applications running on the cluster are exposed using Elastic Load Balancer to further ensure scalability of the architecture.
The prepared solution met expectations by providing the following benefits
- Reduced unnecessary maintenance work
EKS is built to remove the work needed for managing a Kubernetes cluster. This allows developers to fully concentrate on developing applications.
- Automatic scaling
All services used for the solution are highly scalable, but most importantly they scale automatically. Not only does it help to handle the workload quickly but also without any manual action.
- Reduced upfront costs
Meeting the demand dynamically with autoscaling ensures appropriate resource usage which in combination with AWS's pay-as-you-go model cost reflect the used.
Using IAM, CloudWatch and CloudTrail makes auditing and securing resources easy and effective.
The above-mentioned factors helped to accelerate development and provided a variety of ways to tweak the solution along the way.