Summary
In this chapter, we explored the topic of scaling out clusters in Kubernetes by using the Cluster Autoscaler and the Horizontal Pod Autoscaler. We then explored the topic of service meshes and set up a minimalistic Envoy service mesh in order to provide proxying and transparent network communications for complex microservice architectures.
Following this, we looked at how we could use the circuit breaker pattern to prevent a service from becoming overwhelmed by traffic. Then, we used connection thresholds to test that the circuit breaker worked, in conjunction with a simple load test technique, using Docker and Apache Bench. After this, we learned about progressively more sophisticated load testing techniques when using k6, including both record-and-playback and detailed hand-crafted load tests designed to mimic real user behavior.
This brings us to the end of our Running Containers in Production section of this book. We're going to move on and look at security next...