GoogleCloudPlatform / anthos-service-mesh-packages

Packaged configuration for setting up a Kubernetes cluster with Anthos Service Mesh features enabled
https://cloud.google.com/anthos/service-mesh
Apache License 2.0
133 stars 167 forks source link

Creating internal ingress gateway #168

Closed paulwilljones closed 3 years ago

paulwilljones commented 3 years ago

Is there a way of setting the ingress gateway component load balancer type in istio-operator.yaml to 'internal' when using asm-patch and kpt?

I see it's set up in asm/istio/options/internal-load-balancer.yaml.

How does one deploy this following these installation instructions?

paulwilljones commented 3 years ago

We're also using the Terraform submodule to install ASM. https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/tree/v9.4.0/modules/asm

zerobfd commented 3 years ago

If you're asking whether there's a supported, stable way of doing this with the version of ASM installed by that Terraform module, then I'm pretty sure the answer is "no."

Unofficially, if you're feeling adventurous and willing to do some code surgery, it looks like it might be possible to

Also unofficially, if we go by the instructions you linked which installs with istioctl instead of gcloud, you could do something similar by passing the internal-load-balancer.yaml file as another -f argument, e.g. istioctl install -f istio-operator.yaml -f internal-load-balancer.yaml

Both of these come with the caveats that 1) neither I nor anyone else I know has tried this, 2) it's completely unsupported, and 3) even if it works once there's no guarantee it will after that.

If you want something supported, I would either wait until 1.7 is released with more flexible configuration options, or put in a feature request on the terraform-google-kubernetes-engine repo to enable using an internal load balancer.

zerobfd commented 3 years ago

Closing this for now, feel free to re-open if there's something else we can help with here.