Istio on Kubernetes 1.16

Kubernetes 1.16 is available now! I am just about to install Istio. Should I go with 1.15 or 1.16. Any issues with installing on 1.16 at this time?

Istio 1.3 supports Kubernetes 1.13-1.15. However, we have done some testing on Kubernetes 1.16, and things seem fine. However, I would suggest waiting until Istio 1.4 which will official support Kubernetes 1.16 if possible

When is alpha for Istio 1.4 expected? I need to install a version of Istio tomorrow for development and need to know what is the best version to start a development project on so that upgrade is easiest. Its a long term project so I think I have six months maybe before release of anything.

See https://github.com/istio/istio/wiki/Istio-Release-1.4 for info about 1.4. I would highly recommend you install 1.3.1

Ok, thanks. I will install it.

Using kubeadm 1.16.3 (verified same version of kubeadm, kubelet and kubectl) on Ubuntu 18.04 and istio-1.4.0, I cannot get istioctl manifest apply to work, it just returns a bunch of errors like:
error: error validating “STDIN”: error validating data: the server could not find the requested resource; if you choose to ignore these errors, turn validation off with --validate=false (repeated 1 times)

So if I try to istioctl manifest generate and then apply it using kubectl manually using --validate=false, I get this lovely error when it tries to create a Gateway resource:
Error from server (NotFound): error when creating “istio.yml”: the server could not find the requested resource (post gatewaies.networking.istio.io)

Similarly, if I try to apply any Gateway manifests that used to work on 1.15, they fail because the server could not find the requested resource (post gatewaies.networking.istio.io)

All of this is very unfortunate because the CRD does exist in the kube-apiserver but no resources can seem to use it:
NAME KIND
gateways.networking.istio.io CustomResourceDefinition.v1.apiextensions.k8s.io

I guess I need to find a way to downgrade back to 1.15 for now.

I tested Kubernetes 1.16 on Minikube and didn’t encouter any issues so far. Istio installed via istioctl.

We do most of our testing in CI on k8s 1.16 so it should work well

May i ask which version of istio included in CI on k8s 1.16? Istio 1.3.x or 1.4.x?

We run some a subset of tests with 1.16 for 1.4, and in the master branch we are now running all tests on 1.16. I don’t think we run 1.16 for Istio 1.3, I think that came out long after 1.3 did

As a datapoint, I have a cluster running k8s 1.16.3 and I just ran the Istio 1.4.0 istioctl manifest apply --set profile=demo against the cluster without any errors. I’m not sure what other parameters your are trying to use.