API Version
kubelb.k8c.io/v1alpha1
Resource Scope
Cluster-scopedSpec Fields
Annotation Settings
Defines the list of annotations (key-value pairs) that will be propagated to the LoadBalancer service. Keep the
value field empty in the key-value pair to allow any value.Tenant configuration has higher precedence than the annotations specified at the Config level.Defines whether all annotations will be propagated to the LoadBalancer service. If set to true,
propagatedAnnotations will be ignored.Tenant configuration has higher precedence than the value specified at the Config level.Defines the list of annotations (key-value pairs) that will be set on the load balancing resources if not already present. A special key
all can be used to apply the same set of annotations to all resources.Tenant configuration has higher precedence than the annotations specified at the Config level.Valid resource types: all, service, ingress, gateway, httproute, grpcroute, tcproute, udproute, tlsrouteLoadBalancer Settings
Class of the load balancer to use. This has higher precedence than the value specified in the Config.
Flag that can be used to disable L4 load balancing for a tenant.
Ingress Settings
Class of the ingress to use. This has higher precedence than the value specified in the Config.
Flag that can be used to disable Ingress for a tenant.
Gateway API Settings
Class of the gateway API to use. This can be used to specify a specific gateway API implementation. This has higher precedence than the value specified in the Config.
Default gateway reference to use for the tenant. This is only used for load balancer hostname.
Name of the gateway.
Namespace of the gateway.
Flag that can be used to disable Gateway API for a tenant.
DNS Settings
Domain that will be used as the base domain to create wildcard DNS records for DNS resources. This is only used for determining the hostname for LoadBalancer resources at
LoadBalancer.Spec.Hostname.Flag that can be used to allow explicit hostnames to be used for DNS resources. This is only used when
LoadBalancer.Spec.Hostname is set.Flag that can be used to add DNS annotations to DNS resources. This is only used when
LoadBalancer.Spec.Hostname is set.Flag that can be used to add Certificate annotations to Certificate resources. This is only used when
LoadBalancer.Spec.Hostname is set.Certificate Settings
The Cluster Issuer to use for the certificates by default. This is only used for load balancer hostname.
Status Fields
The Tenant resource currently does not have any status fields.Example
Basic Tenant Configuration
Tenant with LoadBalancer Disabled
Tenant with Custom Gateway
Tenant with Specific Annotations
Notes
- Tenant configuration always takes precedence over Config-level settings
- Use the
disableflags to selectively disable L4 load balancing, Ingress, or Gateway API functionality per tenant - The
wildcardDomainsetting is used to automatically generate hostnames for LoadBalancer resources - Annotation settings allow fine-grained control over which annotations are propagated or set by default on load balancing resources
