Book Image

Bootstrapping Service Mesh Implementations with Istio

By : Anand Rai
4 (1)
Book Image

Bootstrapping Service Mesh Implementations with Istio

4 (1)
By: Anand Rai

Overview of this book

Istio is a game-changer in managing connectivity and operational efficiency of microservices, but implementing and using it in applications can be challenging. This book will help you overcome these challenges and gain insights into Istio's features and functionality layer by layer with the help of easy-to-follow examples. It will let you focus on implementing and deploying Istio on the cloud and in production environments instead of dealing with the complexity of demo apps.  You'll learn the installation, architecture, and components of Istio Service Mesh, perform multi-cluster installation, and integrate legacy workloads deployed on virtual machines. As you advance, you'll understand how to secure microservices from threats, perform multi-cluster deployments on Kubernetes, use load balancing, monitor application traffic, implement service discovery and management, and much more. You’ll also explore other Service Mesh technologies such as Linkerd, Consul, Kuma, and Gloo Mesh. In addition to observing and operating Istio using Kiali, Prometheus, Grafana and Jaeger, you'll perform zero-trust security and reliable communication between distributed applications. After reading this book, you'll be equipped with the practical knowledge and skills needed to use and operate Istio effectively.
Table of Contents (19 chapters)
1
Part 1: The Fundamentals
5
Part 2: Istio in Practice
10
Part 3: Scaling, Extending,and Optimizing

Establishing mutual trust in multi-cluster deployments

When setting up multi-cluster deployments, we must also establish trust between the clusters. The Istio architecture is based on the zero-trust model, where the network is assumed to be hostile and there is no implicit trust for services. Thus, Istio authenticates each service communication to establish the authenticity of the workload. Every workload in the cluster is assigned an identity and service-to-service communication is performed over mTLS by sidecars. Also, all communication between the sidecar and control plane happens over mTLS. In the previous chapters, we used an Istio CA with a self-signed root certificate. When setting up multi-clusters, we must ensure that the workload is assigned identities that can be understood and trusted by all other services in the mesh. Istio does this by distributing a CA bundle to all workloads, which contains a chain of certificates that can then be used by sidecars to identify the sidecar...