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

  • WebSocket connection to WireGuard
    WebSocket connection to WireGuardIn some countries (e.g. Egypt) or some hotels, VPN connections are blocked and only possibility is to tunnel them through WebSocket, in this article I will focus on that.
  • cs | en