Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support per-Gateway LoadBalancer annotations #11

Closed
rg0now opened this issue Nov 21, 2022 · 0 comments
Closed

Support per-Gateway LoadBalancer annotations #11

rg0now opened this issue Nov 21, 2022 · 0 comments

Comments

@rg0now
Copy link
Member

rg0now commented Nov 21, 2022

Currently the recommended way to customize the LoadBalancers created by STUNner is through adding annotations to the GatewayConfig spec.loadBalancerServiceAnnotations field. This, however, is global, in that it affects all Gateways, it does not make it possible to stop STUNner from exposing a Gateway, and it does not make it possible to add labels, only annotations.

This issue is a placeholder to add another way for controlling LoadBalancers and to discuss and implement this behavior. In particular, Istio implements a policy where annotations/labels can be added to each Gateway and these will be automatically copied into the Kubernetes services created for that Gateway.

The particular behavior (converted to STUNner) would be as follows:

  • Annotations and labels on the Gateway will be copied into the Service. This allows configuring things such as Internal load balancers that read from these fields.
  • STUNner offers an additional annotation to configure the generated resources: adding a special annotation stunner.l7mp.io/service-type controls the Service.spec.type field of the Service. For example, set to ClusterIP to not expose the service externally. The default is LoadBalancer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant