Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions of the matrixone v1alpha1 API group. The MatrixOneCluster resource type helps you provision and manage MatrixOne clusters on Kubernetes. Other resources types represent sub-resources managed by MatrixOneCluster but also allows separated usage for fine-grained control. Refer to https://docs.matrixorigin.io/ for more information about MatrixOne database and matrixone-operator. +kubebuilder:object:generate=true +groupName=core.matrixorigin.io
Index ¶
- Constants
- Variables
- func AddBucketFinalizer(ctx context.Context, c client.Client, lsMeta metav1.ObjectMeta, ...) error
- func BucketBindToMark(logsetMeta metav1.ObjectMeta) string
- func ContainFinalizerPrefix(finalizers []string, prefix string) bool
- func DNSetKey(mo *MatrixOneCluster) metav1.ObjectMeta
- func GetCNPodUUID(pod *corev1.Pod) string
- func HasMOFeature(v semver.Version, f MOFeature) bool
- func IsPoolingPolicy(pod *corev1.Pod) bool
- func LogSetKey(mo *MatrixOneCluster) metav1.ObjectMeta
- func ProxyKey(mo *MatrixOneCluster) metav1.ObjectMeta
- func RemoveBucketFinalizer(ctx context.Context, c client.Client, lsMeta metav1.ObjectMeta, ...) error
- func SetBucketEverRunningAnn(ctx context.Context, c client.Client, bucket *BucketClaim) error
- func SyncBucketEverRunningAnn(ctx context.Context, c client.Client, lsMeta metav1.ObjectMeta) error
- func UniqueBucketLabel(s3Provider *S3Provider) string
- func WebUIKey(mo *MatrixOneCluster) metav1.ObjectMeta
- type Backup
- type BackupJob
- func (in *BackupJob) DeepCopy() *BackupJob
- func (in *BackupJob) DeepCopyInto(out *BackupJob)
- func (in *BackupJob) DeepCopyObject() runtime.Object
- func (r *BackupJob) GetConditions() []metav1.Condition
- func (r *BackupJob) GetOverlay() *Overlay
- func (r *BackupJob) GetPhase() string
- func (r *BackupJob) GetSourceRef() string
- func (r *BackupJob) GetTTL() time.Duration
- func (r *BackupJob) SetCondition(condition metav1.Condition)
- func (r *BackupJob) SetPhase(phase string)
- type BackupJobList
- type BackupJobSpec
- type BackupJobStatus
- type BackupList
- type BackupMeta
- type BackupSource
- type BucketClaim
- type BucketClaimList
- type BucketClaimSpec
- type BucketClaimStatus
- type CNClaim
- type CNClaimList
- type CNClaimPhase
- type CNClaimSet
- type CNClaimSetList
- type CNClaimSetSpec
- type CNClaimSetStatus
- type CNClaimSpec
- type CNClaimStatus
- type CNClaimTemplate
- type CNGroup
- type CNGroupStatus
- type CNGroupsStatus
- type CNLabel
- type CNPool
- type CNPoolList
- type CNPoolSpec
- type CNPoolStatus
- type CNRole
- type CNSet
- func (in *CNSet) DeepCopy() *CNSet
- func (in *CNSet) DeepCopyInto(out *CNSet)
- func (in *CNSet) DeepCopyObject() runtime.Object
- func (s *CNSet) GetConditions() []metav1.Condition
- func (s *CNSet) GetDependencies() []recon.Dependency
- func (s *CNSet) GetServiceType() corev1.ServiceType
- func (s *CNSet) SetCondition(condition metav1.Condition)
- type CNSetDeps
- type CNSetList
- type CNSetSpec
- type CNSetStatus
- type CNSetTerminationPolicy
- type CNStore
- type CNStoreStatus
- type CertificateRef
- type ClaimPodRef
- type ClusterMetrics
- type ConditionalStatus
- type ConfigThatChangeCNSpec
- type DNSet
- func (in *DNSet) DeepCopy() *DNSet
- func (in *DNSet) DeepCopyInto(out *DNSet)
- func (in *DNSet) DeepCopyObject() runtime.Object
- func (d *DNSet) GetConditions() []metav1.Condition
- func (d *DNSet) GetDNSBasedIdentity() bool
- func (d *DNSet) GetDependencies() []recon.Dependency
- func (d *DNSet) SetCondition(condition metav1.Condition)
- type DNSetDeps
- type DNSetList
- type DNSetSpec
- type DNSetStatus
- type DefaultArgs
- type EmbeddedMetadata
- type ExternalLogSet
- type FailedPodStrategy
- type FailoverStatus
- type FileSystemProvider
- type Gate
- type InitialConfig
- type LogSet
- type LogSetDiscovery
- type LogSetList
- type LogSetRef
- type LogSetSpec
- func (in *LogSetSpec) DeepCopy() *LogSetSpec
- func (in *LogSetSpec) DeepCopyInto(out *LogSetSpec)
- func (l *LogSetSpec) GetFailedPodStrategy() FailedPodStrategy
- func (l *LogSetSpec) GetPVCRetentionPolicy() PVCRetentionPolicy
- func (l *LogSetSpec) GetS3RetentionPolicy() *PVCRetentionPolicy
- func (l *LogSetSpec) GetStoreFailureTimeout() metav1.Duration
- type LogSetStatus
- type MOFeature
- type MainContainer
- type MainContainerOverlay
- type MatrixOneCluster
- func (in *MatrixOneCluster) DeepCopy() *MatrixOneCluster
- func (in *MatrixOneCluster) DeepCopyInto(out *MatrixOneCluster)
- func (in *MatrixOneCluster) DeepCopyObject() runtime.Object
- func (m *MatrixOneCluster) DefaultImage() string
- func (m *MatrixOneCluster) DnSetImage() string
- func (mo *MatrixOneCluster) GetConditions() []metav1.Condition
- func (m *MatrixOneCluster) GetMetricReaderEnabled() bool
- func (m *MatrixOneCluster) GetTN() *DNSetSpec
- func (m *MatrixOneCluster) LogSetImage() string
- func (m *MatrixOneCluster) ProxySetImage() string
- func (mo *MatrixOneCluster) SetCondition(condition metav1.Condition)
- type MatrixOneClusterList
- type MatrixOneClusterSpec
- type MatrixOneClusterStatus
- type MigrateStatus
- type ObjectRef
- type Overlay
- func (o *Overlay) AppendVolumeClaims(claims *[]corev1.PersistentVolumeClaim)
- func (in *Overlay) DeepCopy() *Overlay
- func (in *Overlay) DeepCopyInto(out *Overlay)
- func (o *Overlay) OverlayMainContainer(c *corev1.Container)
- func (o *Overlay) OverlayPodMeta(meta *metav1.ObjectMeta)
- func (o *Overlay) OverlayPodSpec(pod *corev1.PodSpec)
- type PVCRetentionPolicy
- type PodSet
- func (in *PodSet) DeepCopy() *PodSet
- func (in *PodSet) DeepCopyInto(out *PodSet)
- func (p *PodSet) GetExportToPrometheus() bool
- func (p *PodSet) GetOperatorVersion() semver.Version
- func (p *PodSet) GetPromDiscoveryScheme() PromDiscoveryScheme
- func (p *PodSet) GetSemVer() (*semver.Version, bool)
- func (p *PodSet) PromDiscoveredByPod() bool
- func (p *PodSet) PromDiscoveredByService() bool
- type PoolScaleStrategy
- type PoolStrategy
- type PoolUpdateStrategy
- type PromDiscoveryScheme
- type ProxySet
- func (in *ProxySet) DeepCopy() *ProxySet
- func (in *ProxySet) DeepCopyInto(out *ProxySet)
- func (in *ProxySet) DeepCopyObject() runtime.Object
- func (s *ProxySet) GetConditions() []metav1.Condition
- func (s *ProxySet) GetDependencies() []recon.Dependency
- func (s *ProxySet) GetServiceType() corev1.ServiceType
- func (s *ProxySet) SetCondition(condition metav1.Condition)
- type ProxySetDeps
- type ProxySetList
- type ProxySetSpec
- type ProxySetStatus
- type PythonUdfSidecar
- type ReadableStatus
- type RestoreJob
- func (in *RestoreJob) DeepCopy() *RestoreJob
- func (in *RestoreJob) DeepCopyInto(out *RestoreJob)
- func (in *RestoreJob) DeepCopyObject() runtime.Object
- func (r *RestoreJob) GetConditions() []metav1.Condition
- func (r *RestoreJob) GetOverlay() *Overlay
- func (r *RestoreJob) GetPhase() string
- func (r *RestoreJob) GetTTL() time.Duration
- func (r *RestoreJob) SetCondition(condition metav1.Condition)
- func (r *RestoreJob) SetPhase(phase string)
- type RestoreJobList
- type RestoreJobSpec
- type RestoreJobStatus
- type RollingUpdateStrategy
- type S3Provider
- type S3ProviderType
- type ScalingConfig
- type SharedStorageCache
- type SharedStorageProvider
- type State
- type Store
- type TomlConfig
- func (c *TomlConfig) DeepCopy() *TomlConfig
- func (c *TomlConfig) DeepCopyInto(out *TomlConfig)
- func (c *TomlConfig) DeepCopyJsonObject() *TomlConfig
- func (c *TomlConfig) Del(key1 string, keyN ...string)
- func (c *TomlConfig) Get(path ...string) (value *Value)
- func (c *TomlConfig) MarshalJSON() ([]byte, error)
- func (c *TomlConfig) MarshalTOML() ([]byte, error)
- func (c *TomlConfig) Merge(mp map[string]interface{})
- func (c *TomlConfig) MergeDeep(mp map[string]interface{})
- func (c *TomlConfig) Set(path []string, value interface{})
- func (c *TomlConfig) ToString() (string, error)
- func (c *TomlConfig) UnmarshalJSON(data []byte) error
- func (c *TomlConfig) UnmarshalTOML(data []byte) error
- type Value
- func (v *Value) AsInt() (int64, error)
- func (v *Value) AsString() (string, error)
- func (v *Value) AsStringSlice() ([]string, error)
- func (v *Value) AsToml() (*TomlConfig, error)
- func (v *Value) Interface() interface{}
- func (v *Value) MustInt() int64
- func (v *Value) MustString() string
- func (v *Value) MustStringSlice() []string
- func (v *Value) MustToml() *TomlConfig
- type Volume
- type WebUI
- func (in *WebUI) DeepCopy() *WebUI
- func (in *WebUI) DeepCopyInto(out *WebUI)
- func (in *WebUI) DeepCopyObject() runtime.Object
- func (s *WebUI) GetConditions() []metav1.Condition
- func (s *WebUI) GetDependencies() []recon.Dependency
- func (s *WebUI) GetServiceType() corev1.ServiceType
- func (s *WebUI) SetCondition(condition metav1.Condition)
- type WebUIDeps
- type WebUIList
- type WebUISpec
- type WebUIStatus
- type Workload
Constants ¶
const ( JobPhasePending = "Pending" JobPhaseRunning = "Running" JobPhaseCompleted = "Completed" JobPhaseFailed = "Failed" )
const ( BucketUniqLabel = "matrixorigin.io/bucket-unique-id" // AnnAnyInstanceRunning is a bucket annotation indicates whether any pod instances running in a mo cluster. // pod instances include logset/cn/dn, if any pod of logset/cn/dn is ever in running status, this annotation will set to "true". // and this annotation can only be set to true, will not delete at any time. AnnAnyInstanceRunning = "bucket.matrixorigin.io/any-instance-running" // BucketDataFinalizer blocks BucketClaim reclaim until data in bucket has been recycled BucketDataFinalizer = "matrixorigin.io/bucket-data-finalizer" // BucketCNFinalizerPrefix is finalizer of cn set BucketCNFinalizerPrefix = "matrixorigin.io/CN" // BucketDNFinalizerPrefix is finalizer of dn set BucketDNFinalizerPrefix = "matrixorigin.io/DN" )
const ( CNClaimPhasePending CNClaimPhase = "Pending" CNClaimPhaseBound CNClaimPhase = "Bound" CNClaimPhaseLost CNClaimPhase = "Lost" CNClaimPhaseOutdated CNClaimPhase = "Outdated" PodOwnerNameLabel = "matrixorigin.io/owner" ClaimSetNameLabel = "matrixorigin.io/claimset" DeleteOnReclaimAnno = "matrixorigin.io/delete-on-reclaim" // PodLastOwnerLabel records the last owner of the pod PodLastOwnerLabel = "matrixorigin.io/last-owner" // PodOutdatedLabel denotes the pod is outdated and should not be bound PodOutdatedLabel = "matrixorigin.io/outdated" )
const ( CNPodPhaseBound = "Bound" CNPodPhaseIdle = "Idle" CNPodPhaseDraining = "Draining" CNPodPhaseUnknown = "Unknown" CNPodPhaseTerminating = "Terminating" )
const ( PodManagementPolicyPooling = "Pooling" DirectPodLabel = "pool.matrixorigin.io/direct-pod" )
const ( // PodClaimedByLabel is a Pod label records the claim the claims the Pod PodClaimedByLabel = "pool.matrixorigin.io/claimed-by" // CNPodPhaseLabel is the pod phase in Pool CNPodPhaseLabel = "pool.matrixorigin.io/phase" // PoolNameLabel is the pool of CN claim or CN Pod PoolNameLabel = "pool.matrixorigin.io/pool-name" // PodManagementPolicyAnno denotes the management policy of a Pod PodManagementPolicyAnno = "pool.matrixorigin.io/management-policy" )
const ( CNStoreStateUnknown string = "Unknown" CNStoreStateDraining string = "Draining" CNStoreStateUp string = "Up" )
const ( ContainerPythonUdf string = "python-udf" ContainerPythonUdfDefaultPort int = 50051 ContainerPythonUdfDefaultImage string = "composer000/mo-python-udf-server:latest" // TODO change it )
const ( ContainerMain = "main" EnvGoMemLimit = "GOMEMLIMIT" EnvGoDebug = "GODEBUG" DefaultGODebug = "madvdontneed=1,gctrace=2" )
const ( StorePhaseUp = "Up" StorePhaseDown = "Down" )
const ( // StoreDrainingStartAnno is the annotation key that used to record the store draining start time StoreDrainingStartAnno = "matrixorigin.io/store-draining-start" // StoreConnectionAnno expose the connection count of the store StoreConnectionAnno = "matrixorigin.io/connections" // StoreScoreAnno expose the score of the store StoreScoreAnno = "matrixorigin.io/score" // StoreCordonAnno cordons a CN store StoreCordonAnno = "matrixorigin.io/store-cordon" )
const (
InPlacePoolRollingAnnoKey = "pool.matrixorigin.io/in-place-rolling"
)
const (
JobConditionTypeEnded = "Ended"
)
const (
OperatorVersionAnno = "matrixorigin.io/operator-version"
)
Variables ¶
var ( OpVersion1_2_0 = semver.MustParse("1.2.0") OpVersion1_3_0 = semver.MustParse("1.3.0") LatestOpVersion = OpVersion1_3_0 FirstOpVersion = OpVersion1_2_0 )
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "core.matrixorigin.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var (
MinimalVersion = semver.Version{Major: 0, Minor: 0, Patch: 0}
)
Functions ¶
func AddBucketFinalizer ¶
func BucketBindToMark ¶
func BucketBindToMark(logsetMeta metav1.ObjectMeta) string
func ContainFinalizerPrefix ¶
func DNSetKey ¶
func DNSetKey(mo *MatrixOneCluster) metav1.ObjectMeta
func GetCNPodUUID ¶
func HasMOFeature ¶
HasMOFeature returns whether a version contains certain MO feature
func IsPoolingPolicy ¶
func LogSetKey ¶
func LogSetKey(mo *MatrixOneCluster) metav1.ObjectMeta
func ProxyKey ¶
func ProxyKey(mo *MatrixOneCluster) metav1.ObjectMeta
func RemoveBucketFinalizer ¶
func SetBucketEverRunningAnn ¶
func UniqueBucketLabel ¶
func UniqueBucketLabel(s3Provider *S3Provider) string
UniqueBucketLabel generate an unique id for S3 provider, this id becomes a label in bucketClaim
func WebUIKey ¶
func WebUIKey(mo *MatrixOneCluster) metav1.ObjectMeta
Types ¶
type Backup ¶
type Backup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Meta is the backupMeta
Meta BackupMeta `json:"meta"`
}
A Backup is a resource that represents an MO physical backup +kubebuilder:object:root=true +kubebuilder:resource:scope="Cluster" +kubebuilder:printcolumn:name="ID",type="string",JSONPath=".meta.id" +kubebuilder:printcolumn:name="At",type="string",format="date-time",JSONPath=".meta.atTime" +kubebuilder:printcolumn:name="Source",type="string",JSONPath=".meta.sourceRef"
func (*Backup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.
func (*Backup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupJob ¶
type BackupJob struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the backupJobSpec
Spec BackupJobSpec `json:"spec"`
// Spec is the backupJobStatus
Status BackupJobStatus `json:"status,omitempty"`
}
A BackupJob is a resource that represents an MO backup job +kubebuilder:object:root=true +kubebuilder:resource:scope="Namespaced" +kubebuilder:printcolumn:name="phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Backup",type="string",JSONPath=".status.backup" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status
func (*BackupJob) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupJob.
func (*BackupJob) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupJob) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BackupJob) GetConditions ¶
func (*BackupJob) GetOverlay ¶
func (*BackupJob) GetSourceRef ¶
func (*BackupJob) SetCondition ¶
type BackupJobList ¶
type BackupJobList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BackupJob `json:"items"`
}
BackupJobList contains a list of BackupJob +kubebuilder:object:root=true
func (*BackupJobList) DeepCopy ¶
func (in *BackupJobList) DeepCopy() *BackupJobList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupJobList.
func (*BackupJobList) DeepCopyInto ¶
func (in *BackupJobList) DeepCopyInto(out *BackupJobList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupJobList) DeepCopyObject ¶
func (in *BackupJobList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupJobSpec ¶
type BackupJobSpec struct {
// ttl defines the time to live of the backup job after completed or failed
TTL *metav1.Duration `json:"ttl,omitempty"`
// source the backup source
Source BackupSource `json:"source"`
Target SharedStorageProvider `json:"target"`
Overlay *Overlay `json:"overlay,omitempty"`
}
BackupJobSpec specifies the backup job
func (*BackupJobSpec) DeepCopy ¶
func (in *BackupJobSpec) DeepCopy() *BackupJobSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupJobSpec.
func (*BackupJobSpec) DeepCopyInto ¶
func (in *BackupJobSpec) DeepCopyInto(out *BackupJobSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupJobStatus ¶
type BackupJobStatus struct {
ConditionalStatus `json:",inline"`
Phase string `json:"phase,omitempty"`
Backup string `json:"backup,omitempty"`
}
func (*BackupJobStatus) DeepCopy ¶
func (in *BackupJobStatus) DeepCopy() *BackupJobStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupJobStatus.
func (*BackupJobStatus) DeepCopyInto ¶
func (in *BackupJobStatus) DeepCopyInto(out *BackupJobStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupList ¶
type BackupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Backup `json:"items"`
}
BackupList contains a list of BackupJ +kubebuilder:object:root=true
func (*BackupList) DeepCopy ¶
func (in *BackupList) DeepCopy() *BackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupList.
func (*BackupList) DeepCopyInto ¶
func (in *BackupList) DeepCopyInto(out *BackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupList) DeepCopyObject ¶
func (in *BackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupMeta ¶
type BackupMeta struct {
// location is the data location of the backup
Location SharedStorageProvider `json:"location"`
// id uniquely identifies the backup
ID string `json:"id"`
// size is the backup data size
Size *resource.Quantity `json:"size,omitempty"`
// atTime is the backup start time
AtTime metav1.Time `json:"atTime"`
// completeTime the backup complete time
CompleteTime metav1.Time `json:"completeTime"`
// clusterRef is the reference to the cluster that produce this backup
SourceRef string `json:"sourceRef"`
Raw string `json:"raw"`
}
BackupMeta specifies the backup
func (*BackupMeta) DeepCopy ¶
func (in *BackupMeta) DeepCopy() *BackupMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupMeta.
func (*BackupMeta) DeepCopyInto ¶
func (in *BackupMeta) DeepCopyInto(out *BackupMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupSource ¶
type BackupSource struct {
// clusterRef is the name of the cluster to back up, mutual exclusive with cnSetRef
ClusterRef *string `json:"clusterRef,omitempty"`
// cnSetRef is the name of the cnSet to back up, mutual exclusive with clusterRef
CNSetRef *string `json:"cnSetRef,omitempty"`
// optional, secretRef is the name of the secret to use for authentication
SecretRef *string `json:"secretRef,omitempty"`
}
BackupSource is the source of the backup job
func (*BackupSource) DeepCopy ¶
func (in *BackupSource) DeepCopy() *BackupSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSource.
func (*BackupSource) DeepCopyInto ¶
func (in *BackupSource) DeepCopyInto(out *BackupSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketClaim ¶
type BucketClaim struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of BucketClaim
Spec BucketClaimSpec `json:"spec"`
// Status is the current state of BucketClaim
Status BucketClaimStatus `json:"status,omitempty"`
}
A BucketClaim is a resource that represents the object storage bucket resource used by a mo cluster
func ClaimedBucket ¶
func ClaimedBucket(c client.Client, provider *S3Provider) (*BucketClaim, error)
ClaimedBucket return claimed bucket according to S3Provider configuration, caller must ensure that provider is not nil NOTE: ClaimedBucket search bucket in cluster scope
func (*BucketClaim) DeepCopy ¶
func (in *BucketClaim) DeepCopy() *BucketClaim
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketClaim.
func (*BucketClaim) DeepCopyInto ¶
func (in *BucketClaim) DeepCopyInto(out *BucketClaim)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BucketClaim) DeepCopyObject ¶
func (in *BucketClaim) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BucketClaimList ¶
type BucketClaimList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BucketClaim `json:"items"`
}
BucketClaimList contains a list of BucketClaim
func (*BucketClaimList) DeepCopy ¶
func (in *BucketClaimList) DeepCopy() *BucketClaimList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketClaimList.
func (*BucketClaimList) DeepCopyInto ¶
func (in *BucketClaimList) DeepCopyInto(out *BucketClaimList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BucketClaimList) DeepCopyObject ¶
func (in *BucketClaimList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BucketClaimSpec ¶
type BucketClaimSpec struct {
// S3 specifies an S3 bucket as the shared storage provider, mutual-exclusive with other providers.
// +required
S3 *S3Provider `json:"s3,omitempty"`
// LogSetTemplate is a complete copy version of kruise statefulset PodTemplateSpec
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
LogSetTemplate corev1.PodTemplateSpec `json:"logSetSpec"`
}
func (*BucketClaimSpec) DeepCopy ¶
func (in *BucketClaimSpec) DeepCopy() *BucketClaimSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketClaimSpec.
func (*BucketClaimSpec) DeepCopyInto ¶
func (in *BucketClaimSpec) DeepCopyInto(out *BucketClaimSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketClaimStatus ¶
type BucketClaimStatus struct {
// BindTo implies namespace and name of logset which BucketClaim bound to, in format of "namespace/name"
BindTo string `json:"bindTo"`
// +kubebuilder:validation:Enum=InUse;Released;Deleting
State State `json:"state,omitempty"`
// ConditionalStatus includes condition of deleting s3 resource progress
ConditionalStatus `json:",inline"`
}
func (*BucketClaimStatus) DeepCopy ¶
func (in *BucketClaimStatus) DeepCopy() *BucketClaimStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketClaimStatus.
func (*BucketClaimStatus) DeepCopyInto ¶
func (in *BucketClaimStatus) DeepCopyInto(out *BucketClaimStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNClaim ¶
type CNClaim struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CNClaimSpec `json:"spec,omitempty"`
// +optional
Status CNClaimStatus `json:"status,omitempty"`
}
CNClaim claim a CN to use +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Pod",type="string",JSONPath=".spec.podName" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope="Namespaced"
func (*CNClaim) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaim.
func (*CNClaim) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNClaim) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNClaimList ¶
type CNClaimList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CNClaim `json:"items"`
}
CNClaimList contains a list of CNClaims
func (*CNClaimList) DeepCopy ¶
func (in *CNClaimList) DeepCopy() *CNClaimList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimList.
func (*CNClaimList) DeepCopyInto ¶
func (in *CNClaimList) DeepCopyInto(out *CNClaimList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNClaimList) DeepCopyObject ¶
func (in *CNClaimList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNClaimPhase ¶
type CNClaimPhase string
type CNClaimSet ¶
type CNClaimSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CNClaimSetSpec `json:"spec,omitempty"`
// +optional
Status CNClaimSetStatus `json:"status,omitempty"`
}
CNClaimSet orchestrates a set of CNClaims +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope="Namespaced" +kubebuilder:subresource:status +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas,selectorpath=.status.labelSelector
func (*CNClaimSet) DeepCopy ¶
func (in *CNClaimSet) DeepCopy() *CNClaimSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimSet.
func (*CNClaimSet) DeepCopyInto ¶
func (in *CNClaimSet) DeepCopyInto(out *CNClaimSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNClaimSet) DeepCopyObject ¶
func (in *CNClaimSet) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNClaimSetList ¶
type CNClaimSetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CNClaimSet `json:"items"`
}
CNClaimSetList contains a list of CNClaimSet
func (*CNClaimSetList) DeepCopy ¶
func (in *CNClaimSetList) DeepCopy() *CNClaimSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimSetList.
func (*CNClaimSetList) DeepCopyInto ¶
func (in *CNClaimSetList) DeepCopyInto(out *CNClaimSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNClaimSetList) DeepCopyObject ¶
func (in *CNClaimSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNClaimSetSpec ¶
type CNClaimSetSpec struct {
Replicas int32 `json:"replicas"`
Template CNClaimTemplate `json:"template"`
Selector *metav1.LabelSelector `json:"selector,omitempty"`
}
func (*CNClaimSetSpec) DeepCopy ¶
func (in *CNClaimSetSpec) DeepCopy() *CNClaimSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimSetSpec.
func (*CNClaimSetSpec) DeepCopyInto ¶
func (in *CNClaimSetSpec) DeepCopyInto(out *CNClaimSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNClaimSetStatus ¶
type CNClaimSetStatus struct {
Replicas int32 `json:"replicas"`
ReadyReplicas int32 `json:"readyReplicas"`
Claims []CNClaimStatus `json:"claims,omitempty"`
LabelSelector string `json:"labelSelector,omitempty"`
// +optional
// deprecated
PodSelector string `json:"podSelector,omitempty"`
}
func (*CNClaimSetStatus) DeepCopy ¶
func (in *CNClaimSetStatus) DeepCopy() *CNClaimSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimSetStatus.
func (*CNClaimSetStatus) DeepCopyInto ¶
func (in *CNClaimSetStatus) DeepCopyInto(out *CNClaimSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNClaimSpec ¶
type CNClaimSpec struct {
ClaimPodRef `json:",inline"`
// sourcePod is the pod that previously owned by this claim and is now being migrated
SourcePod *ClaimPodRef `json:"sourcePod,omitempty"`
Selector *metav1.LabelSelector `json:"selector"`
// +optional
CNLabels []CNLabel `json:"cnLabels,omitempty"`
// +optional
OwnerName *string `json:"ownerName,omitempty"`
// +optional
// AdditionalPodLabels specifies the addition labels added to Pod after the Pod is claimed by this claim
AdditionalPodLabels map[string]string `json:"additionalPodLabels,omitempty"`
// +optional
// PoolName is usually populated by controller that which pool the claim is nominated
PoolName string `json:"poolName,omitempty"`
}
func (*CNClaimSpec) DeepCopy ¶
func (in *CNClaimSpec) DeepCopy() *CNClaimSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimSpec.
func (*CNClaimSpec) DeepCopyInto ¶
func (in *CNClaimSpec) DeepCopyInto(out *CNClaimSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNClaimStatus ¶
type CNClaimStatus struct {
Phase CNClaimPhase `json:"phase,omitempty"`
Store CNStoreStatus `json:"store,omitempty"`
BoundTime *metav1.Time `json:"boundTime,omitempty"`
// migrate is the migrating status of Pods under CNClaim
Migrate *MigrateStatus `json:"migrate,omitempty"`
}
func (*CNClaimStatus) DeepCopy ¶
func (in *CNClaimStatus) DeepCopy() *CNClaimStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimStatus.
func (*CNClaimStatus) DeepCopyInto ¶
func (in *CNClaimStatus) DeepCopyInto(out *CNClaimStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNClaimTemplate ¶
type CNClaimTemplate struct {
EmbeddedMetadata `json:"metadata,omitempty"`
Spec CNClaimSpec `json:"spec,omitempty"`
}
func (*CNClaimTemplate) DeepCopy ¶
func (in *CNClaimTemplate) DeepCopy() *CNClaimTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNClaimTemplate.
func (*CNClaimTemplate) DeepCopyInto ¶
func (in *CNClaimTemplate) DeepCopyInto(out *CNClaimTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNGroup ¶
type CNGroup struct {
CNSetSpec `json:",inline"`
// Name is the CNGroup name, an error will be raised if duplicated name is found in a mo cluster
// +required
Name string `json:"name"`
}
func (*CNGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNGroup.
func (*CNGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNGroupStatus ¶
type CNGroupStatus struct {
Name string `json:"name,omitempty"`
Host string `json:"host,omitempty"`
Ready bool `json:"ready,omitempty"`
Synced bool `json:"synced,omitempty"`
}
func (*CNGroupStatus) DeepCopy ¶
func (in *CNGroupStatus) DeepCopy() *CNGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNGroupStatus.
func (*CNGroupStatus) DeepCopyInto ¶
func (in *CNGroupStatus) DeepCopyInto(out *CNGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNGroupsStatus ¶
type CNGroupsStatus struct {
DesiredGroups int `json:"desiredGroups,omitempty"`
ReadyGroups int `json:"readyGroups,omitempty"`
SyncedGroups int `json:"syncedGroups,omitempty"`
Groups []CNGroupStatus `json:"groups,omitempty"`
}
func (*CNGroupsStatus) DeepCopy ¶
func (in *CNGroupsStatus) DeepCopy() *CNGroupsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNGroupsStatus.
func (*CNGroupsStatus) DeepCopyInto ¶
func (in *CNGroupsStatus) DeepCopyInto(out *CNGroupsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (CNGroupsStatus) Ready ¶
func (s CNGroupsStatus) Ready() bool
func (CNGroupsStatus) Synced ¶
func (s CNGroupsStatus) Synced() bool
type CNLabel ¶
type CNLabel struct {
// Key is the store label key
Key string `json:"key,omitempty"`
// Values are the store label values
Values []string `json:"values,omitempty"`
}
func (*CNLabel) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNLabel.
func (*CNLabel) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNPool ¶
type CNPool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CNPoolSpec `json:"spec"`
// +optional
Status CNPoolStatus `json:"status,omitempty"`
}
CNPool maintains a pool of CN Pods +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope="Namespaced"
func (*CNPool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNPool.
func (*CNPool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNPool) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNPoolList ¶
type CNPoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CNPool `json:"items"`
}
CNPoolList contains a list of CNPool
func (*CNPoolList) DeepCopy ¶
func (in *CNPoolList) DeepCopy() *CNPoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNPoolList.
func (*CNPoolList) DeepCopyInto ¶
func (in *CNPoolList) DeepCopyInto(out *CNPoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNPoolList) DeepCopyObject ¶
func (in *CNPoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNPoolSpec ¶
type CNPoolSpec struct {
// Template is the CNSet template of the Pool
Template CNSetSpec `json:"template"`
// PodLabels is the Pod labels of the CN in Pool
PodLabels map[string]string `json:"podLabels,omitempty"`
// Deps is the dependencies of the Pool
Deps CNSetDeps `json:"deps"`
Strategy PoolStrategy `json:"strategy"`
}
func (*CNPoolSpec) DeepCopy ¶
func (in *CNPoolSpec) DeepCopy() *CNPoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNPoolSpec.
func (*CNPoolSpec) DeepCopyInto ¶
func (in *CNPoolSpec) DeepCopyInto(out *CNPoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNPoolStatus ¶
type CNPoolStatus struct {
}
func (*CNPoolStatus) DeepCopy ¶
func (in *CNPoolStatus) DeepCopy() *CNPoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNPoolStatus.
func (*CNPoolStatus) DeepCopyInto ¶
func (in *CNPoolStatus) DeepCopyInto(out *CNPoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNSet ¶
type CNSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of CNSet
Spec CNSetSpec `json:"spec"`
// Deps is the dependencies of CNSet
Deps CNSetDeps `json:"deps,omitempty"`
Status CNSetStatus `json:"status,omitempty"`
}
A CNSet is a resource that represents a set of MO's CN instances +kubebuilder:subresource:status +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas,selectorpath=.status.labelSelector
func (*CNSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNSet.
func (*CNSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CNSet) GetConditions ¶
func (*CNSet) GetDependencies ¶
func (s *CNSet) GetDependencies() []recon.Dependency
func (*CNSet) GetServiceType ¶
func (s *CNSet) GetServiceType() corev1.ServiceType
func (*CNSet) SetCondition ¶
type CNSetDeps ¶
type CNSetDeps struct {
LogSetRef `json:",inline"`
// The DNSet it depends on
// +kubebuilder:validation:Schemaless
// +kubebuilder:validation:Type=object
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
DNSet *DNSet `json:"dnSet,omitempty"`
}
func (*CNSetDeps) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNSetDeps.
func (*CNSetDeps) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNSetList ¶
type CNSetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CNSet `json:"items"`
}
CNSetList contains a list of CNSet
func (*CNSetList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNSetList.
func (*CNSetList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNSetList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CNSetSpec ¶
type CNSetSpec struct {
PodSet `json:",inline"`
ConfigThatChangeCNSpec `json:",inline"`
// ServiceType is the service type of cn service
// +optional
// +kubebuilder:default=ClusterIP
// +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer
ServiceType corev1.ServiceType `json:"serviceType,omitempty"`
// ServiceAnnotations are the annotations for the cn service
// +optional
ServiceAnnotations map[string]string `json:"serviceAnnotations,omitempty"`
// NodePort specifies the node port to use when ServiceType is NodePort or LoadBalancer,
// reconciling will fail if the node port is not available.
// +optional
NodePort *int32 `json:"nodePort,omitempty"`
// [TP, AP], default to TP
// +optional
// Deprecated: use labels instead
Role CNRole `json:"role,omitempty"`
// Labels are the CN labels for all the CN stores managed by this CNSet
Labels []CNLabel `json:"cnLabels,omitempty"`
// ScalingConfig declares the CN scaling behavior
ScalingConfig ScalingConfig `json:"scalingConfig,omitempty"`
// UpdateStrategy is the rolling-update strategy of CN
UpdateStrategy RollingUpdateStrategy `json:"updateStrategy,omitempty"`
TerminationPolicy *CNSetTerminationPolicy `json:"terminationPolicy,omitempty"`
// PodManagementPolicy is the pod management policy of the Pod in this Set
PodManagementPolicy *string `json:"podManagementPolicy,omitempty"`
// PodsToDelete are the Pods to delete in the CNSet
PodsToDelete []string `json:"podsToDelete,omitempty"`
// PauseUpdate means the CNSet should pause rolling-update
PauseUpdate bool `json:"pauseUpdate,omitempty"`
// ReusePVC means whether CNSet should reuse PVC
ReusePVC *bool `json:"reusePVC,omitempty"`
}
func (*CNSetSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNSetSpec.
func (*CNSetSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CNSetSpec) GetReusePVC ¶
func (*CNSetSpec) GetTerminationPolicy ¶
func (s *CNSetSpec) GetTerminationPolicy() CNSetTerminationPolicy
type CNSetStatus ¶
type CNSetStatus struct {
ConditionalStatus `json:",inline"`
Stores []CNStore `json:"stores,omitempty"`
Replicas int32 `json:"replicas,omitempty"`
ReadyReplicas int32 `json:"readyReplicas,omitempty"`
LabelSelector string `json:"labelSelector,omitempty"`
Host string `json:"host,omitempty"`
Port int `json:"port,omitempty"`
}
CNSetStatus Figure out what status should be exposed
func (*CNSetStatus) DeepCopy ¶
func (in *CNSetStatus) DeepCopy() *CNSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNSetStatus.
func (*CNSetStatus) DeepCopyInto ¶
func (in *CNSetStatus) DeepCopyInto(out *CNSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNSetTerminationPolicy ¶
type CNSetTerminationPolicy string
const ( CNSetTerminationPolicyDelete CNSetTerminationPolicy = "Delete" CNSetTerminationPolicyDrain CNSetTerminationPolicy = "Drain" )
type CNStore ¶
type CNStore struct {
UUID string `json:"uuid,omitempty"`
PodName string `json:"podName,omitempty"`
State string `json:"state,omitempty"`
}
func (*CNStore) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNStore.
func (*CNStore) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CNStoreStatus ¶
type CNStoreStatus struct {
ServiceID string `json:"serviceID,omitempty"`
LockServiceAddress string `json:"lockServiceAddress,omitempty"`
PipelineServiceAddress string `json:"pipelineServiceAddress,omitempty"`
SQLAddress string `json:"sqlAddress,omitempty"`
QueryAddress string `json:"queryAddress,omitempty"`
WorkState int32 `json:"workState,omitempty"`
Labels []CNLabel `json:"labels,omitempty"`
// PodName is the CN PodName
PodName string `json:"string,omitempty"`
// BoundTime is the time when the CN is bound
BoundTime *metav1.Time `json:"boundTime,omitempty"`
}
func (*CNStoreStatus) DeepCopy ¶
func (in *CNStoreStatus) DeepCopy() *CNStoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CNStoreStatus.
func (*CNStoreStatus) DeepCopyInto ¶
func (in *CNStoreStatus) DeepCopyInto(out *CNStoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificateRef ¶
type CertificateRef struct {
// secret name
// +required
Name string `json:"name"`
// cert files in the secret
// +required
Files []string `json:"files"`
}
func (*CertificateRef) DeepCopy ¶
func (in *CertificateRef) DeepCopy() *CertificateRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateRef.
func (*CertificateRef) DeepCopyInto ¶
func (in *CertificateRef) DeepCopyInto(out *CertificateRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClaimPodRef ¶
type ClaimPodRef struct {
// +optional
// PodName is usually populated by controller and would be part of the claim spec
// that must be persisted once bound
PodName string `json:"podName,omitempty"`
// +optional
// NodeName is usually populated by controller and would be part of the claim spec
NodeName string `json:"nodeName,omitempty"`
}
func (*ClaimPodRef) DeepCopy ¶
func (in *ClaimPodRef) DeepCopy() *ClaimPodRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClaimPodRef.
func (*ClaimPodRef) DeepCopyInto ¶
func (in *ClaimPodRef) DeepCopyInto(out *ClaimPodRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterMetrics ¶
type ClusterMetrics struct {
// SecretRef is the metrics user credential that allows operator to access
// metrics from MO
SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`
// Whether cluster metrics is initialized
Initialized bool `json:"initialized,omitempty"`
}
func (*ClusterMetrics) DeepCopy ¶
func (in *ClusterMetrics) DeepCopy() *ClusterMetrics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterMetrics.
func (*ClusterMetrics) DeepCopyInto ¶
func (in *ClusterMetrics) DeepCopyInto(out *ClusterMetrics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConditionalStatus ¶
func (*ConditionalStatus) DeepCopy ¶
func (in *ConditionalStatus) DeepCopy() *ConditionalStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionalStatus.
func (*ConditionalStatus) DeepCopyInto ¶
func (in *ConditionalStatus) DeepCopyInto(out *ConditionalStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ConditionalStatus) GetConditions ¶
func (c *ConditionalStatus) GetConditions() []metav1.Condition
func (*ConditionalStatus) SetCondition ¶
func (c *ConditionalStatus) SetCondition(condition metav1.Condition)
type ConfigThatChangeCNSpec ¶
type ConfigThatChangeCNSpec struct {
// CacheVolume is the desired local cache volume for CNSet,
// node storage will be used if not specified
// +optional
CacheVolume *Volume `json:"cacheVolume,omitempty"`
SharedStorageCache SharedStorageCache `json:"sharedStorageCache,omitempty"`
// PythonUdfSidecar is the python udf server in CN
PythonUdfSidecar PythonUdfSidecar `json:"pythonUdfSidecar,omitempty"`
}
ConfigThatChangeCNSpec is an auxiliary struct to hold the config that can change CN spec
func (*ConfigThatChangeCNSpec) DeepCopy ¶
func (in *ConfigThatChangeCNSpec) DeepCopy() *ConfigThatChangeCNSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigThatChangeCNSpec.
func (*ConfigThatChangeCNSpec) DeepCopyInto ¶
func (in *ConfigThatChangeCNSpec) DeepCopyInto(out *ConfigThatChangeCNSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSet ¶
type DNSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of DNSet
Spec DNSetSpec `json:"spec"`
// Deps is the dependencies of DNSet
Deps DNSetDeps `json:"deps,omitempty"`
Status DNSetStatus `json:"status,omitempty"`
}
A DNSet is a resource that represents a set of MO's DN instances +kubebuilder:subresource:status
func (*DNSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSet.
func (*DNSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DNSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DNSet) GetConditions ¶
func (*DNSet) GetDNSBasedIdentity ¶
func (*DNSet) GetDependencies ¶
func (d *DNSet) GetDependencies() []recon.Dependency
func (*DNSet) SetCondition ¶
type DNSetDeps ¶
type DNSetDeps struct {
LogSetRef `json:",inline"`
}
func (*DNSetDeps) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSetDeps.
func (*DNSetDeps) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSetList ¶
type DNSetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DNSet `json:"items"`
}
DNSetList contains a list of DNSet
func (*DNSetList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSetList.
func (*DNSetList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DNSetList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DNSetSpec ¶
type DNSetSpec struct {
PodSet `json:",inline"`
// CacheVolume is the desired local cache volume for DNSet,
// node storage will be used if not specified
// +optional
CacheVolume *Volume `json:"cacheVolume,omitempty"`
}
func (*DNSetSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSetSpec.
func (*DNSetSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSetStatus ¶
type DNSetStatus struct {
ConditionalStatus `json:",inline"`
FailoverStatus `json:",inline"`
}
func (*DNSetStatus) DeepCopy ¶
func (in *DNSetStatus) DeepCopy() *DNSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSetStatus.
func (*DNSetStatus) DeepCopyInto ¶
func (in *DNSetStatus) DeepCopyInto(out *DNSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DefaultArgs ¶
type DefaultArgs struct {
LogService []string `json:"logService,omitempty"`
DN []string `json:"dn,omitempty"`
CN []string `json:"cn,omitempty"`
Proxy []string `json:"proxy,omitempty"`
}
DefaultArgs contain default service args for logservice/dn/tp, these default args set in matrixone-operator-cm configmap
func (*DefaultArgs) DeepCopy ¶
func (in *DefaultArgs) DeepCopy() *DefaultArgs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultArgs.
func (*DefaultArgs) DeepCopyInto ¶
func (in *DefaultArgs) DeepCopyInto(out *DefaultArgs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbeddedMetadata ¶
type EmbeddedMetadata struct {
// +optional
Name string `json:"name,omitempty"`
// +optional
Labels map[string]string `json:"labels,omitempty"`
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*EmbeddedMetadata) DeepCopy ¶
func (in *EmbeddedMetadata) DeepCopy() *EmbeddedMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedMetadata.
func (*EmbeddedMetadata) DeepCopyInto ¶
func (in *EmbeddedMetadata) DeepCopyInto(out *EmbeddedMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalLogSet ¶
type ExternalLogSet struct {
// HAKeeperEndpoint of the ExternalLogSet
// +required
HAKeeperEndpoint string `json:"haKeeperEndpoint,omitempty"`
}
func (*ExternalLogSet) DeepCopy ¶
func (in *ExternalLogSet) DeepCopy() *ExternalLogSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalLogSet.
func (*ExternalLogSet) DeepCopyInto ¶
func (in *ExternalLogSet) DeepCopyInto(out *ExternalLogSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FailedPodStrategy ¶
type FailedPodStrategy string
const ( FailedPodStrategyOrphan FailedPodStrategy = "Orphan" FailedPodStrategyDelete FailedPodStrategy = "Delete" )
type FailoverStatus ¶
type FailoverStatus struct {
AvailableStores []Store `json:"availableStores,omitempty"`
FailedStores []Store `json:"failedStores,omitempty"`
}
func (*FailoverStatus) DeepCopy ¶
func (in *FailoverStatus) DeepCopy() *FailoverStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailoverStatus.
func (*FailoverStatus) DeepCopyInto ¶
func (in *FailoverStatus) DeepCopyInto(out *FailoverStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FailoverStatus) StoresFailedFor ¶
func (s *FailoverStatus) StoresFailedFor(d time.Duration) []Store
type FileSystemProvider ¶
type FileSystemProvider struct {
// Path the path that the shared fileSystem mounted to
// +required
Path string `json:"path"`
}
func (*FileSystemProvider) DeepCopy ¶
func (in *FileSystemProvider) DeepCopy() *FileSystemProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileSystemProvider.
func (*FileSystemProvider) DeepCopyInto ¶
func (in *FileSystemProvider) DeepCopyInto(out *FileSystemProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InitialConfig ¶
type InitialConfig struct {
// LogShards is the initial number of log shards,
// cannot be tuned after cluster creation currently.
// default to 1
// +required
LogShards *int `json:"logShards,omitempty"`
// DNShards is the initial number of DN shards,
// cannot be tuned after cluster creation currently.
// default to 1
// +required
DNShards *int `json:"dnShards,omitempty"`
// LogShardReplicas is the replica numbers of each log shard,
// cannot be tuned after cluster creation currently.
// default to 3 if LogSet replicas >= 3, to 1 otherwise
// +required
LogShardReplicas *int `json:"logShardReplicas,omitempty"`
// RestoreFrom declares the HAKeeper data should be restored
// from the given path when hakeeper is bootstrapped
RestoreFrom *string `json:"restoreFrom,omitempty"`
}
func (*InitialConfig) DeepCopy ¶
func (in *InitialConfig) DeepCopy() *InitialConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitialConfig.
func (*InitialConfig) DeepCopyInto ¶
func (in *InitialConfig) DeepCopyInto(out *InitialConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogSet ¶
type LogSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of LogSet
Spec LogSetSpec `json:"spec"`
Status LogSetStatus `json:"status,omitempty"`
}
A LogSet is a resource that represents a set of MO's LogService instances +kubebuilder:subresource:status
func (*LogSet) AsDependency ¶
func (*LogSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSet.
func (*LogSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LogSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*LogSet) GetConditions ¶
func (*LogSet) SetCondition ¶
type LogSetDiscovery ¶
type LogSetDiscovery struct {
Port int32 `json:"port,omitempty"`
Address string `json:"address,omitempty"`
}
func (*LogSetDiscovery) DeepCopy ¶
func (in *LogSetDiscovery) DeepCopy() *LogSetDiscovery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetDiscovery.
func (*LogSetDiscovery) DeepCopyInto ¶
func (in *LogSetDiscovery) DeepCopyInto(out *LogSetDiscovery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LogSetDiscovery) String ¶
func (l *LogSetDiscovery) String() string
type LogSetList ¶
type LogSetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []LogSet `json:"items"`
}
LogSetList contains a list of LogSet
func (*LogSetList) DeepCopy ¶
func (in *LogSetList) DeepCopy() *LogSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetList.
func (*LogSetList) DeepCopyInto ¶
func (in *LogSetList) DeepCopyInto(out *LogSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LogSetList) DeepCopyObject ¶
func (in *LogSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LogSetRef ¶
type LogSetRef struct {
// The LogSet it depends on, mutual exclusive with ExternalLogSet
// +kubebuilder:validation:Schemaless
// +kubebuilder:validation:Type=object
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
LogSet *LogSet `json:"logSet,omitempty"`
// An external LogSet the CNSet should connected to,
// mutual exclusive with LogSet
// TODO: rethink the schema of ExternalLogSet
// +optional
ExternalLogSet *ExternalLogSet `json:"externalLogSet,omitempty"`
}
LogSetRef reference to an LogSet, either internal or external
func (*LogSetRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetRef.
func (*LogSetRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogSetSpec ¶
type LogSetSpec struct {
PodSet `json:",inline"`
// Volume is the local persistent volume for each LogService instance
// +required
Volume Volume `json:"volume"`
// +required
SharedStorage SharedStorageProvider `json:"sharedStorage"`
// InitialConfig is the initial configuration of HAKeeper
// InitialConfig is immutable
// +optional
InitialConfig InitialConfig `json:"initialConfig"`
// StoreFailureTimeout is the timeout to fail-over the logset Pod after a failure of it is observed
// +optional
StoreFailureTimeout *metav1.Duration `json:"storeFailureTimeout,omitempty"`
// FailedPodStrategy controls how to handle failed pod when failover happens, default to Delete
FailedPodStrategy *FailedPodStrategy `json:"failedPodStrategy,omitempty"`
// PVCRetentionPolicy defines the retention policy of orphaned PVCs due to cluster deletion, scale-in
// or failover. Available options:
// - Delete: delete orphaned PVCs
// - Retain: keep orphaned PVCs, if the corresponding Pod get created again (e.g. scale-in and scale-out, recreate the cluster),
// the Pod will reuse the retained PVC which contains previous data. Retained PVCs require manual cleanup if they are no longer needed.
// The default policy is Delete.
// +optional
PVCRetentionPolicy *PVCRetentionPolicy `json:"pvcRetentionPolicy,omitempty"`
}
func (*LogSetSpec) DeepCopy ¶
func (in *LogSetSpec) DeepCopy() *LogSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetSpec.
func (*LogSetSpec) DeepCopyInto ¶
func (in *LogSetSpec) DeepCopyInto(out *LogSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LogSetSpec) GetFailedPodStrategy ¶
func (l *LogSetSpec) GetFailedPodStrategy() FailedPodStrategy
func (*LogSetSpec) GetPVCRetentionPolicy ¶
func (l *LogSetSpec) GetPVCRetentionPolicy() PVCRetentionPolicy
func (*LogSetSpec) GetS3RetentionPolicy ¶
func (l *LogSetSpec) GetS3RetentionPolicy() *PVCRetentionPolicy
func (*LogSetSpec) GetStoreFailureTimeout ¶
func (l *LogSetSpec) GetStoreFailureTimeout() metav1.Duration
type LogSetStatus ¶
type LogSetStatus struct {
ConditionalStatus `json:",inline"`
FailoverStatus `json:",inline"`
Discovery *LogSetDiscovery `json:"discovery,omitempty"`
}
TODO: figure out what status should be exposed
func (*LogSetStatus) DeepCopy ¶
func (in *LogSetStatus) DeepCopy() *LogSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetStatus.
func (*LogSetStatus) DeepCopyInto ¶
func (in *LogSetStatus) DeepCopyInto(out *LogSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MainContainer ¶
type MainContainer struct {
// Image is the docker image of the main container
// +optional
Image string `json:"image,omitempty"`
// Resources is the resource requirement of the main conainer
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}
MainContainer is the description of the main container of a Pod
func (*MainContainer) DeepCopy ¶
func (in *MainContainer) DeepCopy() *MainContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MainContainer.
func (*MainContainer) DeepCopyInto ¶
func (in *MainContainer) DeepCopyInto(out *MainContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MainContainerOverlay ¶
type MainContainerOverlay struct {
// +optional
Command []string `json:"command,omitempty"`
// +optional
Args []string `json:"args,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Env []corev1.EnvVar `json:"env,omitempty"`
// ImagePullPolicy is the pull policy of MatrixOne image. The default value is the same as the
// default of Kubernetes.
// +optional
// +kubebuilder:default=IfNotPresent
// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
StartupProbe *corev1.Probe `json:"startupProbe,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Lifecycle *corev1.Lifecycle `json:"lifecycle,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
SecurityContext *corev1.SecurityContext `json:"mainContainerSecurityContext,omitempty"`
}
func (*MainContainerOverlay) DeepCopy ¶
func (in *MainContainerOverlay) DeepCopy() *MainContainerOverlay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MainContainerOverlay.
func (*MainContainerOverlay) DeepCopyInto ¶
func (in *MainContainerOverlay) DeepCopyInto(out *MainContainerOverlay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MatrixOneCluster ¶
type MatrixOneCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of MatrixOneCluster
Spec MatrixOneClusterSpec `json:"spec"`
// Status is the current state of MatrixOneCluster
Status MatrixOneClusterStatus `json:"status,omitempty"`
}
A MatrixOneCluster is a resource that represents a MatrixOne Cluster +kubebuilder:subresource:status +kubebuilder:resource:shortName=mo +kubebuilder:printcolumn:name="Log",type="integer",JSONPath=".spec.logService.replicas" +kubebuilder:printcolumn:name="DN",type="integer",JSONPath=".spec.dn.replicas" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*MatrixOneCluster) DeepCopy ¶
func (in *MatrixOneCluster) DeepCopy() *MatrixOneCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatrixOneCluster.
func (*MatrixOneCluster) DeepCopyInto ¶
func (in *MatrixOneCluster) DeepCopyInto(out *MatrixOneCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MatrixOneCluster) DeepCopyObject ¶
func (in *MatrixOneCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MatrixOneCluster) DefaultImage ¶
func (m *MatrixOneCluster) DefaultImage() string
func (*MatrixOneCluster) DnSetImage ¶
func (m *MatrixOneCluster) DnSetImage() string
func (*MatrixOneCluster) GetConditions ¶
func (mo *MatrixOneCluster) GetConditions() []metav1.Condition
func (*MatrixOneCluster) GetMetricReaderEnabled ¶
func (m *MatrixOneCluster) GetMetricReaderEnabled() bool
func (*MatrixOneCluster) GetTN ¶
func (m *MatrixOneCluster) GetTN() *DNSetSpec
func (*MatrixOneCluster) LogSetImage ¶
func (m *MatrixOneCluster) LogSetImage() string
func (*MatrixOneCluster) ProxySetImage ¶
func (m *MatrixOneCluster) ProxySetImage() string
func (*MatrixOneCluster) SetCondition ¶
func (mo *MatrixOneCluster) SetCondition(condition metav1.Condition)
type MatrixOneClusterList ¶
type MatrixOneClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MatrixOneCluster `json:"items"`
}
MatrixOneClusterList contains a list of MatrixOneCluster
func (*MatrixOneClusterList) DeepCopy ¶
func (in *MatrixOneClusterList) DeepCopy() *MatrixOneClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatrixOneClusterList.
func (*MatrixOneClusterList) DeepCopyInto ¶
func (in *MatrixOneClusterList) DeepCopyInto(out *MatrixOneClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MatrixOneClusterList) DeepCopyObject ¶
func (in *MatrixOneClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MatrixOneClusterSpec ¶
type MatrixOneClusterSpec struct {
// TP is the default CN pod set that accepts client connections and execute queries
// Deprecated: use cnGroups instead
// +optional
TP *CNSetSpec `json:"tp,omitempty"`
// AP is an optional CN pod set that accept MPP sub-plans to accelerate sql queries
// Deprecated: use cnGroups instead
// +optional
AP *CNSetSpec `json:"ap,omitempty"`
// CNGroups are CN pod sets that have different spec like resources, arch, store labels
// +listMapKey=name
// +listType=map
CNGroups []CNGroup `json:"cnGroups,omitempty"`
// DN is the default DN pod set of this Cluster
// Deprecated: use TN instead
DN *DNSetSpec `json:"dn,omitempty"`
// TN is the default TN pod set of this Cluster
TN *DNSetSpec `json:"tn,omitempty"`
// LogService is the default LogService pod set of this cluster
LogService LogSetSpec `json:"logService"`
// WebUI is the default web ui pod of this cluster
// +optional
WebUI *WebUISpec `json:"webui,omitempty"`
// Proxy defines an optional MO Proxy of this cluster
// +optional
Proxy *ProxySetSpec `json:"proxy,omitempty"`
// Version is the version of the cluster, which translated
// to the docker image tag used for each component.
// default to the recommended version of the operator
// +required
Version string `json:"version"`
// ImageRepository allows user to override the default image
// repository in order to use a docker registry proxy or private
// registry.
// +required
ImageRepository string `json:"imageRepository,omitempty"`
// TopologyEvenSpread specifies default topology policy for all components,
// this will be overridden by component-level config
// +optional
TopologyEvenSpread []string `json:"topologySpread,omitempty"`
// NodeSelector specifies default node selector for all components,
// this will be overridden by component-level config
// +optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// +optional
ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
// +optional
// +immutable
RestoreFrom *string `json:"restoreFrom,omitempty"`
// +optional
// MetricReaderEnabled enables metric reader for operator and other apps to query
// metric from MO cluster
MetricReaderEnabled *bool `json:"metricReaderEnabled,omitempty"`
// SemanticVersion override the semantic version of CN if set,
// the semantic version of CN will be default to the image tag,
// if the semantic version is not set, nor the image tag is a valid semantic version,
// operator will treat the MO as unknown version and will not apply any version-specific
// reconciliations
// +optional
SemanticVersion *string `json:"semanticVersion,omitempty"`
OperatorVersion *string `json:"operatorVersion,omitempty"`
// +optional
MemoryFsSize *resource.Quantity `json:"memoryFsSize,omitempty"`
}
MatrixOneClusterSpec defines the desired state of MatrixOneCluster Note that MatrixOneCluster does not support specify overlay for underlying sets directly due to the size limitation of kubernetes apiserver
func (*MatrixOneClusterSpec) DeepCopy ¶
func (in *MatrixOneClusterSpec) DeepCopy() *MatrixOneClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatrixOneClusterSpec.
func (*MatrixOneClusterSpec) DeepCopyInto ¶
func (in *MatrixOneClusterSpec) DeepCopyInto(out *MatrixOneClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MatrixOneClusterStatus ¶
type MatrixOneClusterStatus struct {
ConditionalStatus `json:",inline"`
// Phase is a human-readable description of current cluster condition,
// programmatic client should rely on ConditionalStatus rather than phase.
Phase string `json:"phase,omitempty"`
// CredentialRef is the initial credential of the mo database which can be
// used to connect to the database.
CredentialRef *corev1.LocalObjectReference `json:"credentialRef,omitempty"`
ClusterMetrics ClusterMetrics `json:"clusterMetrics,omitempty"`
CNGroupStatus CNGroupsStatus `json:"cnGroups,omitempty"`
// DN is the DN set status
DN *DNSetStatus `json:"dn,omitempty"`
// Proxy is the Proxy set status
Proxy *ProxySetStatus `json:"proxy,omitempty"`
// Webui is the webui service status
Webui *WebUIStatus `json:"webui,omitempty"`
// LogService is the LogService status
LogService *LogSetStatus `json:"logService,omitempty"`
// Readable is the readable status for human
Readable *ReadableStatus `json:"readable,omitempty"`
Host string `json:"host,omitempty"`
Port int `json:"port,omitempty"`
}
MatrixOneClusterStatus defines the observed state of MatrixOneCluster
func (*MatrixOneClusterStatus) DeepCopy ¶
func (in *MatrixOneClusterStatus) DeepCopy() *MatrixOneClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatrixOneClusterStatus.
func (*MatrixOneClusterStatus) DeepCopyInto ¶
func (in *MatrixOneClusterStatus) DeepCopyInto(out *MatrixOneClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MigrateStatus ¶
type MigrateStatus struct {
Source Workload `json:"source,omitempty"`
}
func (*MigrateStatus) DeepCopy ¶
func (in *MigrateStatus) DeepCopy() *MigrateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrateStatus.
func (*MigrateStatus) DeepCopyInto ¶
func (in *MigrateStatus) DeepCopyInto(out *MigrateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectRef ¶
type ObjectRef struct {
// +optional
Namespace string `json:"namespace,omitempty"`
// +required
Name string `json:"name"`
}
func (*ObjectRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectRef.
func (*ObjectRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectRef) NamespacedName ¶
func (o *ObjectRef) NamespacedName() types.NamespacedName
type Overlay ¶
type Overlay struct {
MainContainerOverlay `json:",inline"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Volumes []corev1.Volume `json:"volumes,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
VolumeClaims []corev1.PersistentVolumeClaim `json:"volumeClaims,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
InitContainers []corev1.Container `json:"initContainers,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"`
// +optional
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Affinity *corev1.Affinity `json:"affinity,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// +optional
PriorityClassName string `json:"priorityClassName,omitempty"`
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
HostAliases []corev1.HostAlias `json:"hostAliases,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
// +optional
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`
// +optional
PodLabels map[string]string `json:"podLabels,omitempty"`
// +optional
PodAnnotations map[string]string `json:"podAnnotations,omitempty"`
ShareProcessNamespace *bool `json:"shareProcessNamespace,omitempty"`
}
Overlay allows advanced customization of the pod spec in the set
func (*Overlay) AppendVolumeClaims ¶
func (o *Overlay) AppendVolumeClaims(claims *[]corev1.PersistentVolumeClaim)
AppendVolumeClaims append the volume claims to the given claims
func (*Overlay) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overlay.
func (*Overlay) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Overlay) OverlayMainContainer ¶
func (*Overlay) OverlayPodMeta ¶
func (o *Overlay) OverlayPodMeta(meta *metav1.ObjectMeta)
func (*Overlay) OverlayPodSpec ¶
type PVCRetentionPolicy ¶
type PVCRetentionPolicy string
const ( PVCRetentionPolicyDelete PVCRetentionPolicy = "Delete" PVCRetentionPolicyRetain PVCRetentionPolicy = "Retain" )
type PodSet ¶
type PodSet struct {
MainContainer `json:",inline"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Overlay *Overlay `json:"overlay,omitempty"`
// Replicas is the desired number of pods of this set
Replicas int32 `json:"replicas"`
// TopologyEvenSpread specifies what topology domains the Pods in set should be
// evenly spread in.
// This will be overridden by .overlay.TopologySpreadConstraints
// +optional
TopologyEvenSpread []string `json:"topologySpread,omitempty"`
// +optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Config is the raw config for pods
Config *TomlConfig `json:"config,omitempty"`
// If enabled, use the Pod dns name as the Pod identity
// Deprecated: DNSBasedIdentity is barely for keeping backward compatibility
DNSBasedIdentity *bool `json:"dnsBasedIdentity,omitempty"`
// ClusterDomain is the cluster-domain of current kubernetes cluster,
// refer https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/ for details
ClusterDomain string `json:"clusterDomain,omitempty"`
// ServiceArgs define command line options for process, used by logset/cnset/dnset service.
// NOTE: user should not define "-cfg" argument in this field, which is defined default by controller
// +optional
ServiceArgs []string `json:"serviceArgs,omitempty"`
// MemoryLimitPercent is percent used to set GOMEMLIMIT env, its value must be in interval (0, 100].
// GOMEMLIMIT = limits.memory * MemoryLimitPercent / 100
// +optional
MemoryLimitPercent *int `json:"memoryLimitPercent,omitempty"`
// ExportToPrometheus enables the pod to be discovered scraped by Prometheus
ExportToPrometheus *bool `json:"exportToPrometheus,omitempty"`
// PromDiscoveryScheme indicates how the Pod will be discovered by prometheus, options:
// - Pod: the pod will be discovered via will-known labels on the Pod
// - Service: the pod will be discovered via will-known annotations in the service which expose endpoints to the pods
// default to Service
PromDiscoveryScheme *PromDiscoveryScheme `json:"promDiscoveryScheme,omitempty"`
// SemanticVersion override the semantic version of CN if set,
// the semantic version of CN will be default to the image tag,
// if the semantic version is not set, nor the image tag is a valid semantic version,
// operator will treat the MO as unknown version and will not apply any version-specific
// reconciliations
// +optional
SemanticVersion *string `json:"semanticVersion,omitempty"`
// OperatorVersion is the controller version of mo-operator that should be used to
// reconcile this set
OperatorVersion *string `json:"operatorVersion,omitempty"`
// MemoryFsSize is the size of memory filesystem, which will be used to store matrixone binary to skip page cache overhead
// Binary would be loaded from disk if MemoryFsSize is not set
// +optional
MemoryFsSize *resource.Quantity `json:"memoryFsSize,omitempty"`
}
PodSet is an auxiliary struct to describe a set of isomorphic pods.
func (*PodSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSet.
func (*PodSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodSet) GetExportToPrometheus ¶
func (*PodSet) GetOperatorVersion ¶
func (*PodSet) GetPromDiscoveryScheme ¶
func (p *PodSet) GetPromDiscoveryScheme() PromDiscoveryScheme
func (*PodSet) PromDiscoveredByPod ¶
func (*PodSet) PromDiscoveredByService ¶
type PoolScaleStrategy ¶
type PoolScaleStrategy struct {
MaxIdle int32 `json:"maxIdle"`
// +optional
// MaxPods allowed in this Pool, nil means no limit
MaxPods *int32 `json:"maxPods,omitempty"`
}
func (*PoolScaleStrategy) DeepCopy ¶
func (in *PoolScaleStrategy) DeepCopy() *PoolScaleStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolScaleStrategy.
func (*PoolScaleStrategy) DeepCopyInto ¶
func (in *PoolScaleStrategy) DeepCopyInto(out *PoolScaleStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PoolScaleStrategy) GetMaxPods ¶
func (s *PoolScaleStrategy) GetMaxPods() int32
type PoolStrategy ¶
type PoolStrategy struct {
// UpdateStrategy defines the strategy for pool updating
UpdateStrategy PoolUpdateStrategy `json:"updateStrategy"`
// UpdateStrategy defines the strategy for pool scaling
ScaleStrategy PoolScaleStrategy `json:"scaleStrategy"`
}
func (*PoolStrategy) DeepCopy ¶
func (in *PoolStrategy) DeepCopy() *PoolStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolStrategy.
func (*PoolStrategy) DeepCopyInto ¶
func (in *PoolStrategy) DeepCopyInto(out *PoolStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PoolUpdateStrategy ¶
type PoolUpdateStrategy struct {
// +optional
ReclaimTimeout *metav1.Duration `json:"reclaimTimeout,omitempty"`
}
func (*PoolUpdateStrategy) DeepCopy ¶
func (in *PoolUpdateStrategy) DeepCopy() *PoolUpdateStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolUpdateStrategy.
func (*PoolUpdateStrategy) DeepCopyInto ¶
func (in *PoolUpdateStrategy) DeepCopyInto(out *PoolUpdateStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PromDiscoveryScheme ¶
type PromDiscoveryScheme string
const ( PromDiscoverySchemePod PromDiscoveryScheme = "Pod" PromDiscoverySchemeService PromDiscoveryScheme = "Service" )
type ProxySet ¶
type ProxySet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of ProxySet
Spec ProxySetSpec `json:"spec"`
// Deps is the dependencies of ProxySet
Deps ProxySetDeps `json:"deps,omitempty"`
Status ProxySetStatus `json:"status,omitempty"`
}
A ProxySet is a resource that represents a set of MO's Proxy instances +kubebuilder:subresource:status
func (*ProxySet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySet.
func (*ProxySet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxySet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ProxySet) GetConditions ¶
func (*ProxySet) GetDependencies ¶
func (s *ProxySet) GetDependencies() []recon.Dependency
func (*ProxySet) GetServiceType ¶
func (s *ProxySet) GetServiceType() corev1.ServiceType
func (*ProxySet) SetCondition ¶
type ProxySetDeps ¶
type ProxySetDeps struct {
LogSetRef `json:",inline"`
}
func (*ProxySetDeps) DeepCopy ¶
func (in *ProxySetDeps) DeepCopy() *ProxySetDeps
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySetDeps.
func (*ProxySetDeps) DeepCopyInto ¶
func (in *ProxySetDeps) DeepCopyInto(out *ProxySetDeps)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxySetList ¶
type ProxySetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ProxySet `json:"items"`
}
ProxySetList contains a list of Proxy
func (*ProxySetList) DeepCopy ¶
func (in *ProxySetList) DeepCopy() *ProxySetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySetList.
func (*ProxySetList) DeepCopyInto ¶
func (in *ProxySetList) DeepCopyInto(out *ProxySetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxySetList) DeepCopyObject ¶
func (in *ProxySetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ProxySetSpec ¶
type ProxySetSpec struct {
PodSet `json:",inline"`
// ServiceType is the service type of proxy service
// +optional
// +kubebuilder:default=ClusterIP
// +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer
ServiceType corev1.ServiceType `json:"serviceType,omitempty"`
// ServiceAnnotations are the annotations for the proxy service
// +optional
ServiceAnnotations map[string]string `json:"serviceAnnotations,omitempty"`
// NodePort specifies the node port to use when ServiceType is NodePort or LoadBalancer,
// reconciling will fail if the node port is not available.
// +optional
NodePort *int32 `json:"nodePort,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty"`
// WaitPluginAddr is the address of the plugin to wait for
// +optional
WaitPluginAddr *string `json:"waitPluginAddr,omitempty"`
}
func (*ProxySetSpec) DeepCopy ¶
func (in *ProxySetSpec) DeepCopy() *ProxySetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySetSpec.
func (*ProxySetSpec) DeepCopyInto ¶
func (in *ProxySetSpec) DeepCopyInto(out *ProxySetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxySetStatus ¶
type ProxySetStatus struct {
ConditionalStatus `json:",inline"`
Host string `json:"host,omitempty"`
Port int `json:"port,omitempty"`
}
func (*ProxySetStatus) DeepCopy ¶
func (in *ProxySetStatus) DeepCopy() *ProxySetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySetStatus.
func (*ProxySetStatus) DeepCopyInto ¶
func (in *ProxySetStatus) DeepCopyInto(out *ProxySetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PythonUdfSidecar ¶
type PythonUdfSidecar struct {
Enabled bool `json:"enabled,omitempty"`
Port int `json:"port,omitempty"`
// Image is the docker image of the python udf server
Image string `json:"image,omitempty"`
// Resources is the resource requirement of the python udf server
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Overlay *MainContainerOverlay `json:"overlay,omitempty"`
}
func (*PythonUdfSidecar) DeepCopy ¶
func (in *PythonUdfSidecar) DeepCopy() *PythonUdfSidecar
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PythonUdfSidecar.
func (*PythonUdfSidecar) DeepCopyInto ¶
func (in *PythonUdfSidecar) DeepCopyInto(out *PythonUdfSidecar)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReadableStatus ¶
type ReadableStatus struct {
Log string `json:"log,omitempty"`
DN string `json:"dn,omitempty"`
CN string `json:"cn,omitempty"`
}
func (*ReadableStatus) DeepCopy ¶
func (in *ReadableStatus) DeepCopy() *ReadableStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadableStatus.
func (*ReadableStatus) DeepCopyInto ¶
func (in *ReadableStatus) DeepCopyInto(out *ReadableStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreJob ¶
type RestoreJob struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the restoreJobSpec
Spec RestoreJobSpec `json:"spec"`
// Spec is the restoreJobStatus
Status RestoreJobStatus `json:"status,omitempty"`
Overlay *Overlay `json:"overlay,omitempty"`
}
A RestoreJob is a resource that represents an MO restore job +kubebuilder:object:root=true +kubebuilder:resource:scope="Namespaced" +kubebuilder:printcolumn:name="phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status
func (*RestoreJob) DeepCopy ¶
func (in *RestoreJob) DeepCopy() *RestoreJob
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreJob.
func (*RestoreJob) DeepCopyInto ¶
func (in *RestoreJob) DeepCopyInto(out *RestoreJob)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RestoreJob) DeepCopyObject ¶
func (in *RestoreJob) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RestoreJob) GetConditions ¶
func (r *RestoreJob) GetConditions() []metav1.Condition
func (*RestoreJob) GetOverlay ¶
func (r *RestoreJob) GetOverlay() *Overlay
func (*RestoreJob) GetPhase ¶
func (r *RestoreJob) GetPhase() string
func (*RestoreJob) GetTTL ¶
func (r *RestoreJob) GetTTL() time.Duration
func (*RestoreJob) SetCondition ¶
func (r *RestoreJob) SetCondition(condition metav1.Condition)
func (*RestoreJob) SetPhase ¶
func (r *RestoreJob) SetPhase(phase string)
type RestoreJobList ¶
type RestoreJobList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []RestoreJob `json:"items"`
}
RestoreJobList contains a list of RestoreJob +kubebuilder:object:root=true
func (*RestoreJobList) DeepCopy ¶
func (in *RestoreJobList) DeepCopy() *RestoreJobList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreJobList.
func (*RestoreJobList) DeepCopyInto ¶
func (in *RestoreJobList) DeepCopyInto(out *RestoreJobList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RestoreJobList) DeepCopyObject ¶
func (in *RestoreJobList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RestoreJobSpec ¶
type RestoreJobSpec struct {
// ttl defines the time to live of the backup job after completed or failed
TTL *metav1.Duration `json:"ttl,omitempty"`
// backupName specifies the backup to restore, must be set UNLESS externalSource is set
BackupName string `json:"backupName,omitempty"`
// optional, restore from an external source, mutual exclusive with backupName
ExternalSource *SharedStorageProvider `json:"externalSource,omitempty"`
// target specifies the restore location
Target SharedStorageProvider `json:"target"`
}
func (*RestoreJobSpec) DeepCopy ¶
func (in *RestoreJobSpec) DeepCopy() *RestoreJobSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreJobSpec.
func (*RestoreJobSpec) DeepCopyInto ¶
func (in *RestoreJobSpec) DeepCopyInto(out *RestoreJobSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreJobStatus ¶
type RestoreJobStatus struct {
ConditionalStatus `json:",inline"`
Phase string `json:"phase"`
}
func (*RestoreJobStatus) DeepCopy ¶
func (in *RestoreJobStatus) DeepCopy() *RestoreJobStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreJobStatus.
func (*RestoreJobStatus) DeepCopyInto ¶
func (in *RestoreJobStatus) DeepCopyInto(out *RestoreJobStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RollingUpdateStrategy ¶
type RollingUpdateStrategy struct {
// MaxSurge is an optional field that specifies the maximum number of Pods that
// can be created over the desired number of Pods.
// +optional
MaxSurge *intstr.IntOrString `json:"maxSurge,omitempty"`
// can be unavailable during the update process.
// +optional
MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`
}
func (*RollingUpdateStrategy) DeepCopy ¶
func (in *RollingUpdateStrategy) DeepCopy() *RollingUpdateStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpdateStrategy.
func (*RollingUpdateStrategy) DeepCopyInto ¶
func (in *RollingUpdateStrategy) DeepCopyInto(out *RollingUpdateStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type S3Provider ¶
type S3Provider struct {
// Path is the s3 storage path in <bucket-name>/<folder> format, e.g. "my-bucket/my-folder"
// +required
Path string `json:"path"`
// S3ProviderType is type of this s3 provider, options: [aws, minio]
// default to aws
// +optional
Type *S3ProviderType `json:"type,omitempty"`
// Region of the bucket
// the default region will be inferred from the deployment environment
// +optional
Region string `json:"region,omitempty"`
// Endpoint is the endpoint of the S3 compatible service
// default to aws S3 well known endpoint
// +optional
Endpoint string `json:"endpoint,omitempty"`
// Credentials for s3, the client will automatically discover credential sources
// from the environment if not specified
// +optional
SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`
// CertificateRef allow specifies custom CA certificate for the object storage
CertificateRef *CertificateRef `json:"certificateRef,omitempty"`
// +optional
// S3RetentionPolicy defines the retention policy of orphaned S3 bucket storage
// +kubebuilder:validation:Enum=Delete;Retain
S3RetentionPolicy *PVCRetentionPolicy `json:"s3RetentionPolicy,omitempty"`
}
func (*S3Provider) DeepCopy ¶
func (in *S3Provider) DeepCopy() *S3Provider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3Provider.
func (*S3Provider) DeepCopyInto ¶
func (in *S3Provider) DeepCopyInto(out *S3Provider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*S3Provider) GetProviderType ¶
func (p *S3Provider) GetProviderType() S3ProviderType
type S3ProviderType ¶
type S3ProviderType string
const ( S3ProviderTypeAWS S3ProviderType = "aws" S3ProviderTypeMinIO S3ProviderType = "minio" )
type ScalingConfig ¶
type ScalingConfig struct {
// StoreDrainEnabled is the flag to enable store draining
StoreDrainEnabled *bool `json:"storeDrainEnabled,omitempty"`
// StoreDrainTimeout is the timeout for draining a CN store
StoreDrainTimeout *metav1.Duration `json:"storeDrainTimeout,omitempty"`
// minDelaySeconds is the minimum delay when drain CN store, usually
// be used to waiting for CN draining be propagated to the whole cluster
MinDelaySeconds *int32 `json:"minDelaySeconds,omitempty"`
}
func (*ScalingConfig) DeepCopy ¶
func (in *ScalingConfig) DeepCopy() *ScalingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScalingConfig.
func (*ScalingConfig) DeepCopyInto ¶
func (in *ScalingConfig) DeepCopyInto(out *ScalingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScalingConfig) GetMinDelayDuration ¶
func (s *ScalingConfig) GetMinDelayDuration() time.Duration
func (*ScalingConfig) GetStoreDrainEnabled ¶
func (s *ScalingConfig) GetStoreDrainEnabled() bool
func (*ScalingConfig) GetStoreDrainTimeout ¶
func (s *ScalingConfig) GetStoreDrainTimeout() time.Duration
type SharedStorageCache ¶
type SharedStorageCache struct {
// the default size would be 50% of the container memory request
// MemoryCache cannot be completely disabled due to MO limitation currently, you can set MemoryCacheSize
// to 1B to achieve an effect similar to disabling
MemoryCacheSize *resource.Quantity `json:"memoryCacheSize,omitempty"`
// the default size would be 90% of the cacheVolume size to reserve some space to the filesystem metadata
// and avoid disk space exhaustion
// DiskCache would be disabled if CacheVolume is not set for DN/CN, and if DiskCacheSize is set while the CacheVolume
// is not set for DN/CN, an error would be raised to indicate the misconfiguration.
// NOTE: Unless there is a specific reason not to set this field, it is usually more reasonable to let the operator
// set the available disk cache size according to the actual size of the cacheVolume.
DiskCacheSize *resource.Quantity `json:"diskCacheSize,omitempty"`
}
func (*SharedStorageCache) DeepCopy ¶
func (in *SharedStorageCache) DeepCopy() *SharedStorageCache
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedStorageCache.
func (*SharedStorageCache) DeepCopyInto ¶
func (in *SharedStorageCache) DeepCopyInto(out *SharedStorageCache)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SharedStorageProvider ¶
type SharedStorageProvider struct {
// mutual-exclusive with other providers.
S3 *S3Provider `json:"s3,omitempty"`
// it assumes a shared filesystem is mounted to this path and instances can
// safely read-write this path in current manner.
FileSystem *FileSystemProvider `json:"fileSystem,omitempty"`
}
func (*SharedStorageProvider) DeepCopy ¶
func (in *SharedStorageProvider) DeepCopy() *SharedStorageProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedStorageProvider.
func (*SharedStorageProvider) DeepCopyInto ¶
func (in *SharedStorageProvider) DeepCopyInto(out *SharedStorageProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Store ¶
type Store struct {
PodName string `json:"podName,omitempty"`
Phase string `json:"phase,omitempty"`
LastTransitionTime metav1.Time `json:"lastTransition,omitempty"`
}
func (*Store) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Store.
func (*Store) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TomlConfig ¶
type TomlConfig struct {
MP map[string]interface{} `json:"-"`
}
TomlConfig is an auxiliary struct that serialize a nested struct to raw string in toml format on serialization and vise-versa +kubebuilder:validation:Type=string
func NewTomlConfig ¶
func NewTomlConfig(o map[string]interface{}) *TomlConfig
func (*TomlConfig) DeepCopy ¶
func (c *TomlConfig) DeepCopy() *TomlConfig
func (*TomlConfig) DeepCopyInto ¶
func (c *TomlConfig) DeepCopyInto(out *TomlConfig)
func (*TomlConfig) DeepCopyJsonObject ¶
func (c *TomlConfig) DeepCopyJsonObject() *TomlConfig
deepcopy-gen cannot
func (*TomlConfig) Del ¶
func (c *TomlConfig) Del(key1 string, keyN ...string)
Del delete a key by path, ignore not found. key1 + keyN forms the full key path, which enforce the keyPath has at least depth 1
func (*TomlConfig) Get ¶
func (c *TomlConfig) Get(path ...string) (value *Value)
Get a nested key, if no key is provided, the root nested map will be returned, returns nil if the path is not found.
func (*TomlConfig) MarshalJSON ¶
func (c *TomlConfig) MarshalJSON() ([]byte, error)
func (*TomlConfig) MarshalTOML ¶
func (c *TomlConfig) MarshalTOML() ([]byte, error)
func (*TomlConfig) Merge ¶
func (c *TomlConfig) Merge(mp map[string]interface{})
Merge merges the given map to current config, shallow override.
func (*TomlConfig) MergeDeep ¶
func (c *TomlConfig) MergeDeep(mp map[string]interface{})
MergeDeep merges the given map into the current config with deep merge semantics. For map values present in both configs, it recursively merges rather than replacing. For slices of maps that contain a "name" field, it matches entries by name and deep-merges them, preserving user-specified fields that are not in the override. In all cases, values in mp take precedence over existing values for conflicting keys.
func (*TomlConfig) Set ¶
func (c *TomlConfig) Set(path []string, value interface{})
Set a key by path, override existing. the keyPath has at least depth 1
func (*TomlConfig) ToString ¶
func (c *TomlConfig) ToString() (string, error)
func (*TomlConfig) UnmarshalJSON ¶
func (c *TomlConfig) UnmarshalJSON(data []byte) error
func (*TomlConfig) UnmarshalTOML ¶
func (c *TomlConfig) UnmarshalTOML(data []byte) error
type Value ¶
type Value struct {
// contains filtered or unexported fields
}
+kubebuilder:object:root=false +kubebuilder:object:generate=false
func (*Value) AsStringSlice ¶
func (*Value) AsToml ¶
func (v *Value) AsToml() (*TomlConfig, error)
func (*Value) MustString ¶
func (*Value) MustStringSlice ¶
func (*Value) MustToml ¶
func (v *Value) MustToml() *TomlConfig
type Volume ¶
type Volume struct {
// Size is the desired storage size of the volume
// +required
Size resource.Quantity `json:"size,omitempty"`
// StorageClassName reference to the storageclass of the desired volume,
// the default storageclass of the cluster would be used if no specified.
// +optional
StorageClassName *string `json:"storageClassName,omitempty"`
// Deprecated: use SharedStorageCache instead
MemoryCacheSize *resource.Quantity `json:"memoryCacheSize,omitempty"`
}
func (*Volume) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebUI ¶
type WebUI struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the desired state of WebUI
Spec WebUISpec `json:"spec,omitempty"`
// Deps is the dependencies of WebUI
Deps WebUIDeps `json:"deps,omitempty"`
Status WebUIStatus `json:"status,omitempty"`
}
WebUI is a resource that represents a set of MO's webui instances +kubebuilder:subresource:status
func (*WebUI) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebUI.
func (*WebUI) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebUI) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*WebUI) GetConditions ¶
func (*WebUI) GetDependencies ¶
func (s *WebUI) GetDependencies() []recon.Dependency
func (*WebUI) GetServiceType ¶
func (s *WebUI) GetServiceType() corev1.ServiceType
func (*WebUI) SetCondition ¶
type WebUIDeps ¶
type WebUIDeps struct {
// The WebUI it depends on
// +kubebuilder:validation:Schemaless
// +kubebuilder:validation:Type=object
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
CNSet *CNSet `json:"cnset,omitempty"`
}
func (*WebUIDeps) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebUIDeps.
func (*WebUIDeps) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebUIList ¶
type WebUIList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []WebUI `json:"items"`
}
WebUIList contains a list of WebUI
func (*WebUIList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebUIList.
func (*WebUIList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebUIList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebUISpec ¶
type WebUISpec struct {
PodSet `json:",inline"`
// ServiceType is the service type of cn service
// +optional
// +kubebuilder:default=ClusterIP
// +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer
ServiceType corev1.ServiceType `json:"serviceType,omitempty"`
// UpdateStrategy rolling update strategy
// +optional
UpdateStrategy *RollingUpdateStrategy `json:"updateStrategy,omitempty"`
// +optional
ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
}
func (*WebUISpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebUISpec.
func (*WebUISpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebUIStatus ¶
type WebUIStatus struct {
ConditionalStatus `json:",inline"`
FailoverStatus `json:",inline"`
}
func (*WebUIStatus) DeepCopy ¶
func (in *WebUIStatus) DeepCopy() *WebUIStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebUIStatus.
func (*WebUIStatus) DeepCopyInto ¶
func (in *WebUIStatus) DeepCopyInto(out *WebUIStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Workload ¶
type Workload struct {
Connections int `json:"connections,omitempty"`
Pipelines int `json:"pipelines,omitempty"`
// Replicas is the sum of sharding tables served on the current CN
Replicas int `json:"replicas,omitempty"`
}
func (*Workload) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Workload.
func (*Workload) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- br_types.go
- bucketclaim_helpers.go
- bucketclaim_types.go
- cnclaim_helper.go
- cnclaim_types.go
- cnpool_helper.go
- cnpool_types.go
- cnset_types.go
- common_helpers.go
- common_types.go
- dnset_types.go
- groupversion_info.go
- logset_helpers.go
- logset_types.go
- matrixonecluster_helpers.go
- matrixonecluster_types.go
- operator_version.go
- proxy_types.go
- semver.go
- store_helper.go
- toml_config.go
- webui_types.go
- zz_generated.deepcopy.go