3

Following the istio docs to install the demo profile I get the errors below. Others have been getting this error for months with no resolution.

Do other installation methods work? The helm installation has been deprecated, but does it still work? Is there a way to remove the partial installation that I have now?

$ istioctl install --set profile=demo
Detected that your cluster does not support third party JWT authentication. Falling back to less secure first party JWT. See https://istio.io/docs/ops/best-practices/security/#configure-third-party-service-account-tokens for details.
✔ Istio core installed                                                                                                                      
  Processing resources for Istiod. Waiting for Deployment/istio-system/istiod                                                               
✘ Istiod encountered an error: failed to wait for resource: resources not ready after 5m0s: timed out waiting for the condition             
Deployment/istio-system/istiod
✘ Egress gateways encountered an error: failed to wait for resource: resources not ready after 5m0s: timed out waiting for the conditions...
Deployment/istio-system/istio-egressgateway
✘ Ingress gateways encountered an error: failed to wait for resource: resources not ready after 5m0s: timed out waiting for the condition   
Deployment/istio-system/istio-ingressgateway
- Pruning removed resources                                                                                                                 Error: failed to install manifests: errors occurred during operation
5
  • What is your infrastructure? I assume you use minikube/microk8s, according to istio documentation you should have at least 16384 MB of memory and 4 CPUs. Could you try to increase that and check if that works? About removing, you can use istioctl experimental uninstall --purge to delete all istio resources.
    – Jakub
    Commented Oct 16, 2020 at 8:18
  • Jakub - I'm running a real kubernetes cluster on 3 hosts (master and two nodes). My master has 12 GB RAM so maybe that is the problem, but I don't see why that would cause a timeout error. The installation docs don't mention a minimum amount of RAM. Is 16 GB a hard requirement and does having less cause the errors I'm seeing? Commented Oct 16, 2020 at 16:45
  • You use latest istio version? Have you tried with other profile like default or minimal? From the information you provided I would say that's a problem with resources, but can't say more without the true reason of pods being unhealthy. Could you check the unhealthy pods in istio-system namespace with kubectl get pods -n istio-system and kubectl describe <unhealthy pod> -n istio-system and check what's the reason? 16GB is not a hard requirement, I thought you use minikube/microk8s.
    – Jakub
    Commented Oct 19, 2020 at 5:43
  • Jakub - After doing the purge I did the default install with istioctl install and get the same timeout errors. Commented Oct 20, 2020 at 21:11
  • Just to be complete, after doing the --purge above it's also necessary to do kubectl delete namespaces istio-system to remove the namespace after a failed install. Commented Oct 21, 2020 at 19:14

2 Answers 2

12

I tried the istioctl install on a different kubernetes cluster that has 32 GB RAM on the master and it succeeded. This cluster was created the same way as the first one with 12 GB RAM on the master so the difference that allowed the install to work is the amount of RAM.

There is a minimum RAM requirement for istioctl install that is not documented and needs to be. The timeout error message is misleading. It should say insufficient RAM. There should also be a document for bare metal installs.

The preflight check should not indictate pass if there is not sufficient RAM to do the install.

I hope this helps someone else who runs into the timeout messages.

0
0

I had the same problem. I set profile and it helped

istioctl install --set profile=minimal

Not the answer you're looking for? Browse other questions tagged or ask your own question.