v1alpha1

package
v1.34.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 22, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the routing.qdrant.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=routing.qdrant.io

Index

Constants

View Source
const (
	KindEnvoyBootstrapConfig     = "EnvoyBootstrapConfig"
	ResourceEnvoyBootstrapConfig = "envoybootstrapconfigs"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "routing.qdrant.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type BootstrapStatusInfo

type BootstrapStatusInfo struct {
	// Identifier of the route this bootstrap status info belongs to.
	RouteId string `json:"routeId,omitempty"`
	// Set if the route uses a shared loadbalancer.
	Shared *bool `json:"shared,omitempty"`
	// Set if the route uses a dedicated loadbalancer.
	Dedicated *bool `json:"dedicated,omitempty"`
	// Set to true if routing of the Qdrant cluster has been bootstrapped once for this specific route.
	Bootstrapped *bool `json:"bootstrapped,omitempty"`
}

BootstrapStatusInfo is part of QdrantClusterRoutingStatus.

func (*BootstrapStatusInfo) DeepCopy

func (in *BootstrapStatusInfo) DeepCopy() *BootstrapStatusInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootstrapStatusInfo.

func (*BootstrapStatusInfo) DeepCopyInto

func (in *BootstrapStatusInfo) DeepCopyInto(out *BootstrapStatusInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EnvoyBootstrapConfig added in v1.31.0

type EnvoyBootstrapConfig struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   EnvoyBootstrapConfigSpec   `json:"spec,omitempty"`
	Status EnvoyBootstrapConfigStatus `json:"status,omitempty"`
}

EnvoyBootstrapConfig is the Schema for the envoybootstrapconfigs API. It declares the desired state for an Envoy bootstrap configuration. The route-manager reconciler watches these resources and produces a ConfigMap (rendered bootstrap JSON) and a Secret (access token) in the same namespace.

func (*EnvoyBootstrapConfig) DeepCopy added in v1.31.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyBootstrapConfig.

func (*EnvoyBootstrapConfig) DeepCopyInto added in v1.31.0

func (in *EnvoyBootstrapConfig) DeepCopyInto(out *EnvoyBootstrapConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*EnvoyBootstrapConfig) DeepCopyObject added in v1.31.0

func (in *EnvoyBootstrapConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type EnvoyBootstrapConfigList added in v1.31.0

type EnvoyBootstrapConfigList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of EnvoyBootstrapConfig objects
	Items []EnvoyBootstrapConfig `json:"items"`
}

EnvoyBootstrapConfigList contains a list of EnvoyBootstrapConfig objects.

func (*EnvoyBootstrapConfigList) DeepCopy added in v1.31.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyBootstrapConfigList.

func (*EnvoyBootstrapConfigList) DeepCopyInto added in v1.31.0

func (in *EnvoyBootstrapConfigList) DeepCopyInto(out *EnvoyBootstrapConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*EnvoyBootstrapConfigList) DeepCopyObject added in v1.31.0

func (in *EnvoyBootstrapConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type EnvoyBootstrapConfigSpec added in v1.31.0

type EnvoyBootstrapConfigSpec struct {
	// ClusterID identifies the Qdrant cluster this Envoy instance serves.
	// When set the Envoy runs in dedicated mode for this cluster.
	// When nil it runs in shared mode.
	// +optional
	ClusterID *string `json:"clusterID,omitempty"`
	// ProxyProtocolEnabled enables the PROXY protocol on Envoy listeners.
	// +kubebuilder:default=false
	// +optional
	ProxyProtocolEnabled bool `json:"proxyProtocolEnabled,omitempty"`
	// MultiAZ marks this Envoy fleet as the multi-AZ load balancer. When true,
	// the route-manager advertises this fact to Envoy via node metadata so that
	// zone-aware routing decisions can be made per-cluster via
	// QdrantClusterRouting.spec.multiAZ.
	// +kubebuilder:default=false
	// +optional
	MultiAZ bool `json:"multiAZ,omitempty"`
}

EnvoyBootstrapConfigSpec describes the desired Envoy bootstrap configuration.

func (*EnvoyBootstrapConfigSpec) DeepCopy added in v1.31.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyBootstrapConfigSpec.

func (*EnvoyBootstrapConfigSpec) DeepCopyInto added in v1.31.0

func (in *EnvoyBootstrapConfigSpec) DeepCopyInto(out *EnvoyBootstrapConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EnvoyBootstrapConfigStatus added in v1.31.0

type EnvoyBootstrapConfigStatus struct {
	// Ready is true once the ConfigMap and Secret exist and are up-to-date.
	Ready bool `json:"ready,omitempty"`
	// ConfigMapName is the name of the generated ConfigMap containing the bootstrap JSON.
	ConfigMapName string `json:"configMapName,omitempty"`
	// SecretName is the name of the access-token Secret (created or reused).
	SecretName string `json:"secretName,omitempty"`
	// Conditions represent the latest available observations of the resource's state.
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

EnvoyBootstrapConfigStatus defines the observed state of EnvoyBootstrapConfig.

func (*EnvoyBootstrapConfigStatus) DeepCopy added in v1.31.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyBootstrapConfigStatus.

func (*EnvoyBootstrapConfigStatus) DeepCopyInto added in v1.31.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QdrantClusterRouting

type QdrantClusterRouting struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   QdrantClusterRoutingSpec   `json:"spec"`
	Status QdrantClusterRoutingStatus `json:"status,omitempty"`
}

QdrantClusterRouting is the Schema for the routing towards Qdrant clusters API

func (*QdrantClusterRouting) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRouting.

func (*QdrantClusterRouting) DeepCopyInto

func (in *QdrantClusterRouting) DeepCopyInto(out *QdrantClusterRouting)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*QdrantClusterRouting) DeepCopyObject

func (in *QdrantClusterRouting) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type QdrantClusterRoutingList

type QdrantClusterRoutingList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of QdrantClusterRouting objects
	Items []QdrantClusterRouting `json:"items"`
}

QdrantClusterRoutingList is the whole list of all QdrantClusterRouting objects.

func (*QdrantClusterRoutingList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRoutingList.

func (*QdrantClusterRoutingList) DeepCopyInto

func (in *QdrantClusterRoutingList) DeepCopyInto(out *QdrantClusterRoutingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*QdrantClusterRoutingList) DeepCopyObject

func (in *QdrantClusterRoutingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type QdrantClusterRoutingSpec

type QdrantClusterRoutingSpec struct {
	// ClusterId specifies the unique identifier of the cluster.
	ClusterId string `json:"clusterId"`
	// The fully qualified domain name (also know as host).
	// For shared routing this will be used for SNI resolving.
	FQDN string `json:"fqdn"`
	// Enabled specifies whether to enable ingress for the cluster or not.
	// +kubebuilder:default=true
	// +optional
	Enabled *bool `json:"enabled,omitempty"`
	// Set if the cluster uses (at least one) shared loadbalancer.
	// Note that this doesn't mean it doesn't have a dedicated loadbalancer as well (e.g. during a migration from one to the other).
	// +optional
	Shared *bool `json:"shared,omitempty"`
	// Set if the cluster uses (at least one) dedicated loadbalancer.
	// Note that this doesn't mean it doesn't have a shared loadbalancer as well (e.g. during a migration from one to the other).
	// +optional
	Dedicated *bool `json:"dedicated,omitempty"`
	// TLS specifies whether tls is enabled or not at qdrant level.
	// +optional
	TLS *bool `json:"tls,omitempty"`
	// ServicePerNode specifies whether the cluster should have a dedicated route for each node.
	// +kubebuilder:default=true
	// +optional
	ServicePerNode *bool `json:"servicePerNode,omitempty"`
	// NodeIndexes specifies the indexes of the individual nodes in the cluster.
	NodeIndexes []int `json:"nodeIndexes,omitempty"`
	// AllowedSourceRanges specifies the allowed CIDR source ranges for the ingress.
	// +optional
	AllowedSourceRanges []string `json:"allowedSourceRanges,omitempty"`
	// If true enable (proxy) access log for this qdrant cluster.
	// +optional
	EnableAccessLog *bool `json:"enableAccessLog,omitempty"`
	// MultiAZ is true when the Qdrant cluster spans multiple availability
	// zones and traffic should be kept same-zone where possible.
	// +kubebuilder:default=false
	// +optional
	MultiAZ bool `json:"multiAZ,omitempty"`
}

QdrantClusterRoutingSpec describes the configuration for routing towards Qdrant clusters.

func (*QdrantClusterRoutingSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRoutingSpec.

func (*QdrantClusterRoutingSpec) DeepCopyInto

func (in *QdrantClusterRoutingSpec) DeepCopyInto(out *QdrantClusterRoutingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QdrantClusterRoutingStatus

type QdrantClusterRoutingStatus struct {
	// Set to true if routing of the Qdrant cluster has been bootstrapped once.
	// This implies that at least one route is bootstrapped, for detailed information see the BootstrapInfos field
	Bootstrapped *bool `json:"bootstrapped,omitempty"`
	// Individual bootstrap status info (e.g. when multiple routes are available for this Qdrant cluster)
	BootstrapInfos *[]BootstrapStatusInfo `json:"bootstrapInfos,omitempty"`
}

QdrantClusterRoutingStatus defines the observed state of QdrantClusterRouting +kubebuilder:pruning:PreserveUnknownFields

func (*QdrantClusterRoutingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRoutingStatus.

func (*QdrantClusterRoutingStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL