0

Istiod and Ingressgw not installing when installing isito on a minikube cluster on WSL 2. I installed minikube to use containerd. Seeing the following errors when describing istiod pod.

#istioctl install
This will install the Istio 1.16.1 default profile with ["Istio core" "Istiod" "Ingress gateways"] components into the cluster. Proceed? (y/N) y
✔ Istio core installed
✘ Istiod encountered an error: failed to wait for resource: resources not ready after 5m0s: timed out waiting for the condition
  Deployment/istio-system/istiod (container failed to start: ImagePullBackOff: Back-off pulling image "docker.io/istio/pilot:1.16.1")
- Processing resources for Ingress gateways. Waiting for Deployment/istio-system/istio-ingressgateway 

This is the output of kubectl describe pod -n istio-system istiod-7fb4bc46ff-crt9w

Events:
  Type     Reason     Age                  From               Message
  ----     ------     ----                 ----               -------
  Normal   Scheduled  11m                  default-scheduler  Successfully assigned istio-system/istiod-7fb4bc46ff-crt9w to minikube
  Normal   Pulling    10m (x4 over 11m)    kubelet            Pulling image "docker.io/istio/pilot:1.16.1"
  Warning  Failed     10m (x4 over 11m)    kubelet            Failed to pull image "docker.io/istio/pilot:1.16.1": rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/istio/pilot:1.16.1": failed to resolve reference "docker.io/istio/pilot:1.16.1": failed to authorize: failed to fetch anonymous token: Get "https://auth.docker.io/token?scope=repository%3Aistio%2Fpilot%3Apull&service=registry.docker.io": x509: certificate signed by unknown authority
  Warning  Failed     10m (x4 over 11m)    kubelet            Error: ErrImagePull
  Warning  Failed     10m (x6 over 11m)    kubelet            Error: ImagePullBackOff
  Normal   BackOff    112s (x42 over 11m)  kubelet            Back-off pulling image "docker.io/istio/pilot:1.16.1"
#kubectl get all --all-namespaces
NAMESPACE      NAME                                   READY   STATUS             RESTARTS      AGE
istio-system   pod/istiod-7fb4bc46ff-crt9w            0/1     ImagePullBackOff   0             49m
kube-system    pod/coredns-787d4945fb-cqgrq           1/1     Running            0             51m
kube-system    pod/etcd-minikube                      1/1     Running            0             51m
kube-system    pod/kindnet-w8t78                      1/1     Running            0             51m
kube-system    pod/kube-apiserver-minikube            1/1     Running            0             51m
kube-system    pod/kube-controller-manager-minikube   1/1     Running            0             51m
kube-system    pod/kube-proxy-k72t7                   1/1     Running            0             51m
kube-system    pod/kube-scheduler-minikube            1/1     Running            0             51m
kube-system    pod/storage-provisioner                1/1     Running            1 (51m ago)   51m

NAMESPACE      NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                 AGE
default        service/kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP                                 51m
istio-system   service/istiod       ClusterIP   10.105.148.207   <none>        15010/TCP,15012/TCP,443/TCP,15014/TCP   49m
kube-system    service/kube-dns     ClusterIP   10.96.0.10       <none>        53/UDP,53/TCP,9153/TCP                  51m

NAMESPACE     NAME                        DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
kube-system   daemonset.apps/kindnet      1         1         1       1            1           <none>                   51m
kube-system   daemonset.apps/kube-proxy   1         1         1       1            1           kubernetes.io/os=linux   51m

NAMESPACE      NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
istio-system   deployment.apps/istiod    0/1     1            0           49m
kube-system    deployment.apps/coredns   1/1     1            1           51m

NAMESPACE      NAME                                 DESIRED   CURRENT   READY   AGE
istio-system   replicaset.apps/istiod-7fb4bc46ff    1         1         0       49m
kube-system    replicaset.apps/coredns-787d4945fb   1         1         1       51m

NAMESPACE      NAME                                         REFERENCE           TARGETS         MINPODS   MAXPODS   REPLICAS   AGE
istio-system   horizontalpodautoscaler.autoscaling/istiod   Deployment/istiod   <unknown>/80%   1         5         1          49m

I was able to do docker pull on the same image and that worked fine. Also when I tried to run minikube with docker as container-runtime instead of containerd, mikube start was failing. istioctl x precheck was ok.Might have to do something with WSL2 and being on a corporate VPN.

I manually pulled the image using docker pull but still I get the image pullback error. As previously mentioned I was successfully able to pull the image using docker pull.

David Maze
  • 130,717
  • 29
  • 175
  • 215
user21387093
  • 193
  • 1
  • 1
  • 5
  • I hope the shared information was helpful to you in overcoming the issue. If you have any further queries, I am happy to offer further assistance. – Fariya Rahmat Mar 29 '23 at 07:51

1 Answers1

0

Here are some troubleshooting steps which you can try to fix the issue:

  1. Try updating memory (RAM) for the master node, According to istio documentation you should have at least 16384 MB of memory and 4 CPUs.

  2. Verify that the Istio version that you want to install in your cluster and the Istio client on your local machine match. If not, upgrade your Istio version and try to install Istio in the cluster again.

  3. Check if namespaces istio-system is labeled with “istio-injection=enabled” remove the label and try again.

Refer to this Github link for more information.

Fariya Rahmat
  • 2,123
  • 3
  • 11