Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the moco.cybozu.com v1beta1 API group +kubebuilder:object:generate=true +groupName=moco.cybozu.com
Index ¶
- Variables
- type BackupPolicy
- func (in *BackupPolicy) DeepCopy() *BackupPolicy
- func (in *BackupPolicy) DeepCopyInto(out *BackupPolicy)
- func (in *BackupPolicy) DeepCopyObject() runtime.Object
- func (r *BackupPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *BackupPolicy) ValidateCreate() error
- func (r *BackupPolicy) ValidateDelete() error
- func (r *BackupPolicy) ValidateUpdate(old runtime.Object) error
- type BackupPolicyList
- type BackupPolicySpec
- type BackupStatus
- type BucketConfig
- type JobConfig
- type MySQLCluster
- func (r *MySQLCluster) BackupCronJobName() string
- func (r *MySQLCluster) BackupRoleName() string
- func (r *MySQLCluster) CertificateName() string
- func (r *MySQLCluster) ControllerSecretName() string
- func (in *MySQLCluster) DeepCopy() *MySQLCluster
- func (in *MySQLCluster) DeepCopyInto(out *MySQLCluster)
- func (in *MySQLCluster) DeepCopyObject() runtime.Object
- func (r *MySQLCluster) Default()
- func (r *MySQLCluster) GRPCSecretName() string
- func (r *MySQLCluster) HeadlessServiceName() string
- func (r *MySQLCluster) MyCnfSecretName() string
- func (r *MySQLCluster) PodHostname(index int) string
- func (r *MySQLCluster) PodName(index int) string
- func (r *MySQLCluster) PrefixedName() string
- func (r *MySQLCluster) PrimaryServiceName() string
- func (r *MySQLCluster) ReplicaServiceName() string
- func (r *MySQLCluster) RestoreJobName() string
- func (r *MySQLCluster) RestoreRoleName() string
- func (r *MySQLCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MySQLCluster) SlowQueryLogAgentConfigMapName() string
- func (r *MySQLCluster) UserSecretName() string
- func (r *MySQLCluster) ValidateCreate() error
- func (r *MySQLCluster) ValidateDelete() error
- func (r *MySQLCluster) ValidateUpdate(old runtime.Object) error
- type MySQLClusterCondition
- type MySQLClusterConditionType
- type MySQLClusterList
- type MySQLClusterSpec
- type MySQLClusterStatus
- type ObjectMeta
- type PersistentVolumeClaim
- type PodTemplateSpec
- type ReconcileInfo
- type RestoreSpec
- type ServiceTemplate
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "moco.cybozu.com", Version: "v1beta1"} // 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 BackupPolicy ¶ added in v0.9.0
type BackupPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupPolicySpec `json:"spec"` }
BackupPolicy is a namespaced resource that should be referenced from MySQLCluster.
func (*BackupPolicy) DeepCopy ¶ added in v0.9.0
func (in *BackupPolicy) DeepCopy() *BackupPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicy.
func (*BackupPolicy) DeepCopyInto ¶ added in v0.9.0
func (in *BackupPolicy) DeepCopyInto(out *BackupPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupPolicy) DeepCopyObject ¶ added in v0.9.0
func (in *BackupPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BackupPolicy) SetupWebhookWithManager ¶ added in v0.9.0
func (r *BackupPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*BackupPolicy) ValidateCreate ¶ added in v0.9.0
func (r *BackupPolicy) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*BackupPolicy) ValidateDelete ¶ added in v0.9.0
func (r *BackupPolicy) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*BackupPolicy) ValidateUpdate ¶ added in v0.9.0
func (r *BackupPolicy) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type BackupPolicyList ¶ added in v0.9.0
type BackupPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BackupPolicy `json:"items"` }
BackupPolicyList contains a list of BackupPolicy
func (*BackupPolicyList) DeepCopy ¶ added in v0.9.0
func (in *BackupPolicyList) DeepCopy() *BackupPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyList.
func (*BackupPolicyList) DeepCopyInto ¶ added in v0.9.0
func (in *BackupPolicyList) DeepCopyInto(out *BackupPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupPolicyList) DeepCopyObject ¶ added in v0.9.0
func (in *BackupPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupPolicySpec ¶ added in v0.9.0
type BackupPolicySpec struct { // The schedule in Cron format for periodic backups. // See https://en.wikipedia.org/wiki/Cron Schedule string `json:"schedule"` // Specifies parameters for backup Pod. JobConfig JobConfig `json:"jobConfig"` // Optional deadline in seconds for starting the job if it misses scheduled // time for any reason. Missed jobs executions will be counted as failed ones. // +nullable // +optional StartingDeadlineSeconds *int64 `json:"startingDeadlineSeconds,omitempty"` // Specifies how to treat concurrent executions of a Job. // Valid values are: // - "Allow" (default): allows CronJobs to run concurrently; // - "Forbid": forbids concurrent runs, skipping next run if previous run hasn't finished yet; // - "Replace": cancels currently running job and replaces it with a new one // +kubebuilder:validation:Enum=Allow;Forbid;Replace // +kubebuilder:default=Allow // +optional ConcurrencyPolicy batchv1beta1.ConcurrencyPolicy `json:"concurrencyPolicy,omitempty"` // Specifies the duration in seconds relative to the startTime that the job // may be continuously active before the system tries to terminate it; value // must be positive integer. If a Job is suspended (at creation or through an // update), this timer will effectively be stopped and reset when the Job is // resumed again. // +nullable // +optional ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty"` // Specifies the number of retries before marking this job failed. // Defaults to 6 // +kubebuilder:validation:Minimum=0 // +nullable // +optional BackoffLimit *int32 `json:"backoffLimit,omitempty"` }
BackupPolicySpec defines the configuration items for MySQLCluster backup.
The following fields will be copied to CronJob.spec:
- Schedule - StartingDeadlineSeconds - ConcurrencyPolicy
The following fields will be copied to CronJob.spec.jobTemplate.
- ActiveDeadlineSeconds - BackoffLimit
func (*BackupPolicySpec) DeepCopy ¶ added in v0.9.0
func (in *BackupPolicySpec) DeepCopy() *BackupPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicySpec.
func (*BackupPolicySpec) DeepCopyInto ¶ added in v0.9.0
func (in *BackupPolicySpec) DeepCopyInto(out *BackupPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStatus ¶ added in v0.9.0
type BackupStatus struct { // The time of the backup. This is used to generate object keys of backup files in a bucket. // +nullable Time metav1.Time `json:"time"` // Elapsed is the time spent on the backup. Elapsed metav1.Duration `json:"elapsed"` // SourceIndex is the ordinal of the backup source instance. SourceIndex int `json:"sourceIndex"` // SourceUUID is the `server_uuid` of the backup source instance. SourceUUID string `json:"sourceUUID"` // BinlogFilename is the binlog filename that the backup source instance was writing to // at the backup. BinlogFilename string `json:"binlogFilename"` // GTIDSet is the GTID set of the full dump of database. GTIDSet string `json:"gtidSet"` // DumpSize is the size in bytes of a full dump of database stored in an object storage bucket. DumpSize int64 `json:"dumpSize"` // BinlogSize is the size in bytes of a tarball of binlog files stored in an object storage bucket. BinlogSize int64 `json:"binlogSize"` // WorkDirUsage is the max usage in bytes of the woking directory. WorkDirUsage int64 `json:"workDirUsage"` // Warnings are list of warnings from the last backup, if any. // +nullable Warnings []string `json:"warnings"` }
BackupStatus represents the status of the last successful backup.
func (*BackupStatus) DeepCopy ¶ added in v0.9.0
func (in *BackupStatus) DeepCopy() *BackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatus.
func (*BackupStatus) DeepCopyInto ¶ added in v0.9.0
func (in *BackupStatus) DeepCopyInto(out *BackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BucketConfig ¶ added in v0.9.0
type BucketConfig struct { // The name of the bucket // +kubebuilder:validation:MinLength=1 BucketName string `json:"bucketName"` // The region of the bucket. // This can also be set through `AWS_REGION` environment variable. // +optional Region string `json:"region,omitempty"` // The API endpoint URL. Set this for non-S3 object storages. // +kubebuilder:validation:Pattern="^https?://.*" // +optional EndpointURL string `json:"endpointURL,omitempty"` // Allows you to enable the client to use path-style addressing, i.e., // https?://ENDPOINT/BUCKET/KEY. By default, a virtual-host addressing // is used (https?://BUCKET.ENDPOINT/KEY). // +optional UsePathStyle bool `json:"usePathStyle,omitempty"` }
BucketConfig is a set of parameter to access an object storage bucket.
func (*BucketConfig) DeepCopy ¶ added in v0.9.0
func (in *BucketConfig) DeepCopy() *BucketConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BucketConfig.
func (*BucketConfig) DeepCopyInto ¶ added in v0.9.0
func (in *BucketConfig) DeepCopyInto(out *BucketConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobConfig ¶ added in v0.9.0
type JobConfig struct { // ServiceAccountName specifies the ServiceAccount to run the Pod. // +kubebuilder:validation:MinLength=1 ServiceAccountName string `json:"serviceAccountName"` // Specifies how to access an object storage bucket. BucketConfig BucketConfig `json:"bucketConfig"` // WorkVolume is the volume source for the working directory. // Since the backup or restore task can use a lot of bytes in the working directory, // You should always give a volume with enough capacity. // // The recommended volume source is a generic ephemeral volume. // https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes WorkVolume corev1.VolumeSource `json:"workVolume"` // Threads is the number of threads used for backup or restoration. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=4 // +optional Threads int `json:"threads,omitempty"` // Memory is the amount of memory requested for the Pod. // +kubebuilder:default="4Gi" // +nullable // +optional Memory *resource.Quantity `json:"memory,omitempty"` // MaxMemory is the amount of maximum memory for the Pod. // +nullable // +optional MaxMemory *resource.Quantity `json:"maxMemory,omitempty"` // List of sources to populate environment variables in the container. // The keys defined within a source must be a C_IDENTIFIER. All invalid keys // will be reported as an event when the container is starting. When a key exists in multiple // sources, the value associated with the last source will take precedence. // Values defined by an Env with a duplicate key will take precedence. // // You can configure S3 bucket access parameters through environment variables. // See https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#EnvConfig // // +optional EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` // List of environment variables to set in the container. // // You can configure S3 bucket access parameters through environment variables. // See https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#EnvConfig // // +optional // +listType=map // +listMapKey=name Env []corev1.EnvVar `json:"env,omitempty"` }
JobConfig is a set of parameters for backup and restore job Pods.
func (*JobConfig) DeepCopy ¶ added in v0.9.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobConfig.
func (*JobConfig) DeepCopyInto ¶ added in v0.9.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLCluster ¶
type MySQLCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MySQLClusterSpec `json:"spec,omitempty"` Status MySQLClusterStatus `json:"status,omitempty"` }
MySQLCluster is the Schema for the mysqlclusters API
func (*MySQLCluster) BackupCronJobName ¶ added in v0.9.0
func (r *MySQLCluster) BackupCronJobName() string
BackupCronJobName returns the name of CronJob for backup.
func (*MySQLCluster) BackupRoleName ¶ added in v0.9.0
func (r *MySQLCluster) BackupRoleName() string
BackupRoleName returns the name of Role/RoleBinding for backup.
func (*MySQLCluster) CertificateName ¶ added in v0.8.2
func (r *MySQLCluster) CertificateName() string
CertificateName returns the name of Certificate issued for moco-agent gRPC server. The Certificate will be created in the namespace of the controller.
This is also the Secret name created from the Certificate.
func (*MySQLCluster) ControllerSecretName ¶
func (r *MySQLCluster) ControllerSecretName() string
ControllerSecretName returns the name of the Secret for MOCO controller. This Secret is placed in the namespace of the controller.
func (*MySQLCluster) DeepCopy ¶
func (in *MySQLCluster) DeepCopy() *MySQLCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLCluster.
func (*MySQLCluster) DeepCopyInto ¶
func (in *MySQLCluster) DeepCopyInto(out *MySQLCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MySQLCluster) DeepCopyObject ¶
func (in *MySQLCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MySQLCluster) Default ¶
func (r *MySQLCluster) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*MySQLCluster) GRPCSecretName ¶ added in v0.8.2
func (r *MySQLCluster) GRPCSecretName() string
GRPCSecretName returns the name of Secret of TLS server certificate for moco-agent. The Secret will be created in the MySQLCluster namespace.
func (*MySQLCluster) HeadlessServiceName ¶
func (r *MySQLCluster) HeadlessServiceName() string
HeadlessServiceName returns the name of Service for StatefulSet.
func (*MySQLCluster) MyCnfSecretName ¶
func (r *MySQLCluster) MyCnfSecretName() string
MyCnfSecretName returns the name of the Secret for users. The contents are formatted for mysql commands (as my.cnf).
func (*MySQLCluster) PodHostname ¶
func (r *MySQLCluster) PodHostname(index int) string
PodHostname returns the hostname of a Pod with the given index.
func (*MySQLCluster) PodName ¶
func (r *MySQLCluster) PodName(index int) string
PodName returns PrefixedName() + "-" + index
func (*MySQLCluster) PrefixedName ¶
func (r *MySQLCluster) PrefixedName() string
PrefixedName returns "moco-<<metadata.name>>"
func (*MySQLCluster) PrimaryServiceName ¶
func (r *MySQLCluster) PrimaryServiceName() string
PrimaryServiceName returns the name of Service for the primary mysqld instance.
func (*MySQLCluster) ReplicaServiceName ¶
func (r *MySQLCluster) ReplicaServiceName() string
ReplicaServiceName returns the name of Service for replica mysqld instances.
func (*MySQLCluster) RestoreJobName ¶ added in v0.9.0
func (r *MySQLCluster) RestoreJobName() string
RestoreJobName returns the name of Job for restoration.
func (*MySQLCluster) RestoreRoleName ¶ added in v0.9.0
func (r *MySQLCluster) RestoreRoleName() string
RestoreRoleName returns the name of Role/RoleBinding for restoration.
func (*MySQLCluster) SetupWebhookWithManager ¶
func (r *MySQLCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*MySQLCluster) SlowQueryLogAgentConfigMapName ¶
func (r *MySQLCluster) SlowQueryLogAgentConfigMapName() string
SlowQueryLogAgentConfigMapName returns the name of the slow query log agent config name.
func (*MySQLCluster) UserSecretName ¶
func (r *MySQLCluster) UserSecretName() string
UserSecretName returns the name of the Secret for users. This Secret is placed in the same namespace as r.
func (*MySQLCluster) ValidateCreate ¶
func (r *MySQLCluster) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*MySQLCluster) ValidateDelete ¶
func (r *MySQLCluster) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*MySQLCluster) ValidateUpdate ¶
func (r *MySQLCluster) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type MySQLClusterCondition ¶
type MySQLClusterCondition struct { // Type is the type of the condition. Type MySQLClusterConditionType `json:"type"` // Status is the status of the condition. Status corev1.ConditionStatus `json:"status"` // Reason is a one-word CamelCase reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // Message is a human-readable message indicating details about last transition. // +optional Message string `json:"message,omitempty"` // LastTransitionTime is the last time the condition transits from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime"` }
MySQLClusterCondition defines the condition of MySQLCluster.
func (*MySQLClusterCondition) DeepCopy ¶
func (in *MySQLClusterCondition) DeepCopy() *MySQLClusterCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLClusterCondition.
func (*MySQLClusterCondition) DeepCopyInto ¶
func (in *MySQLClusterCondition) DeepCopyInto(out *MySQLClusterCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLClusterConditionType ¶
type MySQLClusterConditionType string
MySQLClusterConditionType is the type of MySQLCluster condition. +kubebuilder:validation:Enum=Initialized;Available;Healthy
const ( ConditionInitialized MySQLClusterConditionType = "Initialized" ConditionAvailable MySQLClusterConditionType = "Available" ConditionHealthy MySQLClusterConditionType = "Healthy" )
Valid values for MySQLClusterConditionType
type MySQLClusterList ¶
type MySQLClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MySQLCluster `json:"items"` }
MySQLClusterList contains a list of MySQLCluster
func (*MySQLClusterList) DeepCopy ¶
func (in *MySQLClusterList) DeepCopy() *MySQLClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLClusterList.
func (*MySQLClusterList) DeepCopyInto ¶
func (in *MySQLClusterList) DeepCopyInto(out *MySQLClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MySQLClusterList) DeepCopyObject ¶
func (in *MySQLClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MySQLClusterSpec ¶
type MySQLClusterSpec struct { // Replicas is the number of instances. Available values are 1, 3, and 5. // +kubebuilder:validation:Enum=1;3;5 // +kubebuilder:default=1 // +optional Replicas int32 `json:"replicas,omitempty"` // PodTemplate is a `Pod` template for MySQL server container. PodTemplate PodTemplateSpec `json:"podTemplate"` // VolumeClaimTemplates is a list of `PersistentVolumeClaim` templates for MySQL server container. // A claim named "mysql-data" must be included in the list. // +kubebuilder:validation:MinItems=1 VolumeClaimTemplates []PersistentVolumeClaim `json:"volumeClaimTemplates"` // ServiceTemplate is a `Service` template for both primary and replicas. // +optional ServiceTemplate *ServiceTemplate `json:"serviceTemplate,omitempty"` // MySQLConfigMapName is a `ConfigMap` name of MySQL config. // +nullable // +optional MySQLConfigMapName *string `json:"mysqlConfigMapName,omitempty"` // ReplicationSourceSecretName is a `Secret` name which contains replication source info. // If this field is given, the `MySQLCluster` works as an intermediate primary. // +nullable // +optional ReplicationSourceSecretName *string `json:"replicationSourceSecretName,omitempty"` // Collectors is the list of collector flag names of mysqld_exporter. // If this field is not empty, MOCO adds mysqld_exporter as a sidecar to collect // and export mysqld metrics in Prometheus format. // // See https://github.com/prometheus/mysqld_exporter/blob/master/README.md#collector-flags for flag names. // // Example: ["engine_innodb_status", "info_schema.innodb_metrics"] // +optional Collectors []string `json:"collectors,omitempty"` // ServerIDBase, if set, will become the base number of server-id of each MySQL // instance of this cluster. For example, if this is 100, the server-ids will be // 100, 101, 102, and so on. // If the field is not given or zero, MOCO automatically sets a random positive integer. // +optional ServerIDBase int32 `json:"serverIDBase,omitempty"` // MaxDelaySeconds, if set, configures the readiness probe of mysqld container. // For a replica mysqld instance, if it is delayed to apply transactions over this threshold, // the mysqld instance will be marked as non-ready. // The default is 60 seconds. // +kubebuilder:validation:Minimum=0 // +optional MaxDelaySeconds int `json:"maxDelaySeconds,omitempty"` // StartupWaitSeconds is the maximum duration to wait for `mysqld` container to start working. // The default is 3600 seconds. // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=3600 // +optional StartupWaitSeconds int32 `json:"startupDelaySeconds,omitempty"` // LogRotationSchedule specifies the schedule to rotate MySQL logs. // If not set, the default is to rotate logs every 5 minutes. // See https://pkg.go.dev/github.com/robfig/cron/v3#hdr-CRON_Expression_Format for the field format. // +optional LogRotationSchedule string `json:"logRotationSchedule,omitempty"` // The name of BackupPolicy custom resource in the same namespace. // If this is set, MOCO creates a CronJob to take backup of this MySQL cluster periodically. // +nullable // +optional BackupPolicyName *string `json:"backupPolicyName"` // Restore is the specification to perform Point-in-Time-Recovery from existing cluster. // If this field is not null, MOCO restores the data as specified and create a new // cluster with the data. This field is not editable. // +optional Restore *RestoreSpec `json:"restore,omitempty"` // DisableSlowQueryLogContainer controls whether to add a sidecar container named "slow-log" // to output slow logs as the containers output. // If set to true, the sidecar container is not added. The default is false. // +optional DisableSlowQueryLogContainer bool `json:"disableSlowQueryLogContainer,omitempty"` }
MySQLClusterSpec defines the desired state of MySQLCluster
func (*MySQLClusterSpec) DeepCopy ¶
func (in *MySQLClusterSpec) DeepCopy() *MySQLClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLClusterSpec.
func (*MySQLClusterSpec) DeepCopyInto ¶
func (in *MySQLClusterSpec) DeepCopyInto(out *MySQLClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLClusterStatus ¶
type MySQLClusterStatus struct { // Conditions is an array of conditions. // +optional Conditions []MySQLClusterCondition `json:"conditions,omitempty"` // CurrentPrimaryIndex is the index of the current primary Pod in StatefulSet. // Initially, this is zero. CurrentPrimaryIndex int `json:"currentPrimaryIndex"` // SyncedReplicas is the number of synced instances including the primary. // +optional SyncedReplicas int `json:"syncedReplicas,omitempty"` // ErrantReplicas is the number of instances that have errant transactions. // +optional ErrantReplicas int `json:"errantReplicas,omitempty"` // ErrantReplicaList is the list of indices of errant replicas. // +optional ErrantReplicaList []int `json:"errantReplicaList,omitempty"` // Backup is the status of the last successful backup. // +optional Backup BackupStatus `json:"backup"` // RestoredTime is the time when the cluster data is restored. // +optional RestoredTime *metav1.Time `json:"restoredTime,omitempty"` // Cloned indicates if the initial cloning from an external source has been completed. // +optional Cloned bool `json:"cloned,omitempty"` // ReconcileInfo represents version information for reconciler. // +optional ReconcileInfo ReconcileInfo `json:"reconcileInfo"` }
MySQLClusterStatus defines the observed state of MySQLCluster
func (*MySQLClusterStatus) DeepCopy ¶
func (in *MySQLClusterStatus) DeepCopy() *MySQLClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLClusterStatus.
func (*MySQLClusterStatus) DeepCopyInto ¶
func (in *MySQLClusterStatus) DeepCopyInto(out *MySQLClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectMeta ¶
type ObjectMeta struct { // Name is the name of the object. // +optional Name string `json:"name,omitempty"` // Labels is a map of string keys and values. // +optional Labels map[string]string `json:"labels,omitempty"` // Annotations is a map of string keys and values. // +optional Annotations map[string]string `json:"annotations,omitempty"` }
ObjectMeta is metadata of objects. This is partially copied from metav1.ObjectMeta.
func (*ObjectMeta) DeepCopy ¶
func (in *ObjectMeta) DeepCopy() *ObjectMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta.
func (*ObjectMeta) DeepCopyInto ¶
func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PersistentVolumeClaim ¶
type PersistentVolumeClaim struct { // Standard object's metadata. ObjectMeta `json:"metadata"` // Spec defines the desired characteristics of a volume requested by a pod author. Spec corev1.PersistentVolumeClaimSpec `json:"spec"` }
PersistentVolumeClaim is a user's request for and claim to a persistent volume. This is slightly modified from corev1.PersistentVolumeClaim.
func (*PersistentVolumeClaim) DeepCopy ¶
func (in *PersistentVolumeClaim) DeepCopy() *PersistentVolumeClaim
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaim.
func (*PersistentVolumeClaim) DeepCopyInto ¶
func (in *PersistentVolumeClaim) DeepCopyInto(out *PersistentVolumeClaim)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PersistentVolumeClaim) ToCoreV1 ¶
func (p PersistentVolumeClaim) ToCoreV1() corev1.PersistentVolumeClaim
type PodTemplateSpec ¶
type PodTemplateSpec struct { // Standard object's metadata. The name in this metadata is ignored. // +optional ObjectMeta `json:"metadata,omitempty"` // Specification of the desired behavior of the pod. // The name of the MySQL server container in this spec must be `mysqld`. Spec corev1.PodSpec `json:"spec"` }
PodTemplateSpec describes the data a pod should have when created from a template. This is slightly modified from corev1.PodTemplateSpec.
func (*PodTemplateSpec) DeepCopy ¶
func (in *PodTemplateSpec) DeepCopy() *PodTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateSpec.
func (*PodTemplateSpec) DeepCopyInto ¶
func (in *PodTemplateSpec) DeepCopyInto(out *PodTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReconcileInfo ¶
type ReconcileInfo struct { // Generation is the `metadata.generation` value of the last reconciliation. // See also https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#status-subresource // +optional Generation int64 `json:"generation,omitempty"` // ReconcileVersion is the version of the operator reconciler. // +optional ReconcileVersion int `json:"reconcileVersion"` }
ReconcileInfo is the type to record the last reconciliation information.
func (*ReconcileInfo) DeepCopy ¶
func (in *ReconcileInfo) DeepCopy() *ReconcileInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReconcileInfo.
func (*ReconcileInfo) DeepCopyInto ¶
func (in *ReconcileInfo) DeepCopyInto(out *ReconcileInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreSpec ¶
type RestoreSpec struct { // SourceName is the name of the source `MySQLCluster`. // +kubebuilder:validation:MinLength=1 SourceName string `json:"sourceName"` // SourceNamespace is the namespace of the source `MySQLCluster`. // +kubebuilder:validation:MinLength=1 SourceNamespace string `json:"sourceNamespace"` // RestorePoint is the target date and time to restore data. // The format is RFC3339. e.g. "2006-01-02T15:04:05Z" RestorePoint metav1.Time `json:"restorePoint"` // Specifies parameters for restore Pod. JobConfig JobConfig `json:"jobConfig"` }
RestoreSpec represents a set of parameters for Point-in-Time Recovery.
func (*RestoreSpec) DeepCopy ¶
func (in *RestoreSpec) DeepCopy() *RestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSpec.
func (*RestoreSpec) DeepCopyInto ¶
func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceTemplate ¶
type ServiceTemplate struct { // Standard object's metadata. Only `annotations` and `labels` are valid. // +optional ObjectMeta `json:"metadata,omitempty"` // Spec is the ServiceSpec // +optional Spec *corev1.ServiceSpec `json:"spec,omitempty"` }
ServiceTemplate defines the desired spec and annotations of Service
func (*ServiceTemplate) DeepCopy ¶
func (in *ServiceTemplate) DeepCopy() *ServiceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceTemplate.
func (*ServiceTemplate) DeepCopyInto ¶
func (in *ServiceTemplate) DeepCopyInto(out *ServiceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.