Installing Istio on IBM Cloud Kubernetes Service
In this module, you will use the Managed Istio add-on to install Istio on your cluster.
Managed Istio is available as part of IBM Cloud™ Kubernetes Service. The service provides seamless installation of Istio, automatic updates and lifecycle management of control plane components, and integration with platform logging and monitoring tools.
Navigate to your cluster in the IBM Cloud Dashboard, switch to the
Add-onstab and install Istio:Remember to switch to the IBM account where the cluster exists. It can take up to 5 minutes for the install to begin.
After waiting, check that the
istio-*Kubernetes services are deployed before you continue.kubectl get svc -n istio-systemSample output:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE grafana ClusterIP 172.21.248.16 <none> 3000/TCP 2s istio-citadel ClusterIP 172.21.86.151 <none> 8060/TCP,15014/TCP 6m56s istio-egressgateway ClusterIP 172.21.197.125 <none> 80/TCP,443/TCP,15443/TCP 6m56s istio-galley ClusterIP 172.21.29.234 <none> 443/TCP,15014/TCP,9901/TCP 6m56s istio-ingressgateway LoadBalancer 172.21.161.24 169.61.10.106 15020:31167/TCP,80:31380/TCP,443:31390/TCP,31400:31400/TCP,15029:30889/TCP,15030:31326/TCP,15031:30961/TCP,15032:31491/TCP,15443:30967/TCP 6m55s istio-pilot ClusterIP 172.21.168.110 <none> 15010/TCP,15011/TCP,8080/TCP,15014/TCP 6m55s istio-policy ClusterIP 172.21.147.132 <none> 9091/TCP,15004/TCP,15014/TCP 6m55s istio-sidecar-injector ClusterIP 172.21.57.81 <none> 443/TCP 6m55s istio-telemetry ClusterIP 172.21.231.56 <none> 9091/TCP,15004/TCP,15014/TCP,42422/TCP 6m55s jaeger-agent ClusterIP None <none> 5775/UDP,6831/UDP,6832/UDP 2s jaeger-collector ClusterIP 172.21.0.87 <none> 14267/TCP,14268/TCP 2s jaeger-query ClusterIP 172.21.157.12 <none> 16686/TCP 2s kiali ClusterIP 172.21.156.209 <none> 20001/TCP 2s prometheus ClusterIP 172.21.159.166 <none> 9090/TCP 6m55s tracing ClusterIP 172.21.210.248 <none> 80/TCP 1s zipkin ClusterIP 172.21.214.67 <none> 9411/TCP 1sNote: If your istio-ingressgateway service IP is
<pending>, please check with the lab instructor before proceeding.Ensure the corresponding pods
istio-citadel-*,istio-ingressgateway-*,istio-pilot-*, andistio-policy-*are all inRunningstate before you continue.kubectl get pods -n istio-systemSample output:
NAME READY STATUS RESTARTS AGE grafana-6c89cb48cf-v767v 1/1 Running 0 33s istio-citadel-66dff76d4-r9gsf 1/1 Running 0 7m27s istio-egressgateway-55fc547574-svkkr 1/1 Running 0 7m27s istio-galley-7d9dbfd4b9-fw2qk 1/1 Running 0 7m27s istio-ingressgateway-9c4856497-rpxvs 1/1 Running 0 7m27s istio-pilot-7ff6949955-d9hbw 2/2 Running 0 7m27s istio-policy-6b88dd467b-hxhqx 2/2 Running 1 7m27s istio-sidecar-injector-bc8dddd65-bwhbq 1/1 Running 0 7m27s istio-telemetry-5f9df6d9cc-wppmf 2/2 Running 1 7m26s istio-tracing-5777dc949f-k2lhc 1/1 Running 0 33s kiali-8c696cc97-2cwk2 1/1 Running 0 33s prometheus-65c985bf4c-g8ch5 1/1 Running 0 7m26sBefore you continue, make sure all the pods are deployed and either in the
RunningorCompletedstate. If they're inpendingstate, wait a few minutes to let the installation and deployment finish.Check the version of your Istio:
istioctl versionSample output:
client version: 1.4.4 control plane version: 1.4.4 data plane version: none
Congratulations! You successfully installed Istio into your cluster.