Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/pr-workflow.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ on:

permissions:
contents: read
pull-requests: write

jobs:
linter:
Expand Down
15 changes: 15 additions & 0 deletions api/routing/v1alpha1/envoybootstrapconfig_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,21 @@ type EnvoyBootstrapConfigSpec struct {
// +kubebuilder:default=false
// +optional
MultiAZ bool `json:"multiAZ,omitempty"`
// LoadBalancerService identifies the Kubernetes Service backing this Envoy
// fleet's cloud load balancer.
// +optional
LoadBalancerService *LoadBalancerServiceReference `json:"loadBalancerService,omitempty"`
}

// LoadBalancerServiceReference identifies a Kubernetes Service that exposes an
// Envoy fleet through a cloud load balancer.
type LoadBalancerServiceReference struct {
// Name is the Service name.
Name string `json:"name"`
// Namespace is the Service namespace.
// If empty, defaults to the namespace where the EnvoyBootstrapConfig is created.
// +optional
Namespace string `json:"namespace"`
Comment thread
vsamidurai marked this conversation as resolved.
}

// EnvoyBootstrapConfigStatus defines the observed state of EnvoyBootstrapConfig.
Expand Down
20 changes: 20 additions & 0 deletions api/routing/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,22 @@ spec:
When set the Envoy runs in dedicated mode for this cluster.
When nil it runs in shared mode.
type: string
loadBalancerService:
description: |-
LoadBalancerService identifies the Kubernetes Service backing this Envoy
fleet's cloud load balancer.
properties:
name:
description: Name is the Service name.
type: string
namespace:
description: |-
Namespace is the Service namespace.
If empty, defaults to the namespace where the EnvoyBootstrapConfig is created.
type: string
required:
- name
type: object
multiAZ:
default: false
description: |-
Expand Down
19 changes: 19 additions & 0 deletions docs/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -1740,10 +1740,29 @@ _Appears in:_
| `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 /> |
| `proxyProtocolEnabled` _boolean_ | ProxyProtocolEnabled enables the PROXY protocol on Envoy listeners. | false | Optional: \{\} <br /> |
| `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 /> |
| `loadBalancerService` _[LoadBalancerServiceReference](#loadbalancerservicereference)_ | LoadBalancerService identifies the Kubernetes Service backing this Envoy<br />fleet's cloud load balancer. | | Optional: \{\} <br /> |




#### LoadBalancerServiceReference



LoadBalancerServiceReference identifies a Kubernetes Service that exposes an
Envoy fleet through a cloud load balancer.



_Appears in:_
- [EnvoyBootstrapConfigSpec](#envoybootstrapconfigspec)

| Field | Description | Default | Validation |
| --- | --- | --- | --- |
| `name` _string_ | Name is the Service name. | | |
| `namespace` _string_ | Namespace is the Service namespace.<br />If empty, defaults to the namespace where the EnvoyBootstrapConfig is created. | | Optional: \{\} <br /> |


#### QdrantClusterRouting


Expand Down
Loading