Skip to content

Commit fbc4cc1

Browse files
committed
add LB name and namespace in bootstrapconfig.
CRC-1963
1 parent d0529e2 commit fbc4cc1

4 files changed

Lines changed: 68 additions & 0 deletions

File tree

api/routing/v1alpha1/envoybootstrapconfig_types.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,19 @@ type EnvoyBootstrapConfigSpec struct {
4949
// +kubebuilder:default=false
5050
// +optional
5151
MultiAZ bool `json:"multiAZ,omitempty"`
52+
// LoadBalancerService identifies the Kubernetes Service backing this Envoy
53+
// fleet's cloud load balancer.
54+
// +optional
55+
LoadBalancerService *LoadBalancerServiceReference `json:"loadBalancerService,omitempty"`
56+
}
57+
58+
// LoadBalancerServiceReference identifies a Kubernetes Service that exposes an
59+
// Envoy fleet through a cloud load balancer.
60+
type LoadBalancerServiceReference struct {
61+
// Name is the Service name.
62+
Name string `json:"name"`
63+
// Namespace is the Service namespace.
64+
Namespace string `json:"namespace"`
5265
}
5366

5467
// EnvoyBootstrapConfigStatus defines the observed state of EnvoyBootstrapConfig.

api/routing/v1alpha1/zz_generated.deepcopy.go

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

charts/qdrant-kubernetes-api/templates/routing-crds/routing.qdrant.io_envoybootstrapconfigs.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,22 @@ spec:
6565
When set the Envoy runs in dedicated mode for this cluster.
6666
When nil it runs in shared mode.
6767
type: string
68+
loadBalancerService:
69+
description: |-
70+
LoadBalancerService identifies the Kubernetes Service backing this Envoy
71+
fleet's cloud load balancer.
72+
Route-manager uses this for multi-AZ DNS override target discovery.
73+
properties:
74+
name:
75+
description: Name is the Service name.
76+
type: string
77+
namespace:
78+
description: Namespace is the Service namespace.
79+
type: string
80+
required:
81+
- name
82+
- namespace
83+
type: object
6884
multiAZ:
6985
default: false
7086
description: |-

docs/api.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1740,10 +1740,29 @@ _Appears in:_
17401740
| `clusterID` _string_ | ClusterID identifies the Qdrant cluster this Envoy instance serves.<br />When set the Envoy runs in dedicated mode for this cluster.<br />When nil it runs in shared mode. | | Optional: \{\} <br /> |
17411741
| `proxyProtocolEnabled` _boolean_ | ProxyProtocolEnabled enables the PROXY protocol on Envoy listeners. | false | Optional: \{\} <br /> |
17421742
| `multiAZ` _boolean_ | MultiAZ marks this Envoy fleet as the multi-AZ load balancer. When true,<br />the route-manager advertises this fact to Envoy via node metadata so that<br />zone-aware routing decisions can be made per-cluster via<br />QdrantClusterRouting.spec.multiAZ. | false | Optional: \{\} <br /> |
1743+
| `loadBalancerService` _[LoadBalancerServiceReference](#loadbalancerservicereference)_ | LoadBalancerService identifies the Kubernetes Service backing this Envoy<br />fleet's cloud load balancer.<br />Route-manager uses this for multi-AZ DNS override target discovery. | | Optional: \{\} <br /> |
17431744

17441745

17451746

17461747

1748+
#### LoadBalancerServiceReference
1749+
1750+
1751+
1752+
LoadBalancerServiceReference identifies a Kubernetes Service that exposes an
1753+
Envoy fleet through a cloud load balancer.
1754+
1755+
1756+
1757+
_Appears in:_
1758+
- [EnvoyBootstrapConfigSpec](#envoybootstrapconfigspec)
1759+
1760+
| Field | Description | Default | Validation |
1761+
| --- | --- | --- | --- |
1762+
| `name` _string_ | Name is the Service name. | | |
1763+
| `namespace` _string_ | Namespace is the Service namespace. | | |
1764+
1765+
17471766
#### QdrantClusterRouting
17481767

17491768

0 commit comments

Comments
 (0)