v1beta1

package
v0.7.17 Latest Latest
Warning

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

Go to latest
Published: Aug 9, 2023 License: Apache-2.0 Imports: 23 Imported by: 1

Documentation

Overview

package v1beta1 contains API Schema definitions for the v1beta1 API group +kubebuilder:object:generate=true +groupName=milvus.io

Index

Constants

View Source
const (
	StorageTypeMinIO = "MinIO"
	StorageTypeS3    = "S3"
)
View Source
const (
	// StatusPending is the status of creating or restarting.
	StatusPending MilvusHealthStatus = "Pending"
	// StatusHealthy is the status of healthy.
	StatusHealthy MilvusHealthStatus = "Healthy"
	// StatusUnhealthy is the status of unhealthy.
	StatusUnhealthy MilvusHealthStatus = "Unhealthy"
	// StatusDeleting is the status of deleting.
	StatusDeleting MilvusHealthStatus = "Deleting"
	// StatusStopped is the status of stopped.
	StatusStopped MilvusHealthStatus = "Stopped"

	// EtcdReady means the Etcd is ready.
	EtcdReady MilvusConditionType = "EtcdReady"
	// StorageReady means the Storage is ready.
	StorageReady MilvusConditionType = "StorageReady"
	// MsgStreamReady means the MsgStream is ready.
	MsgStreamReady MilvusConditionType = "MsgStreamReady"
	// MilvusReady means all components of Milvus are ready.
	MilvusReady MilvusConditionType = "MilvusReady"
	// MilvusUpdated means the Milvus has updated according to its spec.
	MilvusUpdated MilvusConditionType = "MilvusUpdated"

	// ReasonEndpointsHealthy means the endpoint is healthy
	ReasonEndpointsHealthy string = "EndpointsHealthy"
	// ReasonMilvusHealthy means milvus cluster is healthy
	ReasonMilvusHealthy string = "ReasonMilvusHealthy"
	// ReasonMilvusComponentNotHealthy means at least one of milvus component is not healthy
	ReasonMilvusComponentNotHealthy string = "MilvusComponentNotHealthy"
	// ReasonMilvusStopped means milvus cluster is stopped
	ReasonMilvusStopped string = "MilvusStopped"
	// ReasonMilvusStopping means milvus cluster is stopping
	ReasonMilvusStopping string = "MilvusStopping"
	// ReasonMilvusComponentsUpdated means milvus components are updated
	ReasonMilvusComponentsUpdated string = "MilvusComponentsUpdated"
	// ReasonMilvusComponentsUpdating means some milvus components are not updated
	ReasonMilvusComponentsUpdating string = "MilvusComponentsUpdating"
	// ReasonMilvusUpgradingImage means milvus is upgrading image
	ReasonMilvusUpgradingImage string = "MilvusUpgradingImage"
	// ReasonMilvusDowngradingImage means milvus is downgrading image
	ReasonMilvusDowngradingImage string = "MilvusDowngradingImage"

	ReasonEtcdReady          = "EtcdReady"
	ReasonEtcdNotReady       = "EtcdNotReady"
	ReasonS3Ready            = "S3StorageAssumeReady"
	ReasonStorageReady       = "StorageReady"
	ReasonStorageNotReady    = "StorageNotReady"
	ReasonMsgStreamReady     = "MsgStreamReady"
	ReasonMsgStreamNotReady  = "MsgStreamNotReady"
	ReasonSecretNotExist     = "SecretNotExist"
	ReasonSecretErr          = "SecretError"
	ReasonSecretDecodeErr    = "SecretDecodeError"
	ReasonClientErr          = "ClientError"
	ReasonDependencyNotReady = "DependencyNotReady"
)
View Source
const (
	MilvusIO             = "milvus.io"
	OperatorVersionLabel = MilvusIO + "/operator-version"
	// DependencyValuesLegacySyncedAnnotation : For legacy versions before v0.5.1, default value is not set to CR.
	// So if they upgrade to v0.5.1+, if the dependency default values in milvus-helm updated
	// the inCluster dependencies will get restarted. So we sync defaults first to prevent this
	DependencyValuesLegacySyncedAnnotation = MilvusIO + "/dependency-values-legacy-synced"
	DependencyValuesMergedAnnotation       = MilvusIO + "/dependency-values-merged"
	LegacyVersion                          = "v0.5.0-legacy"
	FalseStr                               = "false"
	TrueStr                                = "true"
	UpgradeAnnotation                      = MilvusIO + "/upgrade"
	AnnotationUpgrading                    = "upgrading"
	AnnotationUpgraded                     = "upgraded"
	StoppedAtAnnotation                    = MilvusIO + "/stopped-at"

	// PodServiceLabelAddedAnnotation is to indicate whether the milvus.io/service=true label is added to proxy & standalone pods
	// previously, we use milvus.io/component: proxy / standalone; to select the service pods
	// but now we want to support a standalone updating to cluster without downtime
	// so instead we use milvus.io/service="true" to select the service pods
	PodServiceLabelAddedAnnotation = MilvusIO + "/pod-service-label-added"
	// ServiceLabel is the label to indicate whether the pod is a service pod
	ServiceLabel = "milvus.io/service"
)
View Source
const EnableActiveStandByConfig = "enableActiveStandby"

EnableActiveStandByConfig is a config in coordinators to determine whether a coordinator can be rolling updated

View Source
const RocksMQPersistPath = "/var/lib/milvus"

Variables

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

	// for code-generator
	SchemeGroupVersion = GroupVersion

	// 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
)
View Source
var (
	// NewReplicaSetAvailableReason is the Complelete Reason
	NewReplicaSetAvailableReason = "NewReplicaSetAvailable"
	DeploymentPausedReason       = "DeploymentPaused"
)
View Source
var (
	Version           = "unknown"
	MilvusHelmVersion = "unknown"
)
View Source
var MilvusUpgradeKind = reflect.TypeOf(MilvusUpgrade{}).Name()

Functions

func AddPrefixV added in v0.7.0

func AddPrefixV(version string) string

func InitLabelAnnotation added in v0.7.0

func InitLabelAnnotation(obj client.Object)

InitLabelAnnotation init nil label and annotation for object

func RemovePrefixV added in v0.7.0

func RemovePrefixV(version string) string

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Component

type Component struct {
	ComponentSpec `json:",inline"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Minimum=0
	Replicas *int32 `json:"replicas,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=65535
	// not used for now
	Port int32 `json:"port,omitempty"`

	// SideCars is same as []corev1.Container, we use a Values here to avoid the CRD become too large
	// +kubebuilder:validation:Optional
	// +kubebuilder:pruning:PreserveUnknownFields
	SideCars []Values `json:"sidecars,omitempty"`

	// SideCars is same as []corev1.Container, we use a Values here to avoid the CRD become too large
	// +kubebuilder:validation:Optional
	// +kubebuilder:pruning:PreserveUnknownFields
	InitContainers []Values `json:"initContainers,omitempty"`
}

func (*Component) DeepCopy

func (in *Component) DeepCopy() *Component

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

func (*Component) DeepCopyInto

func (in *Component) DeepCopyInto(out *Component)

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

type ComponentDeployStatus added in v0.7.4

type ComponentDeployStatus struct {
	// Generation of the deployment
	Generation int64 `json:"generation"`
	// Image of the deployment
	// it's used to check if the component is updated in rolling update
	Image string `json:"image"`
	// Status of the deployment
	Status appsv1.DeploymentStatus `json:"status"`
}

func (*ComponentDeployStatus) DeepCopy added in v0.7.4

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

func (*ComponentDeployStatus) DeepCopyInto added in v0.7.4

func (in *ComponentDeployStatus) DeepCopyInto(out *ComponentDeployStatus)

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

func (ComponentDeployStatus) GetState added in v0.7.5

type ComponentSpec

type ComponentSpec struct {
	// Paused is used to pause the component's deployment rollout
	// +kubebuilder:validation:Optional
	Paused bool `json:"paused"`

	// +kubebuilder:validation:Optional
	PodLabels map[string]string `json:"podLabels,omitempty"`

	// +kubebuilder:validation:Optional
	PodAnnotations map[string]string `json:"podAnnotations,omitempty"`

	// +kubebuilder:validation:Optional
	Image string `json:"image,omitempty"`

	// Commands override the default commands & args of the container
	// +kubebuilder:validation:Optional
	Commands []string `json:"commands,omitempty"`

	// +kubebuilder:validation:Optional
	ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`

	// +kubebuilder:validation:Optional
	ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`

	// +kubebuilder:validation:Optional
	Env []corev1.EnvVar `json:"env,omitempty"`

	// SchedulerName is the name of the scheduler to use for one component
	// +kubebuilder:validation:Optional
	SchedulerName string `json:"schedulerName,omitempty"`

	// +kubebuilder:validation:Optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	Affinity *corev1.Affinity `json:"affinity,omitempty"`

	// +kubebuilder:validation:Optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// +kubebuilder:validation:Optional
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// +kubebuilder:validation:Optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`

	// Volumes is same as corev1.Volume, we use a Values here to avoid the CRD become too large
	// +kubebuilder:validation:Optional
	// +kubebuilder:pruning:PreserveUnknownFields
	Volumes []Values `json:"volumes,omitempty"`

	// ServiceAccountName usually used for situations like accessing s3 with IAM role
	// +kubebuilder:validation:Optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// PriorityClassName indicates the pod's priority.
	// +kubebuilder:validation:Optional
	PriorityClassName string `json:"priorityClassName,omitempty"`
}

func (*ComponentSpec) DeepCopy

func (in *ComponentSpec) DeepCopy() *ComponentSpec

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

func (*ComponentSpec) DeepCopyInto

func (in *ComponentSpec) DeepCopyInto(out *ComponentSpec)

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

type ComponentType

type ComponentType string
const (
	RootCoord  ComponentType = "rootCoord"
	DataCoord  ComponentType = "dataCoord"
	QueryCoord ComponentType = "queryCoord"
	IndexCoord ComponentType = "indexCoord"
	DataNode   ComponentType = "dataNode"
	QueryNode  ComponentType = "queryNode"
	IndexNode  ComponentType = "indexNode"
	Proxy      ComponentType = "proxy"
)

func (ComponentType) String

func (t ComponentType) String() string

type DependencyDeletionPolicy

type DependencyDeletionPolicy string
const (
	DeletionPolicyDelete DependencyDeletionPolicy = "Delete"
	DeletionPolicyRetain DependencyDeletionPolicy = "Retain"
)

type DeploymentState added in v0.7.5

type DeploymentState string

DeploymentState is defined according to https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#deployment-status It's enum of "Progressing", "Complete", "Failed", "Paused"

const (
	DeploymentProgressing DeploymentState = "Progressing"
	DeploymentComplete    DeploymentState = "Complete"
	DeploymentFailed      DeploymentState = "Failed"
	DeploymentPaused      DeploymentState = "Paused"
)

type ImageUpdateMode added in v0.7.6

type ImageUpdateMode string

ImageUpdateMode is how the milvus components' image should be updated. works only when rolling update is enabled.

const (
	// ImageUpdateModeRollingUpgrade means all components' image will be updated in a rolling upgrade order
	ImageUpdateModeRollingUpgrade ImageUpdateMode = "rollingUpgrade"
	// ImageUpdateModeRollingDowngrade means all components' image will be updated in a rolling downgrade order
	ImageUpdateModeRollingDowngrade ImageUpdateMode = "rollingDowngrade"
	// ImageUpdateModeAll means all components' image will be updated immediately to spec.image
	ImageUpdateModeAll ImageUpdateMode = "all"
)

type InClusterConfig

type InClusterConfig struct {
	// +kubebuilder:validation:Optional
	// +kubebuilder:pruning:PreserveUnknownFields
	Values Values `json:"values,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum:={"Delete", "Retain"}
	// +kubebuilder:default:="Retain"
	DeletionPolicy DependencyDeletionPolicy `json:"deletionPolicy"`

	// +kubebuilder:validation:Optional
	PVCDeletion bool `json:"pvcDeletion,omitempty"`
}

func (*InClusterConfig) DeepCopy

func (in *InClusterConfig) DeepCopy() *InClusterConfig

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

func (*InClusterConfig) DeepCopyInto

func (in *InClusterConfig) DeepCopyInto(out *InClusterConfig)

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

type Milvus

type Milvus struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   MilvusSpec   `json:"spec,omitempty"`
	Status MilvusStatus `json:"status,omitempty"`
}

+genclient +genclient:noStatus +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:path=milvuses,singular=milvus,shortName=mi +kubebuilder:storageversion +kubebuilder:printcolumn:name="Mode",type="string",JSONPath=".spec.mode",description="Milvus mode" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.status",description="Milvus status" +kubebuilder:printcolumn:name="Updated",type="string",JSONPath=".status.conditions[?(@.type==\"MilvusUpdated\")].status",description="Milvus updated" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" Milvus is the Schema for the milvus API

func (*Milvus) DeepCopy

func (in *Milvus) DeepCopy() *Milvus

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

func (*Milvus) DeepCopyInto

func (in *Milvus) DeepCopyInto(out *Milvus)

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

func (*Milvus) DeepCopyObject

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

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

func (*Milvus) Default

func (r *Milvus) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Milvus) DefaultComponents added in v0.5.1

func (r *Milvus) DefaultComponents()

func (*Milvus) DefaultConf added in v0.5.1

func (r *Milvus) DefaultConf()

func (*Milvus) DefaultDependencies added in v0.5.1

func (r *Milvus) DefaultDependencies()

func (*Milvus) DefaultMeta added in v0.5.1

func (r *Milvus) DefaultMeta()

func (*Milvus) DefaultMode added in v0.5.1

func (r *Milvus) DefaultMode()

func (*Milvus) Hub

func (*Milvus) Hub()

Hub marks this type as a conversion hub.

func (*Milvus) IsChangingMode added in v0.7.16

func (m *Milvus) IsChangingMode() bool

func (*Milvus) IsFirstTimeStarting added in v0.7.16

func (m *Milvus) IsFirstTimeStarting() bool

func (*Milvus) IsPodServiceLabelAdded added in v0.7.16

func (m *Milvus) IsPodServiceLabelAdded() bool

func (*Milvus) IsRollingUpdateEnabled added in v0.7.6

func (m *Milvus) IsRollingUpdateEnabled() bool

func (*Milvus) LegacyNeedSyncValues added in v0.5.1

func (r *Milvus) LegacyNeedSyncValues() bool

func (*Milvus) RemoveStoppedAtAnnotation added in v0.7.0

func (m *Milvus) RemoveStoppedAtAnnotation()

func (*Milvus) SetLegacySynced added in v0.5.1

func (r *Milvus) SetLegacySynced()

func (*Milvus) SetStoppedAtAnnotation added in v0.7.0

func (m *Milvus) SetStoppedAtAnnotation(t time.Time)

func (*Milvus) SetupWebhookWithManager

func (r *Milvus) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Milvus) ValidateCreate

func (r *Milvus) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Milvus) ValidateDelete

func (r *Milvus) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Milvus) ValidateUpdate

func (r *Milvus) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type MilvusComponents

type MilvusComponents struct {
	ComponentSpec `json:",inline"`

	// ImageUpdateMode is how the milvus components' image should be updated. works only when rolling update is enabled.
	// +kubebuilder:validation:Enum=rollingUpgrade;rollingDowngrade;all
	// +kubebuilder:default:="rollingUpgrade"
	// +kubebuilder:validation:Optional
	ImageUpdateMode ImageUpdateMode `json:"imageUpdateMode,omitempty"`

	// Note: it's still in beta, do not use for production. EnableRollingUpdate whether to enable rolling update for milvus component
	// there is nearly zero downtime for rolling update
	// TODO: enable rolling update by default for next major version
	// +kubebuilder:validation:Optional
	EnableRollingUpdate *bool `json:"enableRollingUpdate,omitempty"`

	// +kubebuilder:validation:Optional
	DisableMetric bool `json:"disableMetric"`

	// MetricInterval the interval of podmonitor metric scraping in string
	// +kubebuilder:validation:Optional
	MetricInterval string `json:"metricInterval"`

	// ToolImage specify tool image to merge milvus config to original one in image, default uses same image as milvus-operator
	// +kubebuilder:validation:Optional
	ToolImage string `json:"toolImage,omitempty"`

	// UpdateToolImage when milvus-operator upgraded, whether milvus should restart to update the tool image, too
	// +kubebuilder:validation:Optional
	UpdateToolImage bool `json:"updateToolImage,omitempty"`

	// +kubebuilder:validation:Optional
	Proxy *MilvusProxy `json:"proxy,omitempty"`

	// +kubebuilder:validation:Optional
	MixCoord *MilvusMixCoord `json:"mixCoord,omitempty"`

	// +kubebuilder:validation:Optional
	RootCoord *MilvusRootCoord `json:"rootCoord,omitempty"`

	// +kubebuilder:validation:Optional
	IndexCoord *MilvusIndexCoord `json:"indexCoord,omitempty"`

	// +kubebuilder:validation:Optional
	DataCoord *MilvusDataCoord `json:"dataCoord,omitempty"`

	// +kubebuilder:validation:Optional
	QueryCoord *MilvusQueryCoord `json:"queryCoord,omitempty"`

	// +kubebuilder:validation:Optional
	IndexNode *MilvusIndexNode `json:"indexNode,omitempty"`

	// +kubebuilder:validation:Optional
	DataNode *MilvusDataNode `json:"dataNode,omitempty"`

	// +kubebuilder:validation:Optional
	QueryNode *MilvusQueryNode `json:"queryNode,omitempty"`

	// +kubebuilder:validation:Optional
	Standalone *MilvusStandalone `json:"standalone,omitempty"`
}

func (*MilvusComponents) DeepCopy

func (in *MilvusComponents) DeepCopy() *MilvusComponents

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

func (*MilvusComponents) DeepCopyInto

func (in *MilvusComponents) DeepCopyInto(out *MilvusComponents)

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

type MilvusCondition

type MilvusCondition struct {
	// Type is the type of the condition.
	Type MilvusConditionType `json:"type"`
	// Status is the status of the condition.
	// Can be True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time the condition transitioned from one status to another.
	// +optional
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
	// Unique, one-word, CamelCase reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Human-readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

MilvusCondition contains details for the current condition of this milvus/milvus cluster instance

func GetMilvusConditionByType added in v0.7.0

func GetMilvusConditionByType(status *MilvusStatus, conditionType MilvusConditionType) *MilvusCondition

func (*MilvusCondition) DeepCopy

func (in *MilvusCondition) DeepCopy() *MilvusCondition

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

func (*MilvusCondition) DeepCopyInto

func (in *MilvusCondition) DeepCopyInto(out *MilvusCondition)

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

type MilvusConditionType added in v0.7.10

type MilvusConditionType string

MilvusConditionType is a valid value for MilvusConditionType.Type.

type MilvusDataCoord

type MilvusDataCoord struct {
	Component `json:",inline"`
}

func (*MilvusDataCoord) DeepCopy

func (in *MilvusDataCoord) DeepCopy() *MilvusDataCoord

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

func (*MilvusDataCoord) DeepCopyInto

func (in *MilvusDataCoord) DeepCopyInto(out *MilvusDataCoord)

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

type MilvusDataNode

type MilvusDataNode struct {
	Component `json:",inline"`
}

func (*MilvusDataNode) DeepCopy

func (in *MilvusDataNode) DeepCopy() *MilvusDataNode

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

func (*MilvusDataNode) DeepCopyInto

func (in *MilvusDataNode) DeepCopyInto(out *MilvusDataNode)

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

type MilvusDependencies

type MilvusDependencies struct {
	// +kubebuilder:validation:Optional
	Etcd MilvusEtcd `json:"etcd"`

	// +kubebuilder:validation:Enum:={"pulsar", "kafka", "rocksmq", ""}
	// +kubebuilder:validation:Optional
	// MsgStreamType default to pulsar for cluster, rocksmq for standalone
	MsgStreamType MsgStreamType `json:"msgStreamType,omitempty"`

	// +kubebuilder:validation:Optional
	Pulsar MilvusPulsar `json:"pulsar,omitempty"`

	// +kubebuilder:validation:Optional
	Kafka MilvusKafka `json:"kafka,omitempty"`

	// +kubebuilder:validation:Optional
	RocksMQ MilvusRocksMQ `json:"rocksmq,omitempty"`

	// +kubebuilder:validation:Optional
	Storage MilvusStorage `json:"storage"`
}

func (*MilvusDependencies) DeepCopy

func (in *MilvusDependencies) DeepCopy() *MilvusDependencies

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

func (*MilvusDependencies) DeepCopyInto

func (in *MilvusDependencies) DeepCopyInto(out *MilvusDependencies)

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

type MilvusEtcd

type MilvusEtcd struct {
	// +kubebuilder:validation:Optional
	Endpoints []string `json:"endpoints"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=false
	External bool `json:"external,omitempty"`

	// +kubebuilder:validation:Optional
	InCluster *InClusterConfig `json:"inCluster,omitempty"`
}

func (*MilvusEtcd) DeepCopy

func (in *MilvusEtcd) DeepCopy() *MilvusEtcd

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

func (*MilvusEtcd) DeepCopyInto

func (in *MilvusEtcd) DeepCopyInto(out *MilvusEtcd)

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

type MilvusHealthStatus

type MilvusHealthStatus string

MilvusHealthStatus is a type for milvus status.

type MilvusIndexCoord

type MilvusIndexCoord struct {
	Component `json:",inline"`
}

func (*MilvusIndexCoord) DeepCopy

func (in *MilvusIndexCoord) DeepCopy() *MilvusIndexCoord

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

func (*MilvusIndexCoord) DeepCopyInto

func (in *MilvusIndexCoord) DeepCopyInto(out *MilvusIndexCoord)

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

type MilvusIndexNode

type MilvusIndexNode struct {
	Component `json:",inline"`
}

func (*MilvusIndexNode) DeepCopy

func (in *MilvusIndexNode) DeepCopy() *MilvusIndexNode

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

func (*MilvusIndexNode) DeepCopyInto

func (in *MilvusIndexNode) DeepCopyInto(out *MilvusIndexNode)

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

type MilvusIngress

type MilvusIngress struct {
	// +kubebuilder:validation:Optional
	Labels map[string]string `json:"labels,omitempty"`

	// +kubebuilder:validation:Optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// +kubebuilder:validation:Optional
	IngressClassName *string `json:"ingressClassName,omitempty"`

	// +kubebuilder:validation:Optional
	Hosts []string `json:"hosts,omitempty"`

	// TLSSecretRefs is a map of TLS secret to hosts
	// +kubebuilder:validation:Optional
	TLSSecretRefs map[string][]string `json:"tlsSecretRefs,omitempty"`
}

MilvusIngress defines the ingress of MilvusCluster TODO: add docs

func (*MilvusIngress) DeepCopy

func (in *MilvusIngress) DeepCopy() *MilvusIngress

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

func (*MilvusIngress) DeepCopyInto

func (in *MilvusIngress) DeepCopyInto(out *MilvusIngress)

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

type MilvusKafka

type MilvusKafka struct {
	// +kubebuilder:validation:Optional
	InCluster *InClusterConfig `json:"inCluster,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=false
	External bool `json:"external,omitempty"`

	// +kubebuilder:validation:Optional
	BrokerList []string `json:"brokerList,omitempty"`
}

MilvusKafka configuration

func (*MilvusKafka) DeepCopy

func (in *MilvusKafka) DeepCopy() *MilvusKafka

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

func (*MilvusKafka) DeepCopyInto

func (in *MilvusKafka) DeepCopyInto(out *MilvusKafka)

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

type MilvusList

type MilvusList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Milvus `json:"items"`
}

+kubebuilder:object:root=true MilvusList contains a list of Milvus

func (*MilvusList) DeepCopy

func (in *MilvusList) DeepCopy() *MilvusList

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

func (*MilvusList) DeepCopyInto

func (in *MilvusList) DeepCopyInto(out *MilvusList)

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

func (*MilvusList) DeepCopyObject

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

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

type MilvusMixCoord

type MilvusMixCoord struct {
	Component `json:",inline"`
}

MilvusMixCoord is a mixture of rootCoord, indexCoord, queryCoord & dataCoord

func (*MilvusMixCoord) DeepCopy

func (in *MilvusMixCoord) DeepCopy() *MilvusMixCoord

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

func (*MilvusMixCoord) DeepCopyInto

func (in *MilvusMixCoord) DeepCopyInto(out *MilvusMixCoord)

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

type MilvusMode

type MilvusMode string

MilvusMode defines the mode of Milvus deployment

const (
	MilvusModeCluster    MilvusMode = "cluster"
	MilvusModeStandalone MilvusMode = "standalone"
)

type MilvusOperation added in v0.7.0

type MilvusOperation string

MilvusOperation is the operation of MilvusUpgrade

const (
	OperationUpgrade  MilvusOperation = "upgrade"
	OperationRollback MilvusOperation = "rollback"
)

MilvusOperation type definitions

type MilvusProxy

type MilvusProxy struct {
	ServiceComponent `json:",inline"`
}

func (*MilvusProxy) DeepCopy

func (in *MilvusProxy) DeepCopy() *MilvusProxy

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

func (*MilvusProxy) DeepCopyInto

func (in *MilvusProxy) DeepCopyInto(out *MilvusProxy)

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

type MilvusPulsar

type MilvusPulsar struct {
	// +kubebuilder:validation:Optional
	InCluster *InClusterConfig `json:"inCluster,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=false
	External bool `json:"external,omitempty"`

	// +kubebuilder:validation:Optional
	Endpoint string `json:"endpoint"`
}

func (*MilvusPulsar) DeepCopy

func (in *MilvusPulsar) DeepCopy() *MilvusPulsar

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

func (*MilvusPulsar) DeepCopyInto

func (in *MilvusPulsar) DeepCopyInto(out *MilvusPulsar)

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

type MilvusQueryCoord

type MilvusQueryCoord struct {
	Component `json:",inline"`
}

func (*MilvusQueryCoord) DeepCopy

func (in *MilvusQueryCoord) DeepCopy() *MilvusQueryCoord

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

func (*MilvusQueryCoord) DeepCopyInto

func (in *MilvusQueryCoord) DeepCopyInto(out *MilvusQueryCoord)

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

type MilvusQueryNode

type MilvusQueryNode struct {
	Component `json:",inline"`
}

func (*MilvusQueryNode) DeepCopy

func (in *MilvusQueryNode) DeepCopy() *MilvusQueryNode

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

func (*MilvusQueryNode) DeepCopyInto

func (in *MilvusQueryNode) DeepCopyInto(out *MilvusQueryNode)

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

type MilvusReplicas

type MilvusReplicas struct {
	//+kubebuilder:validation:Optional
	Proxy int `json:"proxy,omitempty"`
	//+kubebuilder:validation:Optional
	MixCoord int `json:"mixCoord,omitempty"`
	//+kubebuilder:validation:Optional
	RootCoord int `json:"rootCoord,omitempty"`
	//+kubebuilder:validation:Optional
	DataCoord int `json:"dataCoord,omitempty"`
	//+kubebuilder:validation:Optional
	IndexCoord int `json:"indexCoord,omitempty"`
	//+kubebuilder:validation:Optional
	QueryCoord int `json:"queryCoord,omitempty"`
	//+kubebuilder:validation:Optional
	DataNode int `json:"dataNode,omitempty"`
	//+kubebuilder:validation:Optional
	IndexNode int `json:"indexNode,omitempty"`
	//+kubebuilder:validation:Optional
	QueryNode int `json:"queryNode,omitempty"`
	//+kubebuilder:validation:Optional
	Standalone int `json:"standalone,omitempty"`
}

MilvusReplicas is the replicas of milvus components

func (*MilvusReplicas) DeepCopy

func (in *MilvusReplicas) DeepCopy() *MilvusReplicas

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

func (*MilvusReplicas) DeepCopyInto

func (in *MilvusReplicas) DeepCopyInto(out *MilvusReplicas)

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

type MilvusRocksMQ

type MilvusRocksMQ struct {
	Persistence Persistence `json:"persistence"`
}

MilvusRocksMQ configuration

func (*MilvusRocksMQ) DeepCopy

func (in *MilvusRocksMQ) DeepCopy() *MilvusRocksMQ

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

func (*MilvusRocksMQ) DeepCopyInto

func (in *MilvusRocksMQ) DeepCopyInto(out *MilvusRocksMQ)

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

type MilvusRootCoord

type MilvusRootCoord struct {
	Component `json:",inline"`
}

func (*MilvusRootCoord) DeepCopy

func (in *MilvusRootCoord) DeepCopy() *MilvusRootCoord

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

func (*MilvusRootCoord) DeepCopyInto

func (in *MilvusRootCoord) DeepCopyInto(out *MilvusRootCoord)

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

type MilvusSpec

type MilvusSpec struct {

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum:={"cluster", "standalone"}
	// +kubebuilder:default:="standalone"
	Mode MilvusMode `json:"mode,omitempty"`

	// +kubebuilder:validation:Optional
	Com MilvusComponents `json:"components,omitempty"`

	// +kubebuilder:validation:Optional
	Dep MilvusDependencies `json:"dependencies,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:pruning:PreserveUnknownFields
	Conf Values `json:"config,omitempty"`
}

MilvusSpec defines the desired state of Milvus

func (*MilvusSpec) DeepCopy

func (in *MilvusSpec) DeepCopy() *MilvusSpec

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

func (*MilvusSpec) DeepCopyInto

func (in *MilvusSpec) DeepCopyInto(out *MilvusSpec)

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

func (MilvusSpec) GetServiceComponent

func (ms MilvusSpec) GetServiceComponent() *ServiceComponent

func (MilvusSpec) IsStopping added in v0.7.5

func (ms MilvusSpec) IsStopping() bool

IsStopping returns true if the MilvusSpec has replicas serving

type MilvusStandalone

type MilvusStandalone struct {
	ServiceComponent `json:",inline"`
}

func (*MilvusStandalone) DeepCopy

func (in *MilvusStandalone) DeepCopy() *MilvusStandalone

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

func (*MilvusStandalone) DeepCopyInto

func (in *MilvusStandalone) DeepCopyInto(out *MilvusStandalone)

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

type MilvusStatus

type MilvusStatus struct {

	// Status indicates the overall status of the Milvus
	// Status can be "Pending", "Healthy", "Unhealthy", "Stopped"
	// +kubebuilder:default:="Pending"
	Status MilvusHealthStatus `json:"status"`

	// Conditions of each components
	Conditions []MilvusCondition `json:"conditions,omitempty"`

	// Endpoint of milvus cluster
	Endpoint string `json:"endpoint,omitempty"`

	// IngressStatus of the ingress created by milvus
	IngressStatus networkv1.IngressStatus `json:"ingress,omitempty"`

	// DeprecatedReplicas is deprecated, will be removed in next major version, use ComponentsDeployStatus instead
	// DeprecatedReplicas is the number of updated replicas in ready status
	// +kubebuilder:validation:Optional
	DeprecatedReplicas MilvusReplicas `json:"replicas,omitempty"`

	// ComponentsDeployStatus contains the map of component's name to the status of each component deployment
	// it is used to check the status of rolling update of each component
	// +optional
	ComponentsDeployStatus map[string]ComponentDeployStatus `json:"componentsDeployStatus,omitempty"`

	// ObservedGeneration has same usage as deployment.status.observedGeneration
	// it represents the .metadata.generation that the condition was set based upon.
	// For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
	// with respect to the current state of the instance.
	// +optional
	// +kubebuilder:validation:Minimum=0
	ObservedGeneration int64 `json:"observedGeneration,omitempty" protobuf:"varint,3,opt,name=observedGeneration"`
}

MilvusStatus defines the observed state of Milvus

func (*MilvusStatus) DeepCopy

func (in *MilvusStatus) DeepCopy() *MilvusStatus

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

func (*MilvusStatus) DeepCopyInto

func (in *MilvusStatus) DeepCopyInto(out *MilvusStatus)

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

type MilvusStorage

type MilvusStorage struct {
	// +kubebuilder:default:="MinIO"
	// +kubebuilder:validation:Enum:={"MinIO", "S3", ""}
	// +kubebuilder:validation:Optional
	Type string `json:"type"`

	// +kubebuilder:validation:Optional
	SecretRef string `json:"secretRef"`

	// +kubebuilder:validation:Optional
	Endpoint string `json:"endpoint"`

	// +kubebuilder:validation:Optional
	InCluster *InClusterConfig `json:"inCluster,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=false
	External bool `json:"external,omitempty"`
}

func (*MilvusStorage) DeepCopy

func (in *MilvusStorage) DeepCopy() *MilvusStorage

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

func (*MilvusStorage) DeepCopyInto

func (in *MilvusStorage) DeepCopyInto(out *MilvusStorage)

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

type MilvusUpgrade added in v0.7.0

type MilvusUpgrade struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   MilvusUpgradeSpec   `json:"spec,omitempty"`
	Status MilvusUpgradeStatus `json:"status,omitempty"`
}

MilvusUpgrade is the Schema for the milvusupgrades API

func (*MilvusUpgrade) DeepCopy added in v0.7.0

func (in *MilvusUpgrade) DeepCopy() *MilvusUpgrade

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

func (*MilvusUpgrade) DeepCopyInto added in v0.7.0

func (in *MilvusUpgrade) DeepCopyInto(out *MilvusUpgrade)

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

func (*MilvusUpgrade) DeepCopyObject added in v0.7.0

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

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

func (*MilvusUpgrade) Default added in v0.7.0

func (r *MilvusUpgrade) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*MilvusUpgrade) SetupWebhookWithManager added in v0.7.0

func (r *MilvusUpgrade) SetupWebhookWithManager(mgr ctrl.Manager) error

func (MilvusUpgrade) Validate added in v0.7.0

func (r MilvusUpgrade) Validate() error

func (*MilvusUpgrade) ValidateCreate added in v0.7.0

func (r *MilvusUpgrade) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*MilvusUpgrade) ValidateDelete added in v0.7.0

func (r *MilvusUpgrade) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*MilvusUpgrade) ValidateUpdate added in v0.7.0

func (r *MilvusUpgrade) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type MilvusUpgradeList added in v0.7.0

type MilvusUpgradeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []MilvusUpgrade `json:"items"`
}

MilvusUpgradeList contains a list of MilvusUpgrade

func (*MilvusUpgradeList) DeepCopy added in v0.7.0

func (in *MilvusUpgradeList) DeepCopy() *MilvusUpgradeList

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

func (*MilvusUpgradeList) DeepCopyInto added in v0.7.0

func (in *MilvusUpgradeList) DeepCopyInto(out *MilvusUpgradeList)

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

func (*MilvusUpgradeList) DeepCopyObject added in v0.7.0

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

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

type MilvusUpgradeSpec added in v0.7.0

type MilvusUpgradeSpec struct {

	// Operation is the operation of MilvusUpgrade, it can be "upgrade" or "rollback", default as "upgrade"
	// During upgration, you can modify operation to rollback to the previous version.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum=upgrade;rollback;
	// +kubebuilder:default=upgrade
	Operation MilvusOperation `json:"operation,omitempty"`

	// Milvus is the reference to Milvus instance to be upgraded
	// +kubebuilder:validation:Required
	Milvus ObjectReference `json:"milvus"`

	// SourceVersion is the version of Milvus to be upgraded from
	// +kubebuilder:validation:Required
	SourceVersion string `json:"sourceVersion"`

	// TargetVersion is the version of Milvus to be upgraded to
	// +kubebuilder:validation:Required
	TargetVersion string `json:"targetVersion"`

	// TargetImage is the image of milvus target version.
	// milvus-operator will use official image if TargetImage is not set.
	// +kubebuilder:validation:Optional
	TargetImage string `json:"targetImage"`

	// ToolImage is the image of milvus upgrade tool.
	// milvus-operator will use official image if ToolImage is not set.
	// +kubebuilder:validation:Optional
	ToolImage string `json:"toolImage,omitempty"`

	// MaxRetry is the max retry times when upgrade failed
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=3
	MaxRetry int `json:"maxRetry,omitempty"`

	// RollbackIfFailed indicates whether to rollback if upgrade failed.
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=true
	RollbackIfFailed bool `json:"rollbackIfFailed,omitempty"`

	// BackupPVC is the pvc name for backup data.
	// If not provided, milvus-operator will auto-create one with default storage-class which will be deleted after upgration.
	// +kubebuilder:validation:Optional
	BackupPVC string `json:"backupPVC"`
}

MilvusUpgradeSpec defines the desired state of MilvusUpgrade

func (*MilvusUpgradeSpec) DeepCopy added in v0.7.0

func (in *MilvusUpgradeSpec) DeepCopy() *MilvusUpgradeSpec

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

func (*MilvusUpgradeSpec) DeepCopyInto added in v0.7.0

func (in *MilvusUpgradeSpec) DeepCopyInto(out *MilvusUpgradeSpec)

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

type MilvusUpgradeState added in v0.7.0

type MilvusUpgradeState string
const (
	// State in upgrade process
	UpgradeStatePending            MilvusUpgradeState = ""
	UpgradeStateOldVersionStopping MilvusUpgradeState = "OldVersionStopping"
	UpgradeStateBackupMeta         MilvusUpgradeState = "BackupMeta"
	UpgradeStateUpdatingMeta       MilvusUpgradeState = "UpdatingMeta"
	UpgradeStateNewVersionStarting MilvusUpgradeState = "NewVersionStarting"
	UpgradeStateSucceeded          MilvusUpgradeState = "Succeeded"

	UpgradeStateBakupMetaFailed  MilvusUpgradeState = "BakupMetaFailed"
	UpgradeStateUpdateMetaFailed MilvusUpgradeState = "UpdateMetaFailed"

	// State in rollback process
	UpgradeStateRollbackNewVersionStopping MilvusUpgradeState = "RollbackNewVersionStopping"
	UpgradeStateRollbackRestoringOldMeta   MilvusUpgradeState = "RollbackRestoringOldMeta"
	UpgradeStateRollbackOldVersionStarting MilvusUpgradeState = "RollbackOldVersionStarting"
	UpgradeStateRollbackSucceeded          MilvusUpgradeState = "RollbackedSucceeded"

	UpgradeStateRollbackFailed MilvusUpgradeState = "RollbackFailed"
)

func (MilvusUpgradeState) NeedRequeue added in v0.7.4

func (s MilvusUpgradeState) NeedRequeue() bool

type MilvusUpgradeStatus added in v0.7.0

type MilvusUpgradeStatus struct {

	// +optional
	State MilvusUpgradeState `json:"state,omitempty"`

	// Conditions: available condtition types types: CheckingUpgrationState Upgraded Rollbacked
	// +optional
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// SourceImage is the image of milvus source version. recorded for rollback
	// +optional
	SourceImage string `json:"sourceImage,omitempty"`

	// MetaStorageChanged indicates whether meta storage changed during upgrade
	// if true, milvus-operator needs to restore meta storge from bakup before start milvus when rollback
	// +optional
	MetaStorageChanged bool `json:"metaStorageChanged,omitempty"`

	// MetaBackuped indicates whether meta storage has been backuped
	// +optional
	MetaBackuped bool `json:"metaBackuped,omitempty"`

	// IsRollbacking indicates whether milvus is rollbacking
	// +optional
	IsRollbacking bool `json:"isRollbacking,omitempty"`

	// ReplicasBeforeUpgrade are replicas befor
	// +optional
	ReplicasBeforeUpgrade *MilvusReplicas `json:"replicasBeforeUprade,omitempty"`

	// BackupPVC is pvc stores meta backup
	// +optional
	BackupPVC string `json:"backupPVC,omitempty"`

	// RetriedTimes is the times that operator has retried to upgrade milvus
	// +optional
	RetriedTimes int `json:"retriedTimes"`
}

MilvusUpgradeStatus defines the observed state of MilvusUpgrade

func (*MilvusUpgradeStatus) DeepCopy added in v0.7.0

func (in *MilvusUpgradeStatus) DeepCopy() *MilvusUpgradeStatus

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

func (*MilvusUpgradeStatus) DeepCopyInto added in v0.7.0

func (in *MilvusUpgradeStatus) DeepCopyInto(out *MilvusUpgradeStatus)

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

type MsgStreamType

type MsgStreamType string
const (
	MsgStreamTypePulsar  MsgStreamType = "pulsar"
	MsgStreamTypeKafka   MsgStreamType = "kafka"
	MsgStreamTypeRocksMQ MsgStreamType = "rocksmq"
)

type ObjectReference added in v0.7.0

type ObjectReference struct {
	// +kubebuilder:validation:Optional
	Namespace string `json:"namespace,omitempty"`
	// +kubebuilder:validation:Required
	Name string `json:"name"`
}

func (*ObjectReference) DeepCopy added in v0.7.0

func (in *ObjectReference) DeepCopy() *ObjectReference

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

func (*ObjectReference) DeepCopyInto added in v0.7.0

func (in *ObjectReference) DeepCopyInto(out *ObjectReference)

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

func (ObjectReference) Object added in v0.7.0

type Persistence

type Persistence struct {
	// If Enabled, will create/use pvc for data persistence
	// +kubebuilder:validation:Optional
	Enabled bool `json:"enabled,omitempty"`
	// +kubebuilder:validation:Optional
	PVCDeletion bool `json:"pvcDeletion,omitempty"`
	// +kubebuilder:validation:Optional
	PersistentVolumeClaim PersistentVolumeClaim `json:"persistentVolumeClaim,omitempty"`
}

Persistence is persistence for milvus

func (*Persistence) DeepCopy

func (in *Persistence) DeepCopy() *Persistence

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

func (*Persistence) DeepCopyInto

func (in *Persistence) DeepCopyInto(out *Persistence)

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

type PersistentVolumeClaim

type PersistentVolumeClaim struct {
	// ExistingClaim if not empty, will use existing pvc, else create a pvc
	// +kubebuilder:validation:Optional
	ExistingClaim string `json:"existingClaim,omitempty"`

	// Map of string keys and values that can be used to organize and categorize
	// (scope and select) objects. May match selectors of replication controllers
	// and services.
	// More info: http://kubernetes.io/docs/user-guide/labels
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations is an unstructured key value map stored with a resource that may be
	// set by external tools to store and retrieve arbitrary metadata. They are not
	// queryable and should be preserved when modifying objects.
	// More info: http://kubernetes.io/docs/user-guide/annotations
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// Spec defines the desired characteristics of a volume requested by a pod author.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
	// +kubebuilder:validation:Optional
	Spec corev1.PersistentVolumeClaimSpec `json:"spec,omitempty"`
}

PersistentVolumeClaim for milvus

func (*PersistentVolumeClaim) DeepCopy

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

func (*PersistentVolumeClaim) DeepCopyInto

func (in *PersistentVolumeClaim) DeepCopyInto(out *PersistentVolumeClaim)

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

type ServiceComponent

type ServiceComponent struct {
	Component `json:",inline"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum={"ClusterIP", "NodePort", "LoadBalancer"}
	// +kubebuilder:default="ClusterIP"
	ServiceType corev1.ServiceType `json:"serviceType,omitempty"`

	// +kubebuilder:validation:Optional
	ServiceRestfulPort int32 `json:"serviceRestfulPort,omitempty"`

	// +kubebuilder:validation:Optional
	ServiceLabels map[string]string `json:"serviceLabels,omitempty"`

	// +kubebuilder:validation:Optional
	ServiceAnnotations map[string]string `json:"serviceAnnotations,omitempty"`

	// +kubebuilder:validation:Optional
	Ingress *MilvusIngress `json:"ingress,omitempty"`
}

ServiceComponent is the milvus component that exposes service

func (*ServiceComponent) DeepCopy

func (in *ServiceComponent) DeepCopy() *ServiceComponent

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

func (*ServiceComponent) DeepCopyInto

func (in *ServiceComponent) DeepCopyInto(out *ServiceComponent)

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

type Values

type Values struct {
	// Work around for https://github.com/kubernetes-sigs/kubebuilder/issues/528
	Data map[string]interface{} `json:"-"`
}

func (Values) AsObject added in v0.6.2

func (v Values) AsObject(obj interface{}) error

func (*Values) DeepCopy

func (in *Values) DeepCopy() *Values

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

func (*Values) DeepCopyInto

func (v *Values) DeepCopyInto(out *Values)

DeepCopyInto is an deepcopy function, copying the receiver, writing into out. In must be non-nil. Declaring this here prevents it from being generated in `zz_generated.deepcopy.go`.

This exists here to work around https://github.com/kubernetes/code-generator/issues/50, and partially around https://github.com/kubernetes-sigs/controller-tools/pull/126 and https://github.com/kubernetes-sigs/controller-tools/issues/294.

func (*Values) FromObject added in v0.7.15

func (v *Values) FromObject(obj interface{}) error

func (Values) MarshalJSON

func (v Values) MarshalJSON() ([]byte, error)

func (Values) MustAsObj added in v0.6.2

func (v Values) MustAsObj(obj interface{})

func (*Values) UnmarshalJSON

func (v *Values) UnmarshalJSON(data []byte) error

Jump to

Keyboard shortcuts

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