Software engineer in the cloud-native team at Hazelcast. Always curious and open-minded.
7+ years of experience building distributed systems in different domains, like a healthcare alarming system, networking debugging application, etc.
Speaker at JavaDay Lviv, JeeConf, Voxxed Days Minsk, and Devoxx Ukraine.
Building fault tolerant applications with Kubernetes and Istio
Briefly about the talk
“If anything can go wrong, it will!” says Murphy’s law. With Microservice architecture there is a lot of things that can go wrong. And the engineers are the ones who must make sure the application is ready to face these failures. Kubernetes and Istio can provide you some features to build a fault-tolerant application out the box. I will explain what are these features and will show them in practice.
- What is fault tolerance
- Kubernetes and Istio
What is fault tolerance
In this part of the talk, I will give a short introduction to what fault tolerance is why does it matter and why it’s essential when building microservices.
Kubernetes and Istio
Kubernetes gives a pack of fault tolerance features out of the box, such as load balancer, liveness and readiness probes, self-healing, scaling, etc. Istio extends it and gives a lot of new possibilities for dealing with failures, and even to test the application using chaos engineering. I will review the main features of Kubernetes and Istio for building and testing fault tolerant application.
The live demo is based on an application that doesn’t have any fault tolerance features implemented in the code. I will show how Kubernetes and Istio can contribute to its fault tolerance.