Appendix C. Istio Operations and Kubeflow
This appendix provides material around the basic functionality of Istio and how that relates to managing the service mesh for Kubeflow components. It is meant as background and reference information for the rest of the book, and Chapter 2 specifically.
Service Mesh Management with Istio
Modern infrastructure is often composed of many microservices where each microservice defines its own APIs, and the services interact with one another using these APIs in order to serve end-user requests.
The distributed microservices architecture is foundational to most modern applications. We create complex systems by combining multiple microservices where each microservice defines its own APIs. These separate services interact with each other via these APIs to serve end-user requests.
A service mesh is a network of microservices that make up applications and the interactions between the microservices. As a service mesh grows larger and more complex, it naturally becomes more difficult to manage and operate. Challenges in service mesh operations include:
- Load balancing
- Failure recovery
There are also more complex operations, such as:
- A/B testing
- Canary rollouts
- Rate limiting
- Access control
- End-to-end authentication
Istio is an open source service mesh that transparently layers onto existing distributed applications. Istio supports operations in the distributed microservice architectures that are progressively being adopted ...