v1alpha1

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Sep 21, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

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

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

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

Functions

This section is empty.

Types

type ComponentGroupReplicasStatus

type ComponentGroupReplicasStatus struct {
	// Name of the group.
	Name string `json:"name"`

	// Target replicas of the group.
	Target int32 `json:"target"`

	// Running replicas in the group.
	Running int32 `json:"running"`

	// Existence status of the group.
	Exists bool `json:"exists,omitempty"`
}

ComponentGroupReplicasStatus are the running status of Pods in group.

func (*ComponentGroupReplicasStatus) DeepCopy

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

func (*ComponentGroupReplicasStatus) DeepCopyInto

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

type ComponentReplicasStatus

type ComponentReplicasStatus struct {
	// Total target replicas of the component.
	Target int32 `json:"target"`

	// Total running replicas of the component.
	Running int32 `json:"running"`

	// List of running status of each group.
	Groups []ComponentGroupReplicasStatus `json:"groups,omitempty"`
}

ComponentReplicasStatus are the running status of Pods of the component.

func (*ComponentReplicasStatus) DeepCopy

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

func (*ComponentReplicasStatus) DeepCopyInto

func (in *ComponentReplicasStatus) DeepCopyInto(out *ComponentReplicasStatus)

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

type MetaStorageType

type MetaStorageType string

MetaStorageType is the type name of meta storage.

const (
	MetaStorageTypeMemory  MetaStorageType = "Memory"
	MetaStorageTypeEtcd    MetaStorageType = "Etcd"
	MetaStorageTypeUnknown MetaStorageType = "Unknown"
)

These are valid values of MetaStorageType.

type ObjectStorageType

type ObjectStorageType string

ObjectStorageType is the type name of object storage.

const (
	ObjectStorageTypeMemory  ObjectStorageType = "Memory"
	ObjectStorageTypeMinIO   ObjectStorageType = "MinIO"
	ObjectStorageTypeS3      ObjectStorageType = "S3"
	ObjectStorageTypeUnknown ObjectStorageType = "Unknown"
)

These are valid values of ObjectStorageType.

type RisingWave

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

	Spec   RisingWaveSpec   `json:"spec,omitempty"`
	Status RisingWaveStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=rw,categories=all;streaming +kubebuilder:printcolumn:name="RUNNING",type=string,JSONPath=`.status.conditions[?(@.type=="Running")].status` +kubebuilder:printcolumn:name="STORAGE(META)",type=string,JSONPath=`.status.storages.meta.type` +kubebuilder:printcolumn:name="STORAGE(OBJECT)",type=string,JSONPath=`.status.storages.object.type` +kubebuilder:printcolumn:name="AGE",type=date,JSONPath=`.metadata.creationTimestamp`

func (*RisingWave) DeepCopy

func (in *RisingWave) DeepCopy() *RisingWave

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

func (*RisingWave) DeepCopyInto

func (in *RisingWave) DeepCopyInto(out *RisingWave)

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

func (*RisingWave) DeepCopyObject

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

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

type RisingWaveComponentCommonPorts

type RisingWaveComponentCommonPorts struct {
	// Service port of the component. For each component,
	// the 'service' has different meanings. It's an optional field and if it's left out, a
	// default port (varies among components) will be used.
	// +optional
	// +kubebuilder:validation:Minimum=1
	ServicePort int32 `json:"service,omitempty"`

	// Metrics port of the component. It always serves the metrics in
	// Prometheus format.
	// +optional
	// +kubebuilder:validation:Minimum=1
	MetricsPort int32 `json:"metrics,omitempty"`
}

RisingWaveComponentCommonPorts are the common ports that components need to listen.

func (*RisingWaveComponentCommonPorts) DeepCopy

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

func (*RisingWaveComponentCommonPorts) DeepCopyInto

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

type RisingWaveComponentCompactor

type RisingWaveComponentCompactor struct {
	// The time that the Pods of frontend that should be restarted. Setting a value on this
	// field will trigger a recreation of all Pods of this component.
	// +optional
	RestartAt *metav1.Time `json:"restartAt,omitempty"`

	// Ports to be listened by compactor Pods.
	// +optional
	Ports RisingWaveComponentCommonPorts `json:"ports,omitempty"`

	// Groups of Pods of compactor component.
	// +optional
	// +listType=map
	// +listMapKey=name
	// +patchMergeKey=name
	// +patchStrategy=merge,retainKeys
	Groups []RisingWaveComponentGroup `json:"groups,omitempty"`
}

func (*RisingWaveComponentCompactor) DeepCopy

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

func (*RisingWaveComponentCompactor) DeepCopyInto

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

type RisingWaveComponentCompute

type RisingWaveComponentCompute struct {
	// The time that the Pods of frontend that should be restarted. Setting a value on this
	// field will trigger a recreation of all Pods of this component.
	// +optional
	RestartAt *metav1.Time `json:"restartAt,omitempty"`

	// Ports to be listened by compute Pods.
	// +optional
	Ports RisingWaveComponentCommonPorts `json:"ports,omitempty"`

	// Groups of Pods of compute component.
	// +optional
	// +listType=map
	// +listMapKey=name
	// +patchMergeKey=name
	// +patchStrategy=merge,retainKeys
	Groups []RisingWaveComputeGroup `json:"groups,omitempty"`
}

func (*RisingWaveComponentCompute) DeepCopy

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

func (*RisingWaveComponentCompute) DeepCopyInto

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

type RisingWaveComponentFrontend

type RisingWaveComponentFrontend struct {
	// The time that the Pods of frontend that should be restarted. Setting a value on this
	// field will trigger a recreation of all Pods of this component.
	// +optional
	RestartAt *metav1.Time `json:"restartAt,omitempty"`

	// Ports to be listened by the frontend Pods.
	// +optional
	Ports RisingWaveComponentCommonPorts `json:"ports,omitempty"`

	// Groups of Pods of frontend component.
	// +optional
	// +listType=map
	// +listMapKey=name
	// +patchMergeKey=name
	// +patchStrategy=merge,retainKeys
	Groups []RisingWaveComponentGroup `json:"groups,omitempty"`
}

func (*RisingWaveComponentFrontend) DeepCopy

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

func (*RisingWaveComponentFrontend) DeepCopyInto

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

type RisingWaveComponentGroup

type RisingWaveComponentGroup struct {
	// Name of the group.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Replicas of Pods in this group.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Minimum=0
	Replicas int32 `json:"replicas,omitempty"`

	// The component template describes how it would be deployed. It is an optional
	// field and the Pods are going to be deployed with the template defined in global. If there are
	// values defined in this template, it will be merged into the global template and then be used
	// for deployment.
	// +optional
	*RisingWaveComponentGroupTemplate `json:",inline"`
}

RisingWaveComponentGroup is the common deployment group of each component. Currently, we use this group for meta/frontend/compactor.

func (*RisingWaveComponentGroup) DeepCopy

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

func (*RisingWaveComponentGroup) DeepCopyInto

func (in *RisingWaveComponentGroup) DeepCopyInto(out *RisingWaveComponentGroup)

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

type RisingWaveComponentGroupTemplate

type RisingWaveComponentGroupTemplate struct {
	// Image for RisingWave component.
	// +optional
	Image string `json:"image,omitempty"`

	// Pull policy of the RisingWave 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"`

	// Secrets for pulling RisingWave images.
	// +optional
	ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`

	// Upgrade strategy for the components. By default, it is the same as the
	// workload's default strategy that the component is deployed with.
	// Note: the maxSurge will not take effect for the compute component.
	// +optional
	// +patchStrategy=retainKeys
	UpgradeStrategy RisingWaveUpgradeStrategy `json:"upgradeStrategy,omitempty"`

	// Resources of the RisingWave component.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty"`

	// A map of labels describing the nodes to be scheduled on.
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// Base template for Pods of RisingWave. By default, there's no such template
	// and the controller will set all unrelated fields to the default value.
	// +optional
	PodTemplate *string `json:"podTemplate,omitempty"`
}

RisingWaveComponentGroupTemplate is the common deployment template for groups of each component. Currently, we use the common template for meta/frontend/compactor.

func (*RisingWaveComponentGroupTemplate) DeepCopy

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

func (*RisingWaveComponentGroupTemplate) DeepCopyInto

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

type RisingWaveComponentMeta

type RisingWaveComponentMeta struct {
	// The time that the Pods of frontend that should be restarted. Setting a value on this
	// field will trigger a recreation of all Pods of this component.
	// +optional
	RestartAt *metav1.Time `json:"restartAt,omitempty"`

	// Ports to be listened by the meta Pods.
	// +optional
	Ports RisingWaveComponentMetaPorts `json:"ports,omitempty"`

	// Groups of Pods of meta component.
	// +optional
	// +listType=map
	// +listMapKey=name
	// +patchMergeKey=name
	// +patchStrategy=merge,retainKeys
	Groups []RisingWaveComponentGroup `json:"groups,omitempty"`
}

func (*RisingWaveComponentMeta) DeepCopy

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

func (*RisingWaveComponentMeta) DeepCopyInto

func (in *RisingWaveComponentMeta) DeepCopyInto(out *RisingWaveComponentMeta)

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

type RisingWaveComponentMetaPorts

type RisingWaveComponentMetaPorts struct {
	RisingWaveComponentCommonPorts `json:",inline"`

	// Dashboard port of the meta, a default value of 8080 will be
	// used if not specified.
	// +optional
	// +kubebuilder:validation:Minimum=1
	DashboardPort int32 `json:"dashboard,omitempty"`
}

RisingWaveComponentMetaPorts are the ports of component meta.

func (*RisingWaveComponentMetaPorts) DeepCopy

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

func (*RisingWaveComponentMetaPorts) DeepCopyInto

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

type RisingWaveComponentsReplicasStatus

type RisingWaveComponentsReplicasStatus struct {
	// Running status of meta.
	Meta ComponentReplicasStatus `json:"meta"`

	// Running status of frontend.
	Frontend ComponentReplicasStatus `json:"frontend"`

	// Running status of compute.
	Compute ComponentReplicasStatus `json:"compute"`

	// Running status of compactor.
	Compactor ComponentReplicasStatus `json:"compactor"`
}

RisingWaveComponentsReplicasStatus is the running status of components.

func (*RisingWaveComponentsReplicasStatus) DeepCopy

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

func (*RisingWaveComponentsReplicasStatus) DeepCopyInto

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

type RisingWaveComponentsSpec

type RisingWaveComponentsSpec struct {
	// Meta component spec.
	Meta RisingWaveComponentMeta `json:"meta,omitempty"`

	// Frontend component spec.
	Frontend RisingWaveComponentFrontend `json:"frontend,omitempty"`

	// Compute component spec.
	Compute RisingWaveComponentCompute `json:"compute,omitempty"`

	// Compactor component.
	Compactor RisingWaveComponentCompactor `json:"compactor,omitempty"`
}

RisingWaveComponentsSpec is the spec describes the components of RisingWave.

func (*RisingWaveComponentsSpec) DeepCopy

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

func (*RisingWaveComponentsSpec) DeepCopyInto

func (in *RisingWaveComponentsSpec) DeepCopyInto(out *RisingWaveComponentsSpec)

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

type RisingWaveComputeGroup

type RisingWaveComputeGroup struct {
	// Name of the group.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Replicas of Pods in this group.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Minimum=0
	Replicas int32 `json:"replicas,omitempty"`

	// The component template describes how it would be deployed. It is an optional
	// field and the Pods are going to be deployed with the template defined in global. If there're
	// values defined in this template, it will be merged into the global template and then be used
	// for deployment.
	// +optional
	*RisingWaveComputeGroupTemplate `json:",inline"`
}

RisingWaveComputeGroup is the group for component compute.

func (*RisingWaveComputeGroup) DeepCopy

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

func (*RisingWaveComputeGroup) DeepCopyInto

func (in *RisingWaveComputeGroup) DeepCopyInto(out *RisingWaveComputeGroup)

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

type RisingWaveComputeGroupTemplate

type RisingWaveComputeGroupTemplate struct {
	// The component template describes how it would be deployed. It is an optional
	// field and the Pods are going to be deployed with the template defined in global. If there're
	// values defined in this template, it will be merged into the global template and then be used
	// for deployment.
	// +optional
	RisingWaveComponentGroupTemplate `json:",inline"`

	// Volumes to be mounted on the Pods.
	// +optional
	// +patchMergeKey=mountPath
	// +patchStrategy=merge
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
}

RisingWaveComputeGroupTemplate is the group template for component compute, which supports specifying the volume mounts on compute Pods. The volumes should be either local or defined in the storages.

func (*RisingWaveComputeGroupTemplate) DeepCopy

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

func (*RisingWaveComputeGroupTemplate) DeepCopyInto

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

type RisingWaveCondition

type RisingWaveCondition struct {
	// Type of the condition
	Type RisingWaveConditionType `json:"type"`

	// Status of the condition
	Status metav1.ConditionStatus `json:"status"`

	// Last time the condition transitioned from one status to another.
	// +optional
	// +nullable
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`

	// The reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Human-readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

RisingWaveCondition indicates a condition of RisingWave.

func (*RisingWaveCondition) DeepCopy

func (in *RisingWaveCondition) DeepCopy() *RisingWaveCondition

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

func (*RisingWaveCondition) DeepCopyInto

func (in *RisingWaveCondition) DeepCopyInto(out *RisingWaveCondition)

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

type RisingWaveConditionType

type RisingWaveConditionType string

RisingWaveConditionType is the condition type of RisingWave.

const (
	RisingWaveConditionRunning      RisingWaveConditionType = "Running"
	RisingWaveConditionInitializing RisingWaveConditionType = "Initializing"
	RisingWaveConditionUpgrading    RisingWaveConditionType = "Upgrading"
	RisingWaveConditionFailed       RisingWaveConditionType = "Failed"
	RisingWaveConditionUnknown      RisingWaveConditionType = "Unknown"
)

These are valid value of RisingWaveConditionType.

type RisingWaveConfigurationSpec

type RisingWaveConfigurationSpec struct {
	// The reference to a key in a config map that contains the base config for RisingWave.
	// It's an optional field and can be left out. If not specified, a default config is going to be used.
	// +optional
	ConfigMap *corev1.ConfigMapKeySelector `json:"configmap,omitempty"`
}

RisingWaveConfigurationSpec is the configuration spec.

func (*RisingWaveConfigurationSpec) DeepCopy

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

func (*RisingWaveConfigurationSpec) DeepCopyInto

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

type RisingWaveGlobalReplicas

type RisingWaveGlobalReplicas struct {
	// Replicas of meta component. Replicas specified here is in a default group (with empty name ”).
	// +optional
	// +kubebuilder:validation:Minimum=0
	Meta int32 `json:"meta,omitempty"`

	// Replicas of frontend component. Replicas specified here is in a default group (with empty name ”).
	// +optional
	// +kubebuilder:validation:Minimum=0
	Frontend int32 `json:"frontend,omitempty"`

	// Replicas of compute component. Replicas specified here is in a default group (with empty name ”).
	// +optional
	// +kubebuilder:validation:Minimum=0
	Compute int32 `json:"compute,omitempty"`

	// Replicas of compactor component. Replicas specified here is in a default group (with empty name ”).
	// +optional
	// +kubebuilder:validation:Minimum=0
	Compactor int32 `json:"compactor,omitempty"`
}

RisingWaveGlobalReplicas are the replicas of each component, declared in global scope.

func (*RisingWaveGlobalReplicas) DeepCopy

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

func (*RisingWaveGlobalReplicas) DeepCopyInto

func (in *RisingWaveGlobalReplicas) DeepCopyInto(out *RisingWaveGlobalReplicas)

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

type RisingWaveGlobalSpec

type RisingWaveGlobalSpec struct {
	// Global template for RisingWave that all components share.
	RisingWaveComponentGroupTemplate `json:",inline"`

	// Replicas of each component in default groups.
	// +optional
	// +patchStrategy=retainKeys
	Replicas RisingWaveGlobalReplicas `json:"replicas,omitempty"`

	// Service type of the frontend service.
	// +optional
	// +kubebuilder:default=ClusterIP
	// +kubebuilder:validation:Enum=ClusterIP;NodePort;LoadBalancer
	ServiceType corev1.ServiceType `json:"serviceType,omitempty"`
}

RisingWaveGlobalSpec is the global spec.

func (*RisingWaveGlobalSpec) DeepCopy

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

func (*RisingWaveGlobalSpec) DeepCopyInto

func (in *RisingWaveGlobalSpec) DeepCopyInto(out *RisingWaveGlobalSpec)

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

type RisingWaveList

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

RisingWaveList contains a list of RisingWave.

func (*RisingWaveList) DeepCopy

func (in *RisingWaveList) DeepCopy() *RisingWaveList

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

func (*RisingWaveList) DeepCopyInto

func (in *RisingWaveList) DeepCopyInto(out *RisingWaveList)

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

func (*RisingWaveList) DeepCopyObject

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

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

type RisingWaveMetaStorage

type RisingWaveMetaStorage struct {
	// Memory indicates to store the metadata in memory. It is only for test usage and strongly
	// discouraged to be set in production. If one is using the memory storage for meta,
	// replicas will not work because they are not going to share the same metadata and any kinds
	// exit of the process will cause a permanent loss of the data.
	// +optional
	Memory *bool `json:"memory,omitempty"`

	// Endpoint of the etcd service for storing the metadata.
	// +optional
	Etcd *RisingWaveMetaStorageEtcd `json:"etcd,omitempty"`
}

RisingWaveMetaStorage is the storage for the meta component.

func (*RisingWaveMetaStorage) DeepCopy

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

func (*RisingWaveMetaStorage) DeepCopyInto

func (in *RisingWaveMetaStorage) DeepCopyInto(out *RisingWaveMetaStorage)

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

type RisingWaveMetaStorageEtcd

type RisingWaveMetaStorageEtcd struct {
	// Endpoint of etcd. It must be provided.
	Endpoint string `json:"endpoint"`

	// Secret contains the credentials of access the etcd, it must contain the following keys:
	//   * username
	//   * password
	// But it is an optional field. Empty value indicates etcd is available without authentication.
	// +optional
	Secret string `json:"secret,omitempty"`
}

RisingWaveMetaStorageEtcd is the etcd storage for the meta component.

func (*RisingWaveMetaStorageEtcd) DeepCopy

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

func (*RisingWaveMetaStorageEtcd) DeepCopyInto

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

type RisingWaveMetaStorageStatus

type RisingWaveMetaStorageStatus struct {
	Type MetaStorageType `json:"type"`
}

RisingWaveMetaStorageStatus is the status of meta storage.

func (*RisingWaveMetaStorageStatus) DeepCopy

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

func (*RisingWaveMetaStorageStatus) DeepCopyInto

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

type RisingWaveObjectStorage

type RisingWaveObjectStorage struct {
	// Memory indicates to store the data in memory. It's only for test usage and strongly discouraged to
	// be used in production.
	// +optional
	Memory *bool `json:"memory,omitempty"`

	// MinIO storage spec.
	// +optional
	MinIO *RisingWaveObjectStorageMinIO `json:"minio,omitempty"`

	// S3 storage spec.
	// +optional
	S3 *RisingWaveObjectStorageS3 `json:"s3,omitempty"`
}

RisingWaveObjectStorage is the object storage for compute and compactor components.

func (*RisingWaveObjectStorage) DeepCopy

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

func (*RisingWaveObjectStorage) DeepCopyInto

func (in *RisingWaveObjectStorage) DeepCopyInto(out *RisingWaveObjectStorage)

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

type RisingWaveObjectStorageMinIO

type RisingWaveObjectStorageMinIO struct {
	// Secret contains the credentials to access the MinIO service. It must contain the following keys:
	//   * username
	//   * password
	// +kubebuilder:validation:Required
	Secret string `json:"secret,omitempty"`

	// Endpoint of the MinIO service.
	// +kubebuilder:validation:Required
	Endpoint string `json:"endpoint,omitempty"`

	// Bucket of the MinIO service.
	// +kubebuilder:validation:Required
	Bucket string `json:"bucket,omitempty"`
}

RisingWaveObjectStorageMinIO is the details of MinIO storage for compute and compactor components.

func (*RisingWaveObjectStorageMinIO) DeepCopy

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

func (*RisingWaveObjectStorageMinIO) DeepCopyInto

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

type RisingWaveObjectStorageS3

type RisingWaveObjectStorageS3 struct {
	// Secret contains the credentials to access the AWS S3 service. It must contain the following keys:
	//   * AccessKeyID
	//   * SecretAccessKey
	//   * Region
	// +kubebuilder:validation:Required
	Secret string `json:"secret,omitempty"`

	// Bucket of the AWS S3 service.
	// +kubebuilder:validation:Required
	Bucket string `json:"bucket,omitempty"`
}

RisingWaveObjectStorageS3 is the details of AWS S3 storage for compute and compactor components.

func (*RisingWaveObjectStorageS3) DeepCopy

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

func (*RisingWaveObjectStorageS3) DeepCopyInto

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

type RisingWaveObjectStorageStatus

type RisingWaveObjectStorageStatus struct {
	Type ObjectStorageType `json:"type"`
}

RisingWaveObjectStorageStatus is the status of object storage.

func (*RisingWaveObjectStorageStatus) DeepCopy

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

func (*RisingWaveObjectStorageStatus) DeepCopyInto

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

type RisingWavePodTemplate

type RisingWavePodTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Template          RisingWavePodTemplateSpec `json:"template,omitempty"`
}

func (*RisingWavePodTemplate) DeepCopy

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

func (*RisingWavePodTemplate) DeepCopyInto

func (in *RisingWavePodTemplate) DeepCopyInto(out *RisingWavePodTemplate)

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

func (*RisingWavePodTemplate) DeepCopyObject

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

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

type RisingWavePodTemplateList

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

RisingWavePodTemplateList contains a list of RisingWavePodTemplate.

func (*RisingWavePodTemplateList) DeepCopy

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

func (*RisingWavePodTemplateList) DeepCopyInto

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

func (*RisingWavePodTemplateList) DeepCopyObject

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

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

type RisingWavePodTemplatePartialObjectMeta

type RisingWavePodTemplatePartialObjectMeta struct {
	// Labels of the object.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations of the object.
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*RisingWavePodTemplatePartialObjectMeta) DeepCopy

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

func (*RisingWavePodTemplatePartialObjectMeta) DeepCopyInto

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

type RisingWavePodTemplateSpec

type RisingWavePodTemplateSpec struct {
	RisingWavePodTemplatePartialObjectMeta `json:"metadata,omitempty"`

	Spec corev1.PodSpec `json:"spec,omitempty"`
}

func (*RisingWavePodTemplateSpec) DeepCopy

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

func (*RisingWavePodTemplateSpec) DeepCopyInto

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

type RisingWaveRollingUpdate

type RisingWaveRollingUpdate struct {
	// The maximum number of pods that can be unavailable during the update.
	// Value can be an absolute number (ex: 5) or a percentage of desired pods (ex: 10%).
	// Absolute number is calculated from percentage by rounding down.
	// Defaults to 25%.
	// +optional
	// +kubebuilder:default="25%"
	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty" protobuf:"bytes,1,opt,name=maxUnavailable"`
}

func (*RisingWaveRollingUpdate) DeepCopy

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

func (*RisingWaveRollingUpdate) DeepCopyInto

func (in *RisingWaveRollingUpdate) DeepCopyInto(out *RisingWaveRollingUpdate)

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

type RisingWaveSecuritySpec

type RisingWaveSecuritySpec struct {
	// TLS config of RisingWave.
	// +optional
	// +patchStrategy=retainKeys
	TLS *RisingWaveTLSConfig `json:"tls,omitempty"`
}

RisingWaveSecuritySpec is the security spec.

func (*RisingWaveSecuritySpec) DeepCopy

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

func (*RisingWaveSecuritySpec) DeepCopyInto

func (in *RisingWaveSecuritySpec) DeepCopyInto(out *RisingWaveSecuritySpec)

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

type RisingWaveSpec

type RisingWaveSpec struct {
	// The spec of a shared template for components and a global scope of replicas.
	Global RisingWaveGlobalSpec `json:"global,omitempty"`

	// The spec of meta storage, object storage for compute and compactor, and PVC templates for compute.
	Storages RisingWaveStoragesSpec `json:"storages,omitempty"`

	// The spec of ports and some controllers (such as `restartAt`) of each component,
	// as well as an advanced concept called `group` to override the global template and create groups
	// of Pods, e.g., deployment in hybrid-arch cluster.
	Components RisingWaveComponentsSpec `json:"components,omitempty"`

	// The spec of security configurations, such as TLS config.
	Security RisingWaveSecuritySpec `json:"security,omitempty"`

	// The spec of configuration template for RisingWave.
	Configuration RisingWaveConfigurationSpec `json:"configuration,omitempty"`
}

RisingWaveSpec is the overall spec.

func (*RisingWaveSpec) DeepCopy

func (in *RisingWaveSpec) DeepCopy() *RisingWaveSpec

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

func (*RisingWaveSpec) DeepCopyInto

func (in *RisingWaveSpec) DeepCopyInto(out *RisingWaveSpec)

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

type RisingWaveStatus

type RisingWaveStatus struct {
	// Observed generation by controller. It will be updated
	// when controller observes the changes on the spec and going to sync the subresources.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Replica status of components.
	ComponentReplicas RisingWaveComponentsReplicasStatus `json:"componentReplicas,omitempty"`

	// Conditions of the RisingWave.
	// +listType=map
	// +listMapKey=type
	// +patchMergeKey=type
	// +patchStrategy=merge,retainKeys
	Conditions []RisingWaveCondition `json:"conditions,omitempty"`

	// Status of the external storages.
	Storages RisingWaveStoragesStatus `json:"storages,omitempty"`
}

RisingWaveStatus is the status of RisingWave.

func (*RisingWaveStatus) DeepCopy

func (in *RisingWaveStatus) DeepCopy() *RisingWaveStatus

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

func (*RisingWaveStatus) DeepCopyInto

func (in *RisingWaveStatus) DeepCopyInto(out *RisingWaveStatus)

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

type RisingWaveStoragesSpec

type RisingWaveStoragesSpec struct {
	Meta RisingWaveMetaStorage `json:"meta,omitempty"`

	// Storage spec for object storage.
	Object RisingWaveObjectStorage `json:"object,omitempty"`

	// The persistent volume claim templates for the compute component. PVCs declared here
	// can be referenced in the groups of compute component.
	// +optional
	PVCTemplates []corev1.PersistentVolumeClaim `json:"pvcTemplates,omitempty"`
}

RisingWaveStoragesSpec is the storages spec.

func (*RisingWaveStoragesSpec) DeepCopy

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

func (*RisingWaveStoragesSpec) DeepCopyInto

func (in *RisingWaveStoragesSpec) DeepCopyInto(out *RisingWaveStoragesSpec)

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

type RisingWaveStoragesStatus

type RisingWaveStoragesStatus struct {
	Meta   RisingWaveMetaStorageStatus   `json:"meta"`
	Object RisingWaveObjectStorageStatus `json:"object"`
}

RisingWaveStoragesStatus is the status of external storages.

func (*RisingWaveStoragesStatus) DeepCopy

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

func (*RisingWaveStoragesStatus) DeepCopyInto

func (in *RisingWaveStoragesStatus) DeepCopyInto(out *RisingWaveStoragesStatus)

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

type RisingWaveTLSConfig

type RisingWaveTLSConfig struct {
	// Enabled indicates if TLS is enabled on RisingWave.
	Enabled bool `json:"enabled,omitempty"`

	// Secret contains the TLS config. If TLS is enabled, the secret
	// must be provided.
	// +optional.
	Secret RisingWaveTLSConfigSecret `json:"secret,omitempty"`
}

RisingWaveTLSConfig is the TLS config of RisingWave.

func (*RisingWaveTLSConfig) DeepCopy

func (in *RisingWaveTLSConfig) DeepCopy() *RisingWaveTLSConfig

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

func (*RisingWaveTLSConfig) DeepCopyInto

func (in *RisingWaveTLSConfig) DeepCopyInto(out *RisingWaveTLSConfig)

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

type RisingWaveTLSConfigSecret

type RisingWaveTLSConfigSecret struct {
	// Name of the secret.
	// +optional
	Name string `json:"name,omitempty"`

	// The key of the TLS key. A default value of "tls.key" will be used if not specified.
	// +optional
	// +kubebuilder:default=tls.key
	Key string `json:"key,omitempty"`

	// The key of the TLS cert. A default value of "tls.crt" will be used if not specified.
	// +optional
	// +kubebuilder:default=tls.crt
	Cert string `json:"cert,omitempty"`
}

RisingWaveTLSConfigSecret is the secret reference that contains the key and cert for TLS.

func (*RisingWaveTLSConfigSecret) DeepCopy

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

func (*RisingWaveTLSConfigSecret) DeepCopyInto

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

type RisingWaveUpgradeStrategy

type RisingWaveUpgradeStrategy struct {
	// Type of upgrade. Can be "Recreate" or "RollingUpdate". Default is RollingUpdate.
	// +optional
	// +kubebuilder:default=RollingUpdate
	// +kubebuilder:validation:Enum=Recreate;RollingUpdate
	Type RisingWaveUpgradeStrategyType `json:"type,omitempty"`

	// Rolling update config params. Present only if DeploymentStrategyType = RollingUpdate.
	// +optional
	RollingUpdate *RisingWaveRollingUpdate `json:"rollingUpdate,omitempty"`
}

func (*RisingWaveUpgradeStrategy) DeepCopy

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

func (*RisingWaveUpgradeStrategy) DeepCopyInto

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

type RisingWaveUpgradeStrategyType

type RisingWaveUpgradeStrategyType string
const (
	RisingWaveUpgradeStrategyTypeRecreate      RisingWaveUpgradeStrategyType = "Recreate"
	RisingWaveUpgradeStrategyTypeRollingUpdate RisingWaveUpgradeStrategyType = "RollingUpdate"
)

Jump to

Keyboard shortcuts

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