Search code examples
kubernetesistiojaegeristio-kiali

What is the difference between 'istioctl manifest apply' and 'istioctl install'?


I have noticed that setting values through istioctl manifest apply will affect other Istio resources. For example, when I set --set values.tracing.enabled=true, Kiali which was previously installed in cluster vanished.

And what is the right way to set values(option) like values.pilot.traceSampling?

Thanks


Solution

  • Istio install has been introduced in istio 1.6 however the --set options work the same as in istioctl manifest apply which it replaces. I suspect it is made for better clarity and accessibility as istioctl manifest has lots of other uses like istioctl manifest generate which allows to create manifest yaml and save it to a file.

    According to istio documentation:

    While istioctl install will automatically detect environment specific settings from your Kubernetes context, manifest generate cannot as it runs offline, which may lead to unexpected results. In particular, you must ensure that you follow these steps if your Kubernetes environment does not support third party service account tokens.

    As for Kiali You need to install it separately like in this guide.

    To set values like values.pilot.tracingSampling i suggest using istio Operator.

    Hope it helps.