Step-by-Step Guide to Deploying Istio on a Kubernetes Cluster
This tutorial walks through checking a Kubernetes cluster, creating a namespace with Istio sidecar injection, deploying the Bookinfo sample application, applying Istio gateway resources, and verifying services and endpoints using kubectl commands.
First, verify the health of the Kubernetes cluster: kubectl get nodes Typical output shows the master and worker nodes in a Ready state, for example:
master Ready control-plane,master 66d v1.20.0 node1 Ready <none> 66d v1.20.0 node2 Ready <none> 66d v1.20.0Next, create a dedicated namespace for the Bookinfo demo and enable automatic Istio sidecar injection:
kubectl create ns bookinfo kubectl label namespace bookinfo istio-injection=enableAfter the namespace is ready, navigate to the Istio installation directory and inspect the sample files:
cd /usr/local/istio/ llThe samples/bookinfo directory contains the manifest files needed for deployment.
Enter the sample directory and list its contents:
cd samples/bookinfo/ llKey files include bookinfo.yaml, various service and deployment manifests, and a cleanup.sh script.
Deploy the Bookinfo application by applying the main manifest: kubectl apply -f bookinfo.yaml -n bookinfo The command creates services, service accounts, and deployments for details, ratings, reviews, and the product page, confirming each creation with messages such as:
service/details created deployment.apps/details-v1 created... (similar messages for other components) ...
After deployment, verify the pods in the bookinfo namespace: kubectl get pod -n bookinfo Then, create the Istio Ingress gateway for the application:
kubectl apply -f networking/bookinfo-gateway.yaml -n bookinfoThis creates the gateway and virtual service resources:
gateway.networking.istio.io/bookinfo-gateway created virtualservice.networking.istio.io/bookinfo createdFinally, check the service endpoints to confirm that each microservice is reachable: kubectl get svc -n bookinfo Typical output lists the endpoints for details, productpage, ratings, and reviews with their cluster IPs and ports.
These steps complete the deployment of Istio on a Kubernetes cluster and expose the Bookinfo sample through an Ingress gateway.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Practical DevOps Architecture
Hands‑on DevOps operations using Docker, K8s, Jenkins, and Ansible—empowering ops professionals to grow together through sharing, discussion, knowledge consolidation, and continuous improvement.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
