Install Istio to Docker Desktop (WSL 2)
Istio is an open-source service mesh. The documentation for installing it on windows is a bit vague, and the website only provides documentation for nix-based systems.
Install Istio
Download the istioctl.exe
executable from the official istio releases page and extract then place it in a folder of your choice. Next will be adding it to your environment variable.
Adding the environment variable will be straight-forward, add the directory location of the istioctl to PATH
.
Install the istio namespace and services in kubernetes.
istioctl install --set profile=default -y
Also set istio to automatically inject Envoy sidecar proxies when deploying applications and services to default namespace.
kubectl label namespace default istio-injection=enabled
Troubleshoot
Determine if Kubernetes cluster is running in an environment that supports external load balancer.
kubectl get svc istio-ingressgateway -n istio-system
Check if there are any problems presented in analyze
command.
istioctl analyze
Also, check the endpoint if its empty or returning any headers and data.
curl -H curl -s -I -HHost:keycloak.7f000101.nip.io http://127.0.0.1
- Service mesh is a dedicated infrastructure layer for facilitating service-to-service communications between services or microservices, using a proxy.
- Kubernetes is an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.
- Istio is a service mesh—a modernized service networking layer that provides a transparent and language-independent way to flexibly and easily automate application network functions.