Martin Koníček

Blog

Installing Istio on MicroK8S

Showcase image

Installing Istio on MicroK8S using standard path following tutorial from istio.io/latest/docs/setup/getting-started/ with just small changes.

If you will follow default tutorial you will probably get following errors

Installation error

bash# istioctl install --set profile=demo -y
Error: check minimum supported Kubernetes version: error getting Kubernetes version: Get "http://localhost:8080/version?timeout=5s": dial tcp 127.0.0.1:8080: connect: connection refused

For resolving this issue you should export kubeconfig first

bash# microk8s config > ~/.kube/config
bash# export KUBECONFIG=~/.kube/config
bash# istioctl install --set profile=demo -y

Ingress

Next difference is in ingress set-up.

bash# kubectl get svc istio-ingressgateway -n istio-system
NAME                   TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                                                                      AGE
istio-ingressgateway   LoadBalancer   10.152.183.60   <pending>     15021:31323/TCP,80:30732/TCP,443:30212/TCP,31400:32197/TCP,15443:30158/TCP   2m24s

You can see that port 80 is mounted to port 30732, now you just list interfaces

bash# ip addr l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group ...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group ...
    inet 192.168.1.100/24 metric 100 brd 192.168.1.255 scope global dynamic 

And eth0 interface is on 192.168.1.100.

So after installing initial tutorial you will find out sample application on http://192.168.1.100:30732/productpage

  • MicroK8s git fetch kustomize error
    MicroK8s git fetch kustomize errorThis is a simple workaround when you get a git fetch error when trying deploy kustomize on MicroK8s
  • cs | en