Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the qdrant.io v1 API group +kubebuilder:object:generate=true +groupName=qdrant.io
Index ¶
- Constants
- Variables
- type ClusterCondition
- type ClusterPhase
- type ComponentPhase
- type ComponentStatus
- type HelmRelease
- type HelmRepository
- type Ingress
- func (in *Ingress) DeepCopy() *Ingress
- func (in *Ingress) DeepCopyInto(out *Ingress)
- func (i *Ingress) GetAnnotations() map[string]string
- func (i *Ingress) GetIngressClassName() *string
- func (i *Ingress) GetNGINX() *NGINXConfig
- func (i *Ingress) GetTls(def bool) bool
- func (i *Ingress) GetTraefik() *TraefikConfig
- func (i *Ingress) GetType() IngressType
- type IngressType
- type KubernetesDistribution
- type KubernetesPod
- type KubernetesService
- type KubernetesStatefulSet
- type NGINXConfig
- type NodeStatus
- type Operation
- type OperationPhase
- type OperationStep
- type OperationType
- type Pause
- type QdrantCloudRegion
- type QdrantCloudRegionList
- type QdrantCloudRegionSpec
- type QdrantCloudRegionStatus
- type QdrantCluster
- type QdrantClusterList
- type QdrantClusterRestore
- type QdrantClusterRestoreList
- type QdrantClusterRestoreSpec
- type QdrantClusterRestoreStatus
- type QdrantClusterScheduledSnapshot
- type QdrantClusterScheduledSnapshotList
- type QdrantClusterScheduledSnapshotSpec
- type QdrantClusterScheduledSnapshotStatus
- type QdrantClusterSnapshot
- type QdrantClusterSnapshotList
- type QdrantClusterSnapshotPhase
- type QdrantClusterSnapshotSpec
- type QdrantClusterSnapshotStatus
- type QdrantClusterSpec
- type QdrantClusterStatus
- type QdrantConfiguration
- type QdrantConfigurationCollection
- type QdrantConfigurationCollectionVectors
- type QdrantConfigurationService
- func (in *QdrantConfigurationService) DeepCopy() *QdrantConfigurationService
- func (in *QdrantConfigurationService) DeepCopyInto(out *QdrantConfigurationService)
- func (c *QdrantConfigurationService) GetApiKey() *QdrantSecretKeyRef
- func (c *QdrantConfigurationService) GetEnableTLS() bool
- func (c *QdrantConfigurationService) GetJwtRbac() bool
- func (c *QdrantConfigurationService) GetReadOnlyApiKey() *QdrantSecretKeyRef
- type QdrantConfigurationTLS
- type QdrantImage
- type QdrantSecretKeyRef
- type QdrantSecurityContext
- type QdrantVersion
- type QdrantVersionList
- type QdrantVersionSpec
- type RegionCapabilities
- type RegionPhase
- type ResourceRequests
- type Resources
- type RestoreDestination
- type RestorePhase
- type RestoreSource
- type ScheduledSnapshotPhase
- type StepPhase
- type StorageClassNames
- type StorageConfig
- type StoragePerformanceConfig
- type TraefikConfig
- type VolumeSnapshotInfo
Constants ¶
const ( KindQdrantCluster = "QdrantCluster" ResourceQdrantCluster = "qdrantclusters" )
const ( // RestartedAtAnnotationKey is the annotation key to trigger a restart. // The annotation should be placed on the QdrantCluster instance. // The value should be a [RFC3339 formatted] date. // If the value is updated it will retrigger the restart. // For historical reasons the key doesn't start with `operator.qdrant.com/` RestartedAtAnnotationKey = "restartedAt" // RecreateNodeAnnotationKey is the annotation key to recreate a certain node. // The annotation should be placed on the pod created by the operator (for the node that need to be recreated). // It is allowed to add this annotation to multiple pods, the operator will handle them all. // The value should be non-empty, but is free to use, and will be used in Events. // This feature requires that the cluster-manager is enabled. RecreateNodeAnnotationKey = "operator.qdrant.com/recreate-node" )
const ( KindQdrantClusterRestore = "QdrantClusterRestore" ResourceQdrantClusterRestore = "qdrantclusterrestores" )
const ( KindQdrantClusterScheduledSnapshot = "QdrantClusterScheduledSnapshot" ResourceQdrantClusterScheduledSnapshot = "qdrantclusterscheduledsnapshots" )
const ( KindQdrantClusterSnapshot = "QdrantClusterSnapshot" ResourceQdrantClusterSnapshot = "qdrantclustersnapshots" )
const ( KindQdrantCloudRegion = "QdrantCloudRegion" ResourceQdrantCloudRegion = "qdrantcloudregions" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "qdrant.io", Version: "v1"} // 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 ClusterCondition ¶
type ClusterCondition string
const ( ClusterConditionAcceptingConnection ClusterCondition = "AcceptingConnection" ClusterConditionRecoveryMode ClusterCondition = "RecoveryMode" )
type ClusterPhase ¶
type ClusterPhase string
const ( ClusterActiveStateSuffix = "ing" ClusterFailedStatePrefix = "FailedTo" ClusterCreating ClusterPhase = "Creating" ClusterFailedToCreate ClusterPhase = "FailedToCreate" ClusterUpdating ClusterPhase = "Updating" ClusterFailedToUpdate ClusterPhase = "FailedToUpdate" ClusterScaling ClusterPhase = "Scaling" ClusterFailedToScale ClusterPhase = "FailedToScale" ClusterRestarting ClusterPhase = "Restarting" ClusterFailedToRestart ClusterPhase = "FailedToRestart" ClusterResyncing ClusterPhase = "Resyncing" ClusterFailedToResync ClusterPhase = "FailedToResync" ClusterUpgrading ClusterPhase = "Upgrading" ClusterFailedToUpgrade ClusterPhase = "FailedToUpgrade" ClusterBackupRunning ClusterPhase = "BackupRunning" ClusterFailedToBackup ClusterPhase = "FailedToBackup" ClusterRestoring ClusterPhase = "Restoring" ClusterFailedToRestore ClusterPhase = "FailedToRestore" ClusterSuspending ClusterPhase = "Suspending" ClusterSuspended ClusterPhase = "Suspended" ClusterFailedToSuspend ClusterPhase = "FailedToSuspend" ClusterResuming ClusterPhase = "Resuming" ClusterFailedToResume ClusterPhase = "FailedToResume" ClusterHealthy ClusterPhase = "Healthy" ClusterNotReady ClusterPhase = "NotReady" ClusterRecoveryMode ClusterPhase = "RecoveryMode" ClusterManualMaintenance ClusterPhase = "ManualMaintenance" )
type ComponentPhase ¶
type ComponentPhase string
const ( ComponentPhaseReady ComponentPhase = "Ready" ComponentPhaseNotReady ComponentPhase = "NotReady" ComponentPhaseUnknown ComponentPhase = "Unknown" ComponentPhaseNotFound ComponentPhase = "NotFound" )
type ComponentStatus ¶
type ComponentStatus struct {
// Name specifies the name of the component
Name string `json:"name"`
// Namespace specifies the namespace of the component
Namespace string `json:"namespace,omitempty"`
// Version specifies the version of the component
// +optional
Version string `json:"version,omitempty"`
// Phase specifies the current phase of the component
Phase ComponentPhase `json:"phase,omitempty"`
// Message specifies the info explaining the current phase of the component
// +optional
Message string `json:"message,omitempty"`
}
func (*ComponentStatus) DeepCopy ¶
func (in *ComponentStatus) DeepCopy() *ComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus.
func (*ComponentStatus) DeepCopyInto ¶
func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmRelease ¶
type HelmRelease struct {
// MarkedForDeletionAt specifies the time when the helm release was marked for deletion
// +optional
MarkedForDeletionAt *string `json:"markedForDeletionAt,omitempty"`
// Object specifies the helm release object
// +kubebuilder:validation:EmbeddedResource
Object *helmapi.HelmRelease `json:"object,omitempty"`
}
func (*HelmRelease) DeepCopy ¶
func (in *HelmRelease) DeepCopy() *HelmRelease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmRelease.
func (*HelmRelease) DeepCopyInto ¶
func (in *HelmRelease) DeepCopyInto(out *HelmRelease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmRepository ¶
type HelmRepository struct {
// MarkedForDeletionAt specifies the time when the helm repository was marked for deletion
// +optional
MarkedForDeletionAt *string `json:"markedForDeletionAt,omitempty"`
// Object specifies the helm repository object
// +kubebuilder:validation:EmbeddedResource
Object *srcapi.HelmRepository `json:"object,omitempty"`
}
func (*HelmRepository) DeepCopy ¶
func (in *HelmRepository) DeepCopy() *HelmRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmRepository.
func (*HelmRepository) DeepCopyInto ¶
func (in *HelmRepository) DeepCopyInto(out *HelmRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ingress ¶
type Ingress struct {
// Enabled specifies whether to enable ingress for the cluster or not.
// +optional
Enabled *bool `json:"enabled,omitempty"`
// Annotations specifies annotations for the ingress.
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
// IngressClassName specifies the name of the ingress class
// +optional
IngressClassName *string `json:"ingressClassName,omitempty"`
// Type specifies whether it is path or host based routing.
// +kubebuilder:default="path"
// +kubebuilder:validation:Enum=path;host
// +optional
Type *IngressType `json:"type,omitempty"`
// Host specifies the host for the ingress.
// +optional
Host string `json:"host,omitempty"`
// TLS specifies whether to enable tls for the ingress.
// The default depends on the ingress provider:
// - KubernetesIngress: False
// - NginxIngress: False
// - QdrantCloudTraefik: Depending on the config.tls setting of the operator.
// +optional
TLS *bool `json:"tls,omitempty"`
// TLSSecretName specifies the name of the secret containing the tls certificate.
// +optional
TLSSecretName string `json:"tlsSecretName,omitempty"`
// NGINX specifies the nginx ingress specific configurations.
// +optional
NGINX *NGINXConfig `json:"nginx,omitempty"`
// Traefik specifies the traefik ingress specific configurations.
// +optional
Traefik *TraefikConfig `json:"traefik,omitempty"`
}
func (*Ingress) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress.
func (*Ingress) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Ingress) GetAnnotations ¶
func (*Ingress) GetIngressClassName ¶
func (*Ingress) GetNGINX ¶
func (i *Ingress) GetNGINX() *NGINXConfig
func (*Ingress) GetTraefik ¶
func (i *Ingress) GetTraefik() *TraefikConfig
func (*Ingress) GetType ¶
func (i *Ingress) GetType() IngressType
type IngressType ¶
type IngressType string
const ( TypePath IngressType = "path" TypeHost IngressType = "host" )
type KubernetesDistribution ¶ added in v1.2.5
type KubernetesDistribution string
const ( K8sDistributionUnknown KubernetesDistribution = "unknown" K8sDistributionAWS KubernetesDistribution = "aws" K8sDistributionGCP KubernetesDistribution = "gcp" K8sDistributionAzure KubernetesDistribution = "azure" K8sDistributionDO KubernetesDistribution = "do" K8sDistributionScaleway KubernetesDistribution = "scaleway" K8sDistributionOpenShift KubernetesDistribution = "openshift" K8sDistributionLinode KubernetesDistribution = "linode" K8sDistributionCivo KubernetesDistribution = "civo" K8sDistributionOCI KubernetesDistribution = "oci" K8sDistributionOVHCloud KubernetesDistribution = "ovhcloud" K8sDistributionStackit KubernetesDistribution = "stackit" K8sDistributionVultr KubernetesDistribution = "vultr" )
type KubernetesPod ¶
type KubernetesPod struct {
// Annotations specifies the annotations for the Pods.
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
// Labels specifies the labels for the Pods.
// +optional
Labels map[string]string `json:"labels,omitempty"`
// ExtraEnv specifies the extra environment variables for the Pods.
// +optional
ExtraEnv []corev1.EnvVar `json:"extraEnv,omitempty"`
}
func (*KubernetesPod) DeepCopy ¶
func (in *KubernetesPod) DeepCopy() *KubernetesPod
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesPod.
func (*KubernetesPod) DeepCopyInto ¶
func (in *KubernetesPod) DeepCopyInto(out *KubernetesPod)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubernetesPod) GetAnnotations ¶
func (kp *KubernetesPod) GetAnnotations() map[string]string
func (*KubernetesPod) GetExtraEnv ¶
func (kp *KubernetesPod) GetExtraEnv() []corev1.EnvVar
func (*KubernetesPod) GetLabels ¶
func (kp *KubernetesPod) GetLabels() map[string]string
type KubernetesService ¶
type KubernetesService struct {
// Type specifies the type of the Service: "ClusterIP", "NodePort", "LoadBalancer".
// +kubebuilder:default="ClusterIP"
// +optional
Type corev1.ServiceType `json:"type,omitempty"`
// Annotations specifies the annotations for the Service.
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*KubernetesService) DeepCopy ¶
func (in *KubernetesService) DeepCopy() *KubernetesService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesService.
func (*KubernetesService) DeepCopyInto ¶
func (in *KubernetesService) DeepCopyInto(out *KubernetesService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubernetesService) GetAnnotations ¶
func (s *KubernetesService) GetAnnotations() map[string]string
func (*KubernetesService) GetType ¶
func (s *KubernetesService) GetType() corev1.ServiceType
type KubernetesStatefulSet ¶
type KubernetesStatefulSet struct {
// Annotations specifies the annotations for the StatefulSet.
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
// Pods specifies the configuration of the Pods of the Qdrant StatefulSet.
// +optional
Pods *KubernetesPod `json:"pods,omitempty"`
}
func (*KubernetesStatefulSet) DeepCopy ¶
func (in *KubernetesStatefulSet) DeepCopy() *KubernetesStatefulSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesStatefulSet.
func (*KubernetesStatefulSet) DeepCopyInto ¶
func (in *KubernetesStatefulSet) DeepCopyInto(out *KubernetesStatefulSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KubernetesStatefulSet) GetPods ¶
func (kss *KubernetesStatefulSet) GetPods() *KubernetesPod
type NGINXConfig ¶
type NGINXConfig struct {
// AllowedSourceRanges specifies the allowed CIDR source ranges for the ingress.
// +optional
AllowedSourceRanges []string `json:"allowedSourceRanges,omitempty"`
// GRPCHost specifies the host name for the GRPC ingress.
// +optional
GRPCHost *string `json:"grpcHost,omitempty"`
}
func (*NGINXConfig) DeepCopy ¶
func (in *NGINXConfig) DeepCopy() *NGINXConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NGINXConfig.
func (*NGINXConfig) DeepCopyInto ¶
func (in *NGINXConfig) DeepCopyInto(out *NGINXConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NGINXConfig) GetAllowedSourceRanges ¶
func (c *NGINXConfig) GetAllowedSourceRanges() []string
func (*NGINXConfig) GetGrpcHost ¶
func (c *NGINXConfig) GetGrpcHost() *string
type NodeStatus ¶
type NodeStatus struct {
// Name specifies the name of the node
// +optional
Name string `json:"name,omitempty"`
// StartedAt specifies the time when the node started (in RFC3339 format)
// +optional
StartedAt string `json:"started_at,omitempty"`
// States specifies the condition states of the node
// +optional
State map[corev1.PodConditionType]corev1.ConditionStatus `json:"state,omitempty"`
// Version specifies the version of Qdrant running on the node
// +optional
Version string `json:"version,omitempty"`
}
func (*NodeStatus) DeepCopy ¶
func (in *NodeStatus) DeepCopy() *NodeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatus.
func (*NodeStatus) DeepCopyInto ¶
func (in *NodeStatus) DeepCopyInto(out *NodeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Operation ¶
type Operation struct {
// Type specifies the type of the operation
Type OperationType `json:"type"`
// Phase specifies the phase of the operation
// +optional
Phase OperationPhase `json:"phase,omitempty"`
// Id specifies the id of the operation
// +optional
Id int `json:"id"`
// StartTime specifies the time when the operation started
// +optional
StartTime string `json:"startTime,omitempty"`
// CompletionTime specifies the time when the operation completed
// +optional
CompletionTime string `json:"completionTime,omitempty"`
// Message specifies the message of the operation
// +optional
Message string `json:"message,omitempty"`
// SubOperation specifies whether the operation is a sub-operation of another operation
// +optional
SubOperation bool `json:"subOperation,omitempty"`
// Steps specifies the steps the operation has performed
// +optional
Steps []OperationStep `json:"steps,omitempty"`
}
func (*Operation) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Operation.
func (*Operation) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperationPhase ¶
type OperationPhase string
const ( OperationPending OperationPhase = "Pending" OperationInProgress OperationPhase = "InProgress" OperationCompleted OperationPhase = "Completed" OperationFailed OperationPhase = "Failed" )
type OperationStep ¶
type OperationStep struct {
// Name specifies the name of the step
Name string `json:"name"`
// Id specifies the id of the step
// +optional
Id int `json:"id,omitempty"`
// Phase specifies the phase of the step
// +optional
Phase StepPhase `json:"phase,omitempty"`
// Message specifies the reason in case of failure
// +optional
Message string `json:"message,omitempty"`
}
func (*OperationStep) DeepCopy ¶
func (in *OperationStep) DeepCopy() *OperationStep
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperationStep.
func (*OperationStep) DeepCopyInto ¶
func (in *OperationStep) DeepCopyInto(out *OperationStep)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperationType ¶
type OperationType string
const ( BackupOperation OperationType = "Backup" ClusterCreationOperation OperationType = "ClusterCreation" HorizontalScalingOperation OperationType = "HorizontalScaling" VerticalScalingOperation OperationType = "VerticalScaling" VersionUpdateOperation OperationType = "VersionUpdate" SuspendOperation OperationType = "Suspend" ResumeOperation OperationType = "Resume" RestartOperation OperationType = "Restart" ResyncOperation OperationType = "Resync" RecoveryOperation OperationType = "Recovery" CrossNamespacedMigrationOperation OperationType = "CrossNamespacedMigration" )
type Pause ¶
type Pause struct {
// Owner specifies the owner of the pause request.
Owner string `json:"owner,omitempty"`
// Reason specifies the reason for the pause request.
Reason string `json:"reason,omitempty"`
// CreationTimestamp specifies the time when the pause request was created.
CreationTimestamp string `json:"creationTimestamp,omitempty"`
}
func (*Pause) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pause.
func (*Pause) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantCloudRegion ¶
type QdrantCloudRegion struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantCloudRegionSpec `json:"spec,omitempty"`
Status QdrantCloudRegionStatus `json:"status,omitempty"`
}
QdrantCloudRegion is the Schema for the qdrantcloudregions API
func (*QdrantCloudRegion) DeepCopy ¶
func (in *QdrantCloudRegion) DeepCopy() *QdrantCloudRegion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCloudRegion.
func (*QdrantCloudRegion) DeepCopyInto ¶
func (in *QdrantCloudRegion) DeepCopyInto(out *QdrantCloudRegion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantCloudRegion) DeepCopyObject ¶
func (in *QdrantCloudRegion) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantCloudRegionList ¶
type QdrantCloudRegionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantCloudRegion `json:"items"`
}
QdrantCloudRegionList contains a list of QdrantCloudRegion
func (*QdrantCloudRegionList) DeepCopy ¶
func (in *QdrantCloudRegionList) DeepCopy() *QdrantCloudRegionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCloudRegionList.
func (*QdrantCloudRegionList) DeepCopyInto ¶
func (in *QdrantCloudRegionList) DeepCopyInto(out *QdrantCloudRegionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantCloudRegionList) DeepCopyObject ¶
func (in *QdrantCloudRegionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantCloudRegionSpec ¶
type QdrantCloudRegionSpec struct {
// Id specifies the unique identifier of the region
Id string `json:"id,omitempty"`
// HelmRepositories specifies the list of helm repositories to be created to the region
// +optional
HelmRepositories []HelmRepository `json:"helmRepositories,omitempty"`
// HelmReleases specifies the list of helm releases to be created to the region
// +optional
HelmReleases []HelmRelease `json:"helmReleases,omitempty"`
}
QdrantCloudRegionSpec defines the desired state of QdrantCloudRegion
func (*QdrantCloudRegionSpec) DeepCopy ¶
func (in *QdrantCloudRegionSpec) DeepCopy() *QdrantCloudRegionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCloudRegionSpec.
func (*QdrantCloudRegionSpec) DeepCopyInto ¶
func (in *QdrantCloudRegionSpec) DeepCopyInto(out *QdrantCloudRegionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantCloudRegionStatus ¶
type QdrantCloudRegionStatus struct {
// Phase specifies the current phase of the region
// +optional
Phase RegionPhase `json:"phase,omitempty"`
// KubernetesVersion specifies the version of the Kubernetes cluster
// +optional
KubernetesVersion string `json:"k8sVersion,omitempty"`
// NumberOfNodes specifies the number of nodes in the Kubernetes cluster
// +optional
NumberOfNodes int `json:"numberOfNodes,omitempty"`
// Capabilities specifies the capabilities of the Kubernetes cluster
// +optional
Capabilities *RegionCapabilities `json:"capabilities,omitempty"`
// HelmRepositories specifies the status of the helm repositories
// +optional
HelmRepositories []ComponentStatus `json:"helmRepositories,omitempty"`
// HelmReleases specifies the status of the helm releases
// +optional
HelmReleases []ComponentStatus `json:"helmReleases,omitempty"`
// Message specifies the info explaining the current phase of the region
// +optional
Message string `json:"message,omitempty"`
// KubernetesDistribution specifies the distribution of the Kubernetes cluster
// +optional
KubernetesDistribution KubernetesDistribution `json:"k8sDistribution,omitempty"`
}
func (*QdrantCloudRegionStatus) DeepCopy ¶
func (in *QdrantCloudRegionStatus) DeepCopy() *QdrantCloudRegionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCloudRegionStatus.
func (*QdrantCloudRegionStatus) DeepCopyInto ¶
func (in *QdrantCloudRegionStatus) DeepCopyInto(out *QdrantCloudRegionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantCluster ¶
type QdrantCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantClusterSpec `json:"spec,omitempty"`
Status QdrantClusterStatus `json:"status,omitempty"`
}
QdrantCluster is the Schema for the qdrantclusters API
func GetQdrantClusterCrdForHash ¶
func GetQdrantClusterCrdForHash(qc QdrantCluster) QdrantCluster
GetQdrantClusterCrdForHash creates a QdrantCluster for the use of creating a hash for the provided QdrantCluster, It uses a subset only, so it ignores e.g. majority of the the status and some fields from the spec.
func (*QdrantCluster) DeepCopy ¶
func (in *QdrantCluster) DeepCopy() *QdrantCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCluster.
func (*QdrantCluster) DeepCopyInto ¶
func (in *QdrantCluster) DeepCopyInto(out *QdrantCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantCluster) DeepCopyObject ¶
func (in *QdrantCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterList ¶
type QdrantClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantCluster `json:"items"`
}
QdrantClusterList contains a list of QdrantCluster
func (*QdrantClusterList) DeepCopy ¶
func (in *QdrantClusterList) DeepCopy() *QdrantClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterList.
func (*QdrantClusterList) DeepCopyInto ¶
func (in *QdrantClusterList) DeepCopyInto(out *QdrantClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterList) DeepCopyObject ¶
func (in *QdrantClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterRestore ¶
type QdrantClusterRestore struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantClusterRestoreSpec `json:"spec,omitempty"`
Status QdrantClusterRestoreStatus `json:"status,omitempty"`
}
QdrantClusterRestore is the Schema for the qdrantclusterrestores API
func (*QdrantClusterRestore) DeepCopy ¶
func (in *QdrantClusterRestore) DeepCopy() *QdrantClusterRestore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRestore.
func (*QdrantClusterRestore) DeepCopyInto ¶
func (in *QdrantClusterRestore) DeepCopyInto(out *QdrantClusterRestore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterRestore) DeepCopyObject ¶
func (in *QdrantClusterRestore) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterRestoreList ¶
type QdrantClusterRestoreList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantClusterRestore `json:"items"`
}
QdrantClusterRestoreList contains a list of QdrantClusterRestore objects
func (*QdrantClusterRestoreList) DeepCopy ¶
func (in *QdrantClusterRestoreList) DeepCopy() *QdrantClusterRestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRestoreList.
func (*QdrantClusterRestoreList) DeepCopyInto ¶
func (in *QdrantClusterRestoreList) DeepCopyInto(out *QdrantClusterRestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterRestoreList) DeepCopyObject ¶
func (in *QdrantClusterRestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterRestoreSpec ¶
type QdrantClusterRestoreSpec struct {
// Source defines the source snapshot from which the restore will be done
Source RestoreSource `json:"source"`
// Destination defines the destination cluster where the source data will end up
Destination RestoreDestination `json:"destination"`
}
QdrantClusterRestoreSpec defines the desired state of QdrantClusterRestore
func (*QdrantClusterRestoreSpec) DeepCopy ¶
func (in *QdrantClusterRestoreSpec) DeepCopy() *QdrantClusterRestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRestoreSpec.
func (*QdrantClusterRestoreSpec) DeepCopyInto ¶
func (in *QdrantClusterRestoreSpec) DeepCopyInto(out *QdrantClusterRestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterRestoreStatus ¶
type QdrantClusterRestoreStatus struct {
// Phase is the current phase of the restore
// +kubebuilder:validation:Enum=Running;Skipped;Failed;Succeeded
Phase RestorePhase `json:"phase,omitempty"`
// Message from the operator in case of failures, like snapshot not found
// +optional
Message *string `json:"message,omitempty"`
}
QdrantClusterRestoreStatus defines the observed state of QdrantClusterRestore +kubebuilder:pruning:PreserveUnknownFields
func (*QdrantClusterRestoreStatus) DeepCopy ¶
func (in *QdrantClusterRestoreStatus) DeepCopy() *QdrantClusterRestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterRestoreStatus.
func (*QdrantClusterRestoreStatus) DeepCopyInto ¶
func (in *QdrantClusterRestoreStatus) DeepCopyInto(out *QdrantClusterRestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterScheduledSnapshot ¶
type QdrantClusterScheduledSnapshot struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantClusterScheduledSnapshotSpec `json:"spec,omitempty"`
Status QdrantClusterScheduledSnapshotStatus `json:"status,omitempty"`
}
QdrantClusterScheduledSnapshot is the Schema for the qdrantclusterscheduledsnapshots API
func (*QdrantClusterScheduledSnapshot) DeepCopy ¶
func (in *QdrantClusterScheduledSnapshot) DeepCopy() *QdrantClusterScheduledSnapshot
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterScheduledSnapshot.
func (*QdrantClusterScheduledSnapshot) DeepCopyInto ¶
func (in *QdrantClusterScheduledSnapshot) DeepCopyInto(out *QdrantClusterScheduledSnapshot)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterScheduledSnapshot) DeepCopyObject ¶
func (in *QdrantClusterScheduledSnapshot) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterScheduledSnapshotList ¶
type QdrantClusterScheduledSnapshotList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantClusterScheduledSnapshot `json:"items"`
}
QdrantClusterScheduledSnapshotList contains a list of QdrantCluster
func (*QdrantClusterScheduledSnapshotList) DeepCopy ¶
func (in *QdrantClusterScheduledSnapshotList) DeepCopy() *QdrantClusterScheduledSnapshotList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterScheduledSnapshotList.
func (*QdrantClusterScheduledSnapshotList) DeepCopyInto ¶
func (in *QdrantClusterScheduledSnapshotList) DeepCopyInto(out *QdrantClusterScheduledSnapshotList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterScheduledSnapshotList) DeepCopyObject ¶
func (in *QdrantClusterScheduledSnapshotList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterScheduledSnapshotSpec ¶
type QdrantClusterScheduledSnapshotSpec struct {
// Id specifies the unique identifier of the cluster
ClusterId string `json:"cluster-id"`
// Specifies short Id which identifies a schedule
// +kubebuilder:validation:MaxLength=8
ScheduleShortId string `json:"scheduleShortId"`
// Cron expression for frequency of creating snapshots, see https://en.wikipedia.org/wiki/Cron.
// The schedule is specified in UTC.
// +kubebuilder:validation:Pattern=`^(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)|((((\d+,)+\d+|([\d\*]+(\/|-)\d+)|\d+|\*) ?){5,7})$`
Schedule string `json:"schedule"`
// Retention of schedule in hours
// +kubebuilder:validation:Pattern=^[0-9]+h$
Retention string `json:"retention"`
}
QdrantClusterScheduledSnapshotSpec defines the desired state of QdrantCluster
func (*QdrantClusterScheduledSnapshotSpec) DeepCopy ¶
func (in *QdrantClusterScheduledSnapshotSpec) DeepCopy() *QdrantClusterScheduledSnapshotSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterScheduledSnapshotSpec.
func (*QdrantClusterScheduledSnapshotSpec) DeepCopyInto ¶
func (in *QdrantClusterScheduledSnapshotSpec) DeepCopyInto(out *QdrantClusterScheduledSnapshotSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterScheduledSnapshotStatus ¶
type QdrantClusterScheduledSnapshotStatus struct {
// Phase is the current phase of the scheduled snapshot
// +kubebuilder:validation:Enum=Active;Disabled
Phase ScheduledSnapshotPhase `json:"phase,omitempty"`
// The next scheduled time in UTC
Scheduled metav1.Time `json:"scheduled,omitempty"`
// Message from the operator in case of failures, like schedule not valid
// +optional
Message *string `json:"message,omitempty"`
}
QdrantClusterScheduledSnapshotStatus defines the observed state of the snapshot
func (*QdrantClusterScheduledSnapshotStatus) DeepCopy ¶
func (in *QdrantClusterScheduledSnapshotStatus) DeepCopy() *QdrantClusterScheduledSnapshotStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterScheduledSnapshotStatus.
func (*QdrantClusterScheduledSnapshotStatus) DeepCopyInto ¶
func (in *QdrantClusterScheduledSnapshotStatus) DeepCopyInto(out *QdrantClusterScheduledSnapshotStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterSnapshot ¶
type QdrantClusterSnapshot struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantClusterSnapshotSpec `json:"spec,omitempty"`
Status QdrantClusterSnapshotStatus `json:"status,omitempty"`
}
QdrantClusterSnapshot is the Schema for the qdrantclustersnapshots API
func (*QdrantClusterSnapshot) DeepCopy ¶
func (in *QdrantClusterSnapshot) DeepCopy() *QdrantClusterSnapshot
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterSnapshot.
func (*QdrantClusterSnapshot) DeepCopyInto ¶
func (in *QdrantClusterSnapshot) DeepCopyInto(out *QdrantClusterSnapshot)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterSnapshot) DeepCopyObject ¶
func (in *QdrantClusterSnapshot) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterSnapshotList ¶
type QdrantClusterSnapshotList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantClusterSnapshot `json:"items"`
}
QdrantClusterSnapshotList contains a list of QdrantClusterSnapshot
func (*QdrantClusterSnapshotList) DeepCopy ¶
func (in *QdrantClusterSnapshotList) DeepCopy() *QdrantClusterSnapshotList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterSnapshotList.
func (*QdrantClusterSnapshotList) DeepCopyInto ¶
func (in *QdrantClusterSnapshotList) DeepCopyInto(out *QdrantClusterSnapshotList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantClusterSnapshotList) DeepCopyObject ¶
func (in *QdrantClusterSnapshotList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantClusterSnapshotPhase ¶
type QdrantClusterSnapshotPhase string
const ( SnapshotRunning QdrantClusterSnapshotPhase = "Running" SnapshotSkipped QdrantClusterSnapshotPhase = "Skipped" SnapshotFailed QdrantClusterSnapshotPhase = "Failed" SnapshotSucceeded QdrantClusterSnapshotPhase = "Succeeded" )
type QdrantClusterSnapshotSpec ¶
type QdrantClusterSnapshotSpec struct {
// The cluster ID for which a Snapshot need to be taken
// The cluster should be in the same namespace as this QdrantClusterSnapshot is located
ClusterId string `json:"cluster-id"`
// The CreationTimestamp of the backup (expressed in Unix epoch format)
// +optional
CreationTimestamp int64 `json:"creation-timestamp,omitempty"`
// Specifies the short Id which identifies a schedule, if any.
// This field should not be set if the backup is made manually.
// +kubebuilder:validation:MaxLength=8
// +optional
ScheduleShortId *string `json:"scheduleShortId,omitempty"`
// The retention period of this snapshot in hours, if any.
// If not set, the backup doesn't have a retention period, meaning it will not be removed.
// +kubebuilder:validation:Pattern=^[0-9]+h$
// +optional
Retention *string `json:"retention,omitempty"`
}
func (*QdrantClusterSnapshotSpec) DeepCopy ¶
func (in *QdrantClusterSnapshotSpec) DeepCopy() *QdrantClusterSnapshotSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterSnapshotSpec.
func (*QdrantClusterSnapshotSpec) DeepCopyInto ¶
func (in *QdrantClusterSnapshotSpec) DeepCopyInto(out *QdrantClusterSnapshotSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterSnapshotStatus ¶
type QdrantClusterSnapshotStatus struct {
// +kubebuilder:validation:Enum=Running;Skipped;Failed;Succeeded
// +optional
Phase QdrantClusterSnapshotPhase `json:"phase,omitempty"`
// VolumeSnapshots is the list of volume snapshots that were created
// +optional
VolumeSnapshots []VolumeSnapshotInfo `json:"volumeSnapshots,omitempty"`
// The calculated time (in UTC) this snapshot will be deleted, if so.
// +optional
RetainUntil *metav1.Time `json:"retainUntil,omitempty"`
}
+kubebuilder:pruning:PreserveUnknownFields
func (*QdrantClusterSnapshotStatus) DeepCopy ¶
func (in *QdrantClusterSnapshotStatus) DeepCopy() *QdrantClusterSnapshotStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterSnapshotStatus.
func (*QdrantClusterSnapshotStatus) DeepCopyInto ¶
func (in *QdrantClusterSnapshotStatus) DeepCopyInto(out *QdrantClusterSnapshotStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantClusterSpec ¶
type QdrantClusterSpec struct {
// Id specifies the unique identifier of the cluster
Id string `json:"id"`
// Version specifies the version of Qdrant to deploy
Version string `json:"version"`
// Size specifies the desired number of Qdrant nodes in the cluster
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=30
Size int `json:"size"`
// ServicePerNode specifies whether the cluster should start a dedicated service for each node.
// +kubebuilder:default=true
// +optional
ServicePerNode bool `json:"servicePerNode,omitempty"`
// ClusterManager specifies whether to use the cluster manager for this cluster.
// The Python-operator will deploy a dedicated cluster manager instance.
// The Go-operator will use a shared instance.
// If not set, the default will be taken from the operator config.
// +optional
ClusterManager *bool `json:"clusterManager,omitempty"`
// Suspend specifies whether to suspend the cluster.
// If enabled, the cluster will be suspended and all related resources will be removed except the PVCs.
// +kubebuilder:default=false
// +optional
Suspend bool `json:"suspend,omitempty"`
// Pauses specifies a list of pause request by developer for manual maintenance.
// Operator will skip handling any changes in the CR if any pause request is present.
// +optional
Pauses []Pause `json:"pauses,omitempty"`
// Deprecated
// +optional
Distributed bool `json:"distributed,omitempty"`
// Image specifies the image to use for each Qdrant node.
// +optional
Image *QdrantImage `json:"image,omitempty"`
// Resources specifies the resources to allocate for each Qdrant node.
Resources Resources `json:"resources,omitempty"`
// Security specifies the security context for each Qdrant node.
// +optional
Security *QdrantSecurityContext `json:"security,omitempty"`
// Tolerations specifies the tolerations for each Qdrant node.
// +optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// NodeSelector specifies the node selector for each Qdrant node.
// +optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Config specifies the Qdrant configuration setttings for the clusters.
// +optional
Config *QdrantConfiguration `json:"config,omitempty"`
// Ingress specifies the ingress for the cluster.
// +optional
Ingress *Ingress `json:"ingress,omitempty"`
// Service specifies the configuration of the Qdrant Kubernetes Service.
// +optional
Service *KubernetesService `json:"service,omitempty"`
// StatefulSet specifies the configuration of the Qdrant Kubernetes StatefulSet.
// +optional
StatefulSet *KubernetesStatefulSet `json:"statefulSet,omitempty"`
// StorageClassNames specifies the storage class names for db and snapshots.
// +optional
StorageClassNames *StorageClassNames `json:"storageClassNames,omitempty"`
// TopologySpreadConstraints specifies the topology spread constraints for the cluster.
// +optional
TopologySpreadConstraints *[]corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
// PodDisruptionBudget specifies the pod disruption budget for the cluster.
// +optional
PodDisruptionBudget *policyv1.PodDisruptionBudgetSpec `json:"podDisruptionBudget,omitempty"`
}
QdrantClusterSpec defines the desired state of QdrantCluster +kubebuilder:pruning:PreserveUnknownFields
func (*QdrantClusterSpec) DeepCopy ¶
func (in *QdrantClusterSpec) DeepCopy() *QdrantClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterSpec.
func (*QdrantClusterSpec) DeepCopyInto ¶
func (in *QdrantClusterSpec) DeepCopyInto(out *QdrantClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (QdrantClusterSpec) Validate ¶
func (s QdrantClusterSpec) Validate() error
Validates if there are incorrect settings in the CRD
type QdrantClusterStatus ¶
type QdrantClusterStatus struct {
// Phase specifies the phase of the cluster
// +optional
Phase ClusterPhase `json:"phase,omitempty"`
// Reason specifies the reason for the phase of the cluster
// +optional
Reason string `json:"reason,omitempty"`
// AvailableNodes specifies the number of available nodes in the cluster
// +optional
AvailableNodes int `json:"availableNodes,omitempty"`
// AvailableNodeIndexes specifies the indexes of the individual nodes in the cluster
// The number of indexes should be equal with the AvailableNodes field.
// +optional
AvailableNodeIndexes []int `json:"availableNodeIndexes,omitempty"`
// DeleteInProgessNodeIndexes specifies the indexes of the nodes in the cluster which are in progress of deleting and required to be deleted.
// The indexes in this field are part of the AvailableNodeIndexes as well and cannot be re-used anymore before they are fully dropped.
// Meaning that if the cluster-manager has (async) started the process of deleting nodes, due to a scale-down, there is no way to revert this operaton.
// If the cluster want to scale-up concurrently (aka the delete is in progress), new nodes are required to accomplish.
// +optional
DeleteInProgessNodeIndexes []int `json:"deleteInProgressNodeIndexes,omitempty"`
// BootstrapNode specifies the node in the cluster which will be used for bootstrapping a new node.
// Should be a value from AvailableNodeIndexes.
// As default the value from AvailableNodeIndexes[0] will be used.
// +optional
BootstrapNode int `json:"bootstrapNode,omitempty"`
// If set the operator will scale down 1 peer and reset the bool.
// If you want to remove more then 1 peer, you need to repeat setting this bool
// +optional
ScaleDownAllowed bool `json:"scaleDownAllowed,omitempty"`
// The node index used in a scale down (see ScaleDownAllowed)
// If this field is not set the last index in AvailableNodeIndexes will be used.
ScaleDownNodeIndex *int `json:"ScaleDownNodeIndex,omitempty"`
// Conditions specifies the conditions of different checks on the cluster
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// Operations tracks list of recent operation on the cluster. Operator uses this field to track the progress of an operation.
// In operator V2 this field is deprecated and Kubernetes events are used instead.
// +optional
Operations []Operation `json:"operations,omitempty"`
// Nodes specifies the status of the nodes in the cluster
// +optional
Nodes map[string]NodeStatus `json:"nodes,omitempty"`
// The next time to invoke the cluster-manager in UTC
// +optional
NextClusterManagerInvocation metav1.Time `json:"nextClusterManagerInvocation,omitempty"`
// The version (to be) used in the cluster.
// This version can differ from the spec, because version updates need to be done in order (see `update-path` annotation)
// +optional
Version string `json:"version,omitempty"`
}
QdrantClusterStatus defines the observed state of QdrantCluster +kubebuilder:pruning:PreserveUnknownFields
func (*QdrantClusterStatus) DeepCopy ¶
func (in *QdrantClusterStatus) DeepCopy() *QdrantClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantClusterStatus.
func (*QdrantClusterStatus) DeepCopyInto ¶
func (in *QdrantClusterStatus) DeepCopyInto(out *QdrantClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantConfiguration ¶
type QdrantConfiguration struct {
// Collection specifies the default collection configuration for Qdrant.
// +optional
Collection *QdrantConfigurationCollection `json:"collection,omitempty"`
// LogLevel specifies the log level for Qdrant.
// +optional
LogLevel *string `json:"log_level,omitempty"`
// Service specifies the service level configuration for Qdrant.
// +optional
Service *QdrantConfigurationService `json:"service,omitempty"`
// TLS specifies the TLS configuration for Qdrant.
// +optional
TLS *QdrantConfigurationTLS `json:"tls,omitempty"`
// Storage specifies the storage configuration for Qdrant.
// +optional
Storage *StorageConfig `json:"storage,omitempty"`
}
func (*QdrantConfiguration) DeepCopy ¶
func (in *QdrantConfiguration) DeepCopy() *QdrantConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantConfiguration.
func (*QdrantConfiguration) DeepCopyInto ¶
func (in *QdrantConfiguration) DeepCopyInto(out *QdrantConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantConfiguration) GetService ¶
func (c *QdrantConfiguration) GetService() *QdrantConfigurationService
func (*QdrantConfiguration) GetTLS ¶
func (c *QdrantConfiguration) GetTLS() *QdrantConfigurationTLS
type QdrantConfigurationCollection ¶
type QdrantConfigurationCollection struct {
// ReplicationFactor specifies the default number of replicas of each shard
// +optional
ReplicationFactor *int64 `json:"replication_factor,omitempty"`
// WriteConsistencyFactor specifies how many replicas should apply the operation to consider it successful
// +optional
WriteConsistencyFactor *int64 `json:"write_consistency_factor,omitempty"`
// Vectors specifies the default parameters for vectors
// +optional
Vectors *QdrantConfigurationCollectionVectors `json:"vectors,omitempty"`
}
func (*QdrantConfigurationCollection) DeepCopy ¶
func (in *QdrantConfigurationCollection) DeepCopy() *QdrantConfigurationCollection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantConfigurationCollection.
func (*QdrantConfigurationCollection) DeepCopyInto ¶
func (in *QdrantConfigurationCollection) DeepCopyInto(out *QdrantConfigurationCollection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantConfigurationCollectionVectors ¶
type QdrantConfigurationCollectionVectors struct {
// OnDisk specifies whether vectors should be stored in memory or on disk.
// +optional
OnDisk *bool `json:"on_disk,omitempty"`
}
func (*QdrantConfigurationCollectionVectors) DeepCopy ¶
func (in *QdrantConfigurationCollectionVectors) DeepCopy() *QdrantConfigurationCollectionVectors
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantConfigurationCollectionVectors.
func (*QdrantConfigurationCollectionVectors) DeepCopyInto ¶
func (in *QdrantConfigurationCollectionVectors) DeepCopyInto(out *QdrantConfigurationCollectionVectors)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QdrantConfigurationService ¶
type QdrantConfigurationService struct {
// ApiKey for the qdrant instance
// +optional
ApiKey *QdrantSecretKeyRef `json:"api_key,omitempty"`
// ReadOnlyApiKey for the qdrant instance
// +optional
ReadOnlyApiKey *QdrantSecretKeyRef `json:"read_only_api_key,omitempty"`
// JwtRbac specifies whether to enable jwt rbac for the qdrant instance
// Default is false
// +optional
JwtRbac *bool `json:"jwt_rbac,omitempty"`
// EnableTLS specifies whether to enable tls for the qdrant instance
// Default is false
// +optional
EnableTLS *bool `json:"enable_tls,omitempty"`
}
func (*QdrantConfigurationService) DeepCopy ¶
func (in *QdrantConfigurationService) DeepCopy() *QdrantConfigurationService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantConfigurationService.
func (*QdrantConfigurationService) DeepCopyInto ¶
func (in *QdrantConfigurationService) DeepCopyInto(out *QdrantConfigurationService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantConfigurationService) GetApiKey ¶
func (c *QdrantConfigurationService) GetApiKey() *QdrantSecretKeyRef
func (*QdrantConfigurationService) GetEnableTLS ¶
func (c *QdrantConfigurationService) GetEnableTLS() bool
func (*QdrantConfigurationService) GetJwtRbac ¶
func (c *QdrantConfigurationService) GetJwtRbac() bool
func (*QdrantConfigurationService) GetReadOnlyApiKey ¶
func (c *QdrantConfigurationService) GetReadOnlyApiKey() *QdrantSecretKeyRef
type QdrantConfigurationTLS ¶
type QdrantConfigurationTLS struct {
// Reference to the secret containing the server certificate chain file
// +optional
Cert *QdrantSecretKeyRef `json:"cert,omitempty"`
// Reference to the secret containing the server private key file
// +optional
Key *QdrantSecretKeyRef `json:"key,omitempty"`
}
func (*QdrantConfigurationTLS) DeepCopy ¶
func (in *QdrantConfigurationTLS) DeepCopy() *QdrantConfigurationTLS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantConfigurationTLS.
func (*QdrantConfigurationTLS) DeepCopyInto ¶
func (in *QdrantConfigurationTLS) DeepCopyInto(out *QdrantConfigurationTLS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantConfigurationTLS) GetCert ¶
func (c *QdrantConfigurationTLS) GetCert() *QdrantSecretKeyRef
func (*QdrantConfigurationTLS) GetKey ¶
func (c *QdrantConfigurationTLS) GetKey() *QdrantSecretKeyRef
type QdrantImage ¶
type QdrantImage struct {
// Repository specifies the repository of the Qdrant image.
// If not specified defaults the config of the operator (or qdrant/qdrant if not specified in operator).
// +optional
Repository *string `json:"repository,omitempty"`
// PullPolicy specifies the image pull policy for the Qdrant image.
// If not specified defaults the config of the operator (or IfNotPresent if not specified in operator).
// +optional
PullPolicy *corev1.PullPolicy `json:"pullPolicy,omitempty"`
// PullSecretName specifies the pull secret for the Qdrant image.
// +optional
PullSecretName *string `json:"pullSecretName,omitempty"`
}
func (*QdrantImage) DeepCopy ¶
func (in *QdrantImage) DeepCopy() *QdrantImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantImage.
func (*QdrantImage) DeepCopyInto ¶
func (in *QdrantImage) DeepCopyInto(out *QdrantImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantImage) GetImagePullSecrets ¶
func (qi *QdrantImage) GetImagePullSecrets() *string
func (*QdrantImage) GetPullPolicy ¶
func (qi *QdrantImage) GetPullPolicy() *corev1.PullPolicy
func (*QdrantImage) GetRepository ¶
func (qi *QdrantImage) GetRepository() *string
type QdrantSecretKeyRef ¶
type QdrantSecretKeyRef struct {
// SecretKeyRef to the secret containing data to configure the qdrant instance
// +optional
SecretKeyRef *corev1.SecretKeySelector `json:"secretKeyRef,omitempty"`
}
func (*QdrantSecretKeyRef) DeepCopy ¶
func (in *QdrantSecretKeyRef) DeepCopy() *QdrantSecretKeyRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantSecretKeyRef.
func (*QdrantSecretKeyRef) DeepCopyInto ¶
func (in *QdrantSecretKeyRef) DeepCopyInto(out *QdrantSecretKeyRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantSecretKeyRef) GetQdrantSecretKeyRef ¶
func (r *QdrantSecretKeyRef) GetQdrantSecretKeyRef() *corev1.SecretKeySelector
type QdrantSecurityContext ¶
type QdrantSecurityContext struct {
// User specifies the user to run the Qdrant process as.
User int64 `json:"user,omitempty"`
// Group specifies the group to run the Qdrant process as.
Group int64 `json:"group,omitempty"`
// FsGroup specifies file system group to run the Qdrant process as.
// +optional
FsGroup *int64 `json:"fsGroup,omitempty"`
}
func (*QdrantSecurityContext) DeepCopy ¶
func (in *QdrantSecurityContext) DeepCopy() *QdrantSecurityContext
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantSecurityContext.
func (*QdrantSecurityContext) DeepCopyInto ¶
func (in *QdrantSecurityContext) DeepCopyInto(out *QdrantSecurityContext)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantSecurityContext) GetFsGroup ¶
func (c *QdrantSecurityContext) GetFsGroup() *int64
func (*QdrantSecurityContext) GetGroup ¶
func (c *QdrantSecurityContext) GetGroup() *int64
func (*QdrantSecurityContext) GetUser ¶
func (c *QdrantSecurityContext) GetUser() *int64
type QdrantVersion ¶
type QdrantVersion struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec QdrantVersionSpec `json:"spec,omitempty"`
}
QdrantVersion is the Schema for the qdrantversions API
func (*QdrantVersion) DeepCopy ¶
func (in *QdrantVersion) DeepCopy() *QdrantVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantVersion.
func (*QdrantVersion) DeepCopyInto ¶
func (in *QdrantVersion) DeepCopyInto(out *QdrantVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantVersion) DeepCopyObject ¶
func (in *QdrantVersion) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantVersionList ¶
type QdrantVersionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []QdrantVersion `json:"items"`
}
QdrantVersionList contains a list of QdrantVersion
func (*QdrantVersionList) DeepCopy ¶
func (in *QdrantVersionList) DeepCopy() *QdrantVersionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantVersionList.
func (*QdrantVersionList) DeepCopyInto ¶
func (in *QdrantVersionList) DeepCopyInto(out *QdrantVersionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QdrantVersionList) DeepCopyObject ¶
func (in *QdrantVersionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QdrantVersionSpec ¶
type QdrantVersionSpec struct {
// Version number (should be semver compliant).
// E.g. "v1.10.1"
Version string `json:"version,omitempty"`
// If set, this version is default for new clusters on Cloud.
// There should be only 1 Qdrant version in the platform set as default.
// +kubebuilder:default=false
// +optional
IsDefault bool `json:"isDefault,omitempty"`
// Full docker image to use for this version.
// If empty, a default image will be derived from Version (and qdrant/qdrant is assumed).
// +optional
Image string `json:"image,omitempty"`
// +kubebuilder:default=false
// +optional
Unavailable bool `json:"unavailable,omitempty"`
// If set, this version is no longer actively supported.
// +kubebuilder:default=false
// +optional
IsEndOfLife bool `json:"isEndOfLife,omitempty"`
// If set, this version can only be used by accounts with given IDs.
// +optional
AccountIDs []string `json:"accountIds,omitempty"`
// If set, this version can only be used by accounts that have been given the listed privileges.
// +optional
AccountPrivileges []string `json:"accountPrivileges,omitempty"`
// General remarks for human reading
// +optional
Remarks string `json:"remarks,omitempty"`
// Release Notes URL for the specified version
ReleaseNotesURL string `json:"releaseNotesURL,omitempty"`
}
QdrantVersionSpec defines the desired state of QdrantVersion
func (*QdrantVersionSpec) DeepCopy ¶
func (in *QdrantVersionSpec) DeepCopy() *QdrantVersionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantVersionSpec.
func (*QdrantVersionSpec) DeepCopyInto ¶
func (in *QdrantVersionSpec) DeepCopyInto(out *QdrantVersionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionCapabilities ¶
type RegionCapabilities struct {
// VolumeSnapshot specifies whether the Kubernetes cluster supports volume snapshot
// +optional
VolumeSnapshot *bool `json:"volumeSnapshot,omitempty"`
// VolumeExpansion specifies whether the Kubernetes cluster supports volume expansion
// +optional
VolumeExpansion *bool `json:"volumeExpansion,omitempty"`
}
func (*RegionCapabilities) DeepCopy ¶
func (in *RegionCapabilities) DeepCopy() *RegionCapabilities
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionCapabilities.
func (*RegionCapabilities) DeepCopyInto ¶
func (in *RegionCapabilities) DeepCopyInto(out *RegionCapabilities)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionPhase ¶
type RegionPhase string
const ( RegionPhaseReady RegionPhase = "Ready" RegionPhaseNotReady RegionPhase = "NotReady" FailedToSync RegionPhase = "FailedToSync" )
type ResourceRequests ¶
type ResourceRequests struct {
// CPU specifies the CPU request for each Qdrant node.
// +optional
CPU string `json:"cpu,omitempty"`
// Memory specifies the memory request for each Qdrant node.
// +optional
Memory string `json:"memory,omitempty"`
}
func (*ResourceRequests) DeepCopy ¶
func (in *ResourceRequests) DeepCopy() *ResourceRequests
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequests.
func (*ResourceRequests) DeepCopyInto ¶
func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ResourceRequests) Validate ¶
func (s ResourceRequests) Validate(base string) error
Validates if there are incorrect settings in the CRD
type Resources ¶
type Resources struct {
// CPU specifies the CPU limit for each Qdrant node.
CPU string `json:"cpu,omitempty"`
// Memory specifies the memory limit for each Qdrant node.
Memory string `json:"memory,omitempty"`
// Storage specifies the storage amount for each Qdrant node.
Storage string `json:"storage,omitempty"`
// Requests specifies the resource requests for each Qdrant node.
// +optional
Requests ResourceRequests `json:"requests,omitempty"`
}
func (*Resources) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources.
func (*Resources) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Resources) GetRequestCPU ¶
func (Resources) GetRequestMemory ¶
type RestoreDestination ¶
type RestoreDestination struct {
// Name of the destination cluster
Name string `json:"name"`
// Namespace of the destination cluster
Namespace string `json:"namespace"`
}
func (*RestoreDestination) DeepCopy ¶
func (in *RestoreDestination) DeepCopy() *RestoreDestination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreDestination.
func (*RestoreDestination) DeepCopyInto ¶
func (in *RestoreDestination) DeepCopyInto(out *RestoreDestination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestorePhase ¶
type RestorePhase string
const ( RestoreRunning RestorePhase = "Running" RestoreSkipped RestorePhase = "Skipped" RestoreFailed RestorePhase = "Failed" RestoreSucceeded RestorePhase = "Succeeded" )
type RestoreSource ¶
type RestoreSource struct {
// SnapshotName is the name of the snapshot from which we wish to restore
SnapshotName string `json:"snapshotName"`
// Namespace of the snapshot
Namespace string `json:"namespace"`
}
func (*RestoreSource) DeepCopy ¶
func (in *RestoreSource) DeepCopy() *RestoreSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSource.
func (*RestoreSource) DeepCopyInto ¶
func (in *RestoreSource) DeepCopyInto(out *RestoreSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScheduledSnapshotPhase ¶
type ScheduledSnapshotPhase string
const ( ScheduleActive ScheduledSnapshotPhase = "Active" ScheduleDisabled ScheduledSnapshotPhase = "Disabled" )
type StorageClassNames ¶
type StorageClassNames struct {
// DB specifies the storage class name for db volume.
// +optional
DB *string `json:"db,omitempty"`
// Snapshots specifies the storage class name for snapshots volume.
// +optional
Snapshots *string `json:"snapshots,omitempty"`
}
func (*StorageClassNames) DeepCopy ¶
func (in *StorageClassNames) DeepCopy() *StorageClassNames
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageClassNames.
func (*StorageClassNames) DeepCopyInto ¶
func (in *StorageClassNames) DeepCopyInto(out *StorageClassNames)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StorageClassNames) GetDB ¶
func (n *StorageClassNames) GetDB() *string
func (*StorageClassNames) GetSnapshots ¶
func (n *StorageClassNames) GetSnapshots() *string
type StorageConfig ¶ added in v1.2.5
type StorageConfig struct {
// AsyncScorer enables io_uring when rescoring
// +optional
AsyncScorer *bool `json:"asyncScorer,omitempty"`
// Performance configuration
// +optional
Performance *StoragePerformanceConfig `json:"performance,omitempty"`
}
func (*StorageConfig) DeepCopy ¶ added in v1.2.5
func (in *StorageConfig) DeepCopy() *StorageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageConfig.
func (*StorageConfig) DeepCopyInto ¶ added in v1.2.5
func (in *StorageConfig) DeepCopyInto(out *StorageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StoragePerformanceConfig ¶ added in v1.2.5
type StoragePerformanceConfig struct {
// OptimizerCPUBudget defines the number of CPU allocation.
// If 0 - auto selection, keep 1 or more CPUs unallocated depending on CPU size
// If negative - subtract this number of CPUs from the available CPUs.
// If positive - use this exact number of CPUs.
// +optional
OptimizerCPUBudget *int64 `json:"optimizerCPUBudget,omitempty"`
}
func (*StoragePerformanceConfig) DeepCopy ¶ added in v1.2.5
func (in *StoragePerformanceConfig) DeepCopy() *StoragePerformanceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StoragePerformanceConfig.
func (*StoragePerformanceConfig) DeepCopyInto ¶ added in v1.2.5
func (in *StoragePerformanceConfig) DeepCopyInto(out *StoragePerformanceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TraefikConfig ¶
type TraefikConfig struct {
// AllowedSourceRanges specifies the allowed CIDR source ranges for the ingress.
// +optional
AllowedSourceRanges []string `json:"allowedSourceRanges,omitempty"`
}
func (*TraefikConfig) DeepCopy ¶
func (in *TraefikConfig) DeepCopy() *TraefikConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TraefikConfig.
func (*TraefikConfig) DeepCopyInto ¶
func (in *TraefikConfig) DeepCopyInto(out *TraefikConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TraefikConfig) GetAllowedSourceRanges ¶
func (c *TraefikConfig) GetAllowedSourceRanges() []string
type VolumeSnapshotInfo ¶
type VolumeSnapshotInfo struct {
// VolumeSnapshotName is the name of the volume snapshot
VolumeSnapshotName string `json:"volumeSnapshotName"`
// VolumeName is the name of the volume that was backed up
VolumeName string `json:"volumeName"`
// ReadyToUse indicates if the volume snapshot is ready to use
// +optional
ReadyToUse bool `json:"readyToUse"`
// SnapshotHandle is the identifier of the volume snapshot in the respective cloud provider
// +optional
SnapshotHandle string `json:"snapshotHandle,omitempty"`
}
func (*VolumeSnapshotInfo) DeepCopy ¶
func (in *VolumeSnapshotInfo) DeepCopy() *VolumeSnapshotInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSnapshotInfo.
func (*VolumeSnapshotInfo) DeepCopyInto ¶
func (in *VolumeSnapshotInfo) DeepCopyInto(out *VolumeSnapshotInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.