Increase confidence in code deployment with Canary and mirroring live traffic!
As your application grows, the effort required to test and deploy it also grows exponentially. There is an entire layer of errors that just can’t be found via automated and manual testing: concurrency, server environment specific bugs, bugs that occur from requests called in a particular order, and much more. Humans, browsers, and robots all do strange things that affect the frequency of requests, URL weighting, size of headers, etc.
The idea is to have safe, reliable and stress free release with use of Canary and mirroring of production traffic
- Canary: Canary deployments are a popular technique for incrementally testing changes on real-world traffic - Kubernetes support multiple deployments strategies like rolling updates etc However, gradual rollouts of new feature version don’t come out of the box but can be achieved by adding ingress controller inside K8s and using weighted round robin scheme to route traffic between K8s services. During this session we will discuss about strategies and learning of Canary release implementations on Kubernetes.
- Traffic Mirroring: Use varieties of traffic generated in production, to check your new version of application before release. You should be able to record the traffic and replay it in a manner that is absolutely identical to the testing environment. Filter the traffic, limit the load of requests and then forward to multiple hosts would be key aspects in replay. At the end, you should see a comprehensive report that will really boost your and your client's confidence to upgrade the application successfully.
Outline/Structure of the Talk
- Introduction- About Canary Release
- Learning & strategies of achieving canary in K8s
- Introduction- Leverage production traffic for your new release
- Techniques to use traffic mirroring
- Live Demo
After listening to this talk, attendees will have a understanding of the following-
- Benefits of streamlining of release operation & Canary.
- Usage of Network traffic to test your new version of application and services.
- Different challenges in using the production traffic and how to overcome them.
Software engineers, DevOps engineers, Tech Leads and Managers
Prerequisites for Attendees
Basic knowledge about DevOps & networking