diff --git a/Makefile b/Makefile index 12d3694f..0066ec0c 100644 --- a/Makefile +++ b/Makefile @@ -32,6 +32,9 @@ integration-test: generate: go run sigs.k8s.io/controller-tools/cmd/controller-gen object crd:maxDescLen=0 paths="./pkg/apis/planetscale/v2" output:crd:artifacts:config=./deploy/crds go run github.com/ahmetb/gen-crd-api-reference-docs -api-dir planetscale.dev/vitess-operator/pkg/apis/planetscale/v2 -config ./docs/api/config.json -template-dir ./docs/api/template -out-file ./docs/api/index.html + @echo 'Copying ./docs/api/index.html to ./docs/api.md' + @cp ./docs/api/index.html ./docs/api.md && ex -sc '1,2d|x' ./docs/api.md + @echo 'Written to ./docs/api.md' generate-and-diff: generate git add --all diff --git a/docs/api.md b/docs/api.md index 8ce4875e..8573ca14 100644 --- a/docs/api.md +++ b/docs/api.md @@ -1,6 +1,22 @@ -
-This page describes all the available fields of CRD APIs implemented by the operator. +
Package v2 contains API Schema definitions for the planetscale.com/v2 API group.
apiVersion
apiVersion
string
@@ -41,14 +57,14 @@ planetscale.com/v2
kind
kind
string
EtcdLockserver
metadata
metadata
Kubernetes meta/v1.ObjectMeta
@@ -62,7 +78,7 @@ Refer to the Kubernetes API documentation for the fields of the
spec
spec
EtcdLockserverSpec
@@ -75,7 +91,7 @@ EtcdLockserverSpec
etcd
etcd
EtcdLockserverStatus
@@ -1328,6 +1443,38 @@ EtcdLockserverStatus
+(Appears on: +VitessShardTabletPool) +
++
MysqldExporterSpec configures the local MySQL exporter within a tablet.
+ +Field | +Description | +
---|---|
+resources
+
+
+Kubernetes core/v1.ResourceRequirements
+
+
+ |
+
+ Resources specify the compute resources to allocate for just the MySQL Exporter. + |
+
@@ -1336,9 +1483,7 @@ EtcdLockserverStatus VitessKeyspaceImages)
-
MysqldImage specifies the container image to use for mysqld, -as well as declaring which MySQL flavor setting in Vitess the -image is compatible with.
+TODO: Remove this once everything is migrated to MysqldImageNew.
-mysql56Compatible + mysql56Compatible
string
@@ -1362,7 +1507,7 @@ that’s compatible with the Vitess “MySQL56” flavor setting.
|
-mysql80Compatible + mysql80Compatible
string
@@ -1374,7 +1519,7 @@ that’s compatible with the Vitess “MySQL80” flavor setting.
|
-mariadbCompatible + mariadbCompatible
string
@@ -1386,7 +1531,7 @@ that’s compatible with the Vitess “MariaDB” flavor setting.
|
-mariadb103Compatible + mariadb103Compatible
string
@@ -1398,6 +1543,52 @@ that’s compatible with the Vitess “MariaDB103” flavor setting.
|
+(Appears on: +VitessKeyspaceTemplateImages) +
++
MysqldImageNew specifies the container image to use for mysqld, +as well as declaring which MySQL flavor setting in Vitess the +image is compatible with.
+TODO: rename this to MysqldImage once MysqldImage is removed.
+ +Field | +Description | +
---|---|
+mysql56Compatible
+
+string
+
+ |
+
+ Mysql56Compatible is a container image (including version tag) for mysqld +that’s compatible with the Vitess “MySQL56” flavor setting. + |
+
+mysql80Compatible
+
+string
+
+ |
+
+ Mysql80Compatible is a container image (including version tag) for mysqld +that’s compatible with the Vitess “MySQL80” flavor setting. + |
+
@@ -1417,7 +1608,7 @@ that’s compatible with the Vitess “MariaDB103” flavor setting.
resources
resources
Kubernetes core/v1.ResourceRequirements
@@ -1432,7 +1623,7 @@ This field is required.
configOverrides
configOverrides
string
@@ -1466,7 +1657,7 @@ particular MySQL instance.
reason
reason
string
@@ -1477,7 +1668,7 @@ string
message
message
string
@@ -1507,7 +1698,7 @@ string
workflow
workflow
string
@@ -1518,7 +1709,7 @@ string
state
state
WorkflowState
@@ -1531,7 +1722,7 @@ WorkflowState
sourceShards
sourceShards
[]string
@@ -1542,7 +1733,7 @@ WorkflowState
targetShards
targetShards
[]string
@@ -1553,7 +1744,7 @@ WorkflowState
copyProgress
copyProgress
int
@@ -1586,7 +1777,7 @@ If we can not compute the copy progress in a timely fashion, we will report -1 t
region
region
string
@@ -1597,7 +1788,7 @@ string
bucket
bucket
string
@@ -1608,7 +1799,7 @@ string
endpoint
endpoint
string
@@ -1620,7 +1811,19 @@ Default: Use the endpoint associated with region
by the driver.
keyPrefix
forcePathStyle
+
+bool
+
+ForcePathStyle is an optional param to force connection using
keyPrefix
string
@@ -1635,7 +1838,7 @@ within a bucket, regardless of this setting.
authSecret
authSecret
SecretSource
@@ -1656,12 +1859,14 @@ Default: Use the default credentials of the Node.
(Appears on: AzblobBackupLocation, +CephBackupLocation, ExternalDatastore, GCSBackupLocation, S3BackupLocation, VitessGatewayStaticAuthentication, VitessGatewayTLSSecureTransport, -VitessShardTemplate) +VitessShardTemplate, +VtAdminSpec)
SecretSource specifies where to find the data for a particular secret value.
@@ -1676,7 +1881,7 @@ Default: Use the default credentials of the Node.name
name
string
@@ -1692,7 +1897,7 @@ with the ‘volumeName’ field instead.
volumeName
volumeName
string
@@ -1707,7 +1912,7 @@ If specified, this takes precedence over the ‘name’ field.
key
key
string
@@ -1729,7 +1934,9 @@ within that Volume.
EtcdLockserverTemplate,
VitessCellGatewaySpec,
VitessClusterSpec,
-VitessDashboardSpec)
+VitessDashboardSpec,
+VitessOrchestratorSpec,
+VtAdminSpec)
ServiceOverrides allows customization of an arbitrary Service object.
@@ -1744,7 +1951,7 @@ within that Volume.annotations
annotations
map[string]string
@@ -1757,7 +1964,7 @@ Service object if they are removed here.
clusterIP
clusterIP
string
@@ -1787,7 +1994,7 @@ a given backup location.
name
name
string
@@ -1798,7 +2005,7 @@ string
completeBackups
completeBackups
int32
@@ -1809,7 +2016,7 @@ int32
incompleteBackups
incompleteBackups
int32
@@ -1820,7 +2027,7 @@ int32
latestCompleteBackupTime
latestCompleteBackupTime
Kubernetes meta/v1.Time
@@ -1856,7 +2063,7 @@ This should only be necessary if you need to override defaults, and shouldn&rsqu
registerCellsAliases
registerCellsAliases
bool
@@ -1868,7 +2075,7 @@ Default: true
registerCells
registerCells
bool
@@ -1880,7 +2087,7 @@ Default: true
pruneCells
pruneCells
bool
@@ -1892,7 +2099,7 @@ Default: true
pruneKeyspaces
pruneKeyspaces
bool
@@ -1904,7 +2111,7 @@ Default: true
pruneSrvKeyspaces
pruneSrvKeyspaces
bool
@@ -1916,7 +2123,7 @@ Default: true
pruneShards
pruneShards
bool
@@ -1928,7 +2135,7 @@ Default: true
pruneShardCells
pruneShardCells
bool
@@ -1940,7 +2147,7 @@ Default: true
pruneTablets
pruneTablets
bool
@@ -1953,7 +2160,7 @@ Default: true
string
alias)string
alias)
(Appears on: ClusterBackupSpec, @@ -1985,7 +2192,7 @@ Default: true
name
name
string
@@ -2002,7 +2209,7 @@ location used when a tablet pool does not specify a backupLocationName.
gcs
gcs
GCSBackupLocation
@@ -2015,7 +2222,7 @@ GCSBackupLocation
s3
s3
S3BackupLocation
@@ -2028,7 +2235,7 @@ S3BackupLocation
azblob
azblob
AzblobBackupLocation
@@ -2041,7 +2248,20 @@ AzblobBackupLocation
volume
ceph
+
+
+CephBackupLocation
+
+
+Ceph specifies a backup location in Ceph S3.
+volume
Kubernetes core/v1.VolumeSource
@@ -2056,7 +2276,19 @@ a shared host path for local testing.
annotations
volumeSubPath
+
+string
+
+VolumeSubPath gives the subpath in the volume to mount to the backups target. +Only used for Volume-backed backup storage, ignored otherwise.
+annotations
map[string]string
@@ -2068,23 +2300,10 @@ that need access to this backup storage location.
-(Appears on: -VitessBackup) -
--
VitessBackupSpec defines the desired state of the backup.
- --(Appears on: -VitessBackup) -
--
VitessBackupStatus describes the observed state of the backup.
+VitessBackupSchedule is the Schema for the VitessBackupSchedule API.
-startTime + metadata
-
-Kubernetes meta/v1.Time
+
+Kubernetes meta/v1.ObjectMeta
|
- StartTime is the time when the backup started. +Refer to the Kubernetes API documentation for the fields of the +metadata field.
|
-finishedTime + spec
-
-Kubernetes meta/v1.Time
+
+VitessBackupScheduleSpec
|
- FinishedTime is the time when the backup finished. - |
-
-complete + VitessBackupScheduleTemplate
-bool
+
+VitessBackupScheduleTemplate
+
|
- Complete indicates whether the backup ever completed. +
+(Members of VitessBackupScheduleTemplate contains the user-specific parts of VitessBackupScheduleSpec. +These are the parts that are configurable through the VitessCluster CRD. |
-position + cluster
string
|
- Position is the replication position of the snapshot that was backed up. -The position is expressed in the native, GTID-based format of the MySQL -flavor that took the backup. -This is only available after the backup is complete. +Cluster on which this schedule runs. |
-engine + image
string
|
- Engine is the Vitess backup engine implementation that was used. +Image should be any image that already contains vtctldclient installed. +The controller will re-use the vtctld image by default. |
-storageDirectory + imagePullPolicy
-string
+
+Kubernetes core/v1.PullPolicy
+
|
- StorageDirectory is the name of the parent directory in storage that -contains this backup. +ImagePullPolicy defines the policy to pull the Docker image in the job’s pod. +The PullPolicy used will be the same as the one used to pull the vtctld image. + |
+
storageName
status
-string
+
+VitessBackupScheduleStatus
+
StorageName is the name of the backup in storage. This is different from -the name of the VitessBackup object created to represent metadata about -the actual backup in storage.
-
VitessBackupStorage represents a storage location for Vitess backups. -It provides access to metadata about Vitess backups inside Kubernetes by -maintaining a set of VitessBackup objects that represent backups in the given -storage location. One VitessBackupStorage represents a storage location -defined at the VitessCluster level, so it provides access to metadata -about backups stored in that location for any keyspace and any shard in that -cluster.
+(Appears on: +VitessBackupSchedule) + ++
VitessBackupScheduleSpec defines the desired state of VitessBackupSchedule.
-metadata + VitessBackupScheduleTemplate
-
-Kubernetes meta/v1.ObjectMeta
+
+VitessBackupScheduleTemplate
|
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
+
+(Members of VitessBackupScheduleTemplate contains the user-specific parts of VitessBackupScheduleSpec. +These are the parts that are configurable through the VitessCluster CRD. |
||||
-spec + cluster
-
-VitessBackupStorageSpec
-
+string
|
- - -
|
-||||
-status - - -VitessBackupStorageStatus + +Kubernetes core/v1.PullPolicy |
+ ImagePullPolicy defines the policy to pull the Docker image in the job’s pod. +The PullPolicy used will be the same as the one used to pull the vtctld image. |
(Appears on: -VitessBackupStorage) +VitessBackupSchedule)
-
VitessBackupStorageSpec defines the desired state of VitessBackupStorage.
+VitessBackupScheduleStatus defines the observed state of VitessBackupSchedule
-location + active
-
-VitessBackupLocation
+
+[]Kubernetes core/v1.ObjectReference
|
- Location specifies the Vitess parameters for connecting to the backup -storage location. +(Optional) +A list of pointers to currently running jobs. |
-subcontroller + lastScheduledTime
-
-VitessBackupSubcontrollerSpec
+
+Kubernetes meta/v1.Time
|
- Subcontroller specifies any parameters needed for launching the VitessBackupStorage subcontroller pod. +(Optional) +Information when was the last time the job was successfully scheduled. |
(Appears on: -VitessBackupStorage) +VitessBackupScheduleTemplate)
-
VitessBackupStorageStatus defines the observed state of VitessBackupStorage.
+VitessBackupScheduleStrategy defines how we are going to take a backup. +The VitessBackupSchedule controller uses this data to build the vtctldclient +command line that will be executed in the Job’s pod.
-observedGeneration + name
-int64
+
+BackupStrategyName
+
|
- The generation observed by the controller. +Name of the backup strategy. |
-totalBackupCount + keyspace
-int32
+string
|
- TotalBackupCount is the total number of backups found in this storage -location, across all keyspaces and shards. +Keyspace defines the keyspace on which we want to take the backup. + |
+
+shard
+
+string
+
+ |
+
+ Shard defines the shard on which we want to take a backup. + |
+
+extraFlags
+
+map[string]string
+
+ |
+
+(Optional)
+ ExtraFlags is a map of flags that will be sent down to vtctldclient when taking the backup. |
(Appears on: ClusterBackupSpec, -VitessBackupStorageSpec) +VitessBackupScheduleSpec)
+
VitessBackupScheduleTemplate contains all the user-specific fields that the user will be +able to define when writing their YAML file.
-serviceAccountName + name
string
|
- ServiceAccountName specifies the ServiceAccount used to launch the VitessBackupStorage subcontroller pod in the -namespace of the VitessCluster. If empty (the default), the same account as the operator will be reused. If your -VitessCluster is in a different namespace than the operator, this account is unlikely to work. +Name is the schedule name, this name must be unique across all the different VitessBackupSchedule +objects in the cluster. |
-
VitessCell represents a group of Nodes in a given failure domain (Zone), -plus Vitess components like the lockserver and gateway that are local -to each cell. Together, these cell-local components make it possible for -Vitess instances (tablets) to run on those Nodes, and for clients to reach -Vitess instances in the cell.
-Note that VitessCell does not “own” the VitessKeyspaces deployed in it, -just like a Node does not own the Pods deployed on it. In addition, each -VitessKeyspace can deploy Vitess instances in multiple VitessCells, -just like a Deployment can manage Pods that run on multiple Nodes.
- -Field | -Description | -||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-metadata + schedule
-
-Kubernetes meta/v1.ObjectMeta
-
+string
|
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
+The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron. |
||||||||||||||||
-spec + strategies
-
-VitessCellSpec
+
+[]VitessBackupScheduleStrategy
|
- - -
| ||||||||||||||||
+annotations
+
+map[string]string
+
+ |
+
+(Optional)
+ Annotations are the set of annotations that will be attached to the pods created by VitessBackupSchedule. |
||||||||||||||||
-status + affinity
-
-VitessCellStatus
+
+Kubernetes core/v1.Affinity
|
+(Optional)
+ Affinity allows you to set rules that constrain the scheduling of the pods that take backups. +WARNING: These affinity rules will override all default affinities that we set; in turn, we can’t +guarantee optimal scheduling of your pods if you choose to set this field. |
(Appears on: -VitessCellTemplate) +VitessBackup)
-
VitessCellGatewaySpec specifies the per-cell deployment parameters for vtgate.
+VitessBackupSpec defines the desired state of the backup.
+ ++(Appears on: +VitessBackup) +
++
VitessBackupStatus describes the observed state of the backup.
-replicas + startTime
-int32
+
+Kubernetes meta/v1.Time
+
|
- Replicas is the number of vtgate instances to deploy in this cell. +StartTime is the time when the backup started. |
-resources + finishedTime
-
-Kubernetes core/v1.ResourceRequirements
+
+Kubernetes meta/v1.Time
|
- Resources determines the compute resources reserved for each vtgate replica. +FinishedTime is the time when the backup finished. |
-authentication + complete
-
-VitessGatewayAuthentication
-
+bool
|
- Authentication configures how Vitess Gateway authenticates MySQL client connections. +Complete indicates whether the backup ever completed. |
-secureTransport + position
-
-VitessGatewaySecureTransport
-
+string
|
- SecureTransport configures secure transport connections for vtgate. +Position is the replication position of the snapshot that was backed up. +The position is expressed in the native, GTID-based format of the MySQL +flavor that took the backup. +This is only available after the backup is complete. |
-extraFlags + engine
-map[string]string
+string
|
- ExtraFlags can optionally be used to override default flags set by the -operator, or pass additional flags to vtgate. All entries must be -key-value string pairs of the form “flag”: “value”. The flag name should -not have any prefix (just “flag”, not “-flag”). To set a boolean flag, -set the string value to either “true” or “false”. +Engine is the Vitess backup engine implementation that was used. |
-extraEnv + storageDirectory
-
-[]Kubernetes core/v1.EnvVar
-
+string
|
- ExtraEnv can optionally be used to override default environment variables -set by the operator, or pass additional environment variables. +StorageDirectory is the name of the parent directory in storage that +contains this backup. |
-extraVolumes + storageName
-
-[]Kubernetes core/v1.Volume
-
+string
|
- ExtraVolumes can optionally be used to override default Pod volumes -defined by the operator, or provide additional volumes to the Pod. -Note that when adding a new volume, you should usually also add a -volumeMount to specify where in each container’s filesystem the volume -should be mounted. +StorageName is the name of the backup in storage. This is different from +the name of the VitessBackup object created to represent metadata about +the actual backup in storage. |
+
VitessBackupStorage represents a storage location for Vitess backups. +It provides access to metadata about Vitess backups inside Kubernetes by +maintaining a set of VitessBackup objects that represent backups in the given +storage location. One VitessBackupStorage represents a storage location +defined at the VitessCluster level, so it provides access to metadata +about backups stored in that location for any keyspace and any shard in that +cluster.
+ +Field | +Description | +
---|---|
-extraVolumeMounts + metadata
-
-[]Kubernetes core/v1.VolumeMount
+
+Kubernetes meta/v1.ObjectMeta
|
- ExtraVolumeMounts can optionally be used to override default Pod -volumeMounts defined by the operator, or specify additional mounts. -Typically, these are used to mount volumes defined through extraVolumes. +Refer to the Kubernetes API documentation for the fields of the +metadata field.
|
-initContainers + spec
-
-[]Kubernetes core/v1.Container
+
+VitessBackupStorageSpec
|
- InitContainers can optionally be used to supply extra init containers -that will be run to completion one after another before any app containers are started. - |
-
-sidecarContainers + location
-
-[]Kubernetes core/v1.Container
+
+VitessBackupLocation
|
- SidecarContainers can optionally be used to supply extra containers -that run alongside the main containers. +Location specifies the Vitess parameters for connecting to the backup +storage location. |
-affinity + subcontroller
-
-Kubernetes core/v1.Affinity
+
+VitessBackupSubcontrollerSpec
|
- Affinity allows you to set rules that constrain the scheduling of -your vtgate pods. WARNING: These affinity rules will override all default affinities -that we set; in turn, we can’t guarantee optimal scheduling of your pods if you -choose to set this field. +Subcontroller specifies any parameters needed for launching the VitessBackupStorage subcontroller pod. |
-annotations - -map[string]string - - |
-
- Annotations can optionally be used to attach custom annotations to Pods -created for this component. These will be attached to the underlying -Pods that the vtgate Deployment creates. + |
extraLabels
status
-map[string]string
+
+VitessBackupStorageStatus
+
ExtraLabels can optionally be used to attach custom labels to Pods -created for this component. These will be attached to the underlying -Pods that the vtgate Deployment creates.
+(Appears on: +VitessBackupStorage) +
++
VitessBackupStorageSpec defines the desired state of VitessBackupStorage.
+ +Field | +Description | +
---|---|
-service + location
-
-ServiceOverrides
+
+VitessBackupLocation
|
- Service can optionally be used to customize the per-cell vtgate Service. +Location specifies the Vitess parameters for connecting to the backup +storage location. |
-tolerations + subcontroller
-
-[]Kubernetes core/v1.Toleration
+
+VitessBackupSubcontrollerSpec
|
- Tolerations allow you to schedule pods onto nodes with matching taints. +Subcontroller specifies any parameters needed for launching the VitessBackupStorage subcontroller pod. |
(Appears on: -VitessCellStatus) +VitessBackupStorage)
-
VitessCellGatewayStatus is a summary of the status of vtgate in this cell.
+VitessBackupStorageStatus defines the observed state of VitessBackupStorage.
-available + observedGeneration
-
-Kubernetes core/v1.ConditionStatus
-
+int64
|
- Available indicates whether the vtgate service is fully available. +The generation observed by the controller. |
-serviceName + totalBackupCount
-string
+int32
|
- ServiceName is the name of the Service for this cell’s vtgate. +TotalBackupCount is the total number of backups found in this storage +location, across all keyspaces and shards. |
(Appears on: -VitessCellSpec) +ClusterBackupSpec, +VitessBackupStorageSpec)
-
VitessCellImages specifies container images to use for this cell.
-vtgate + serviceAccountName
string
|
- Vtgate is the container image (including version tag) to use for Vitess Gateway instances. +ServiceAccountName specifies the ServiceAccount used to launch the VitessBackupStorage subcontroller pod in the +namespace of the VitessCluster. If empty (the default), the same account as the operator will be reused. If your +VitessCluster is in a different namespace than the operator, this account is unlikely to work. |
-(Appears on: -VitessCellStatus) -
--
VitessCellKeyspaceStatus summarizes the status of a keyspace deployed in this cell.
- --(Appears on: -VitessCell) -
--
VitessCellSpec defines the desired state of a VitessCell.
+VitessCell represents a group of Nodes in a given failure domain (Zone), +plus Vitess components like the lockserver and gateway that are local +to each cell. Together, these cell-local components make it possible for +Vitess instances (tablets) to run on those Nodes, and for clients to reach +Vitess instances in the cell.
+Note that VitessCell does not “own” the VitessKeyspaces deployed in it, +just like a Node does not own the Pods deployed on it. In addition, each +VitessKeyspace can deploy Vitess instances in multiple VitessCells, +just like a Deployment can manage Pods that run on multiple Nodes.
-VitessCellTemplate + metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||
+spec
+
+
+VitessCellSpec
+
+
+ |
+
+ + +
|
+||||||||
+status
+
+
+VitessCellStatus
+
+
+ |
++ | +
(Appears on: -VitessCell) +VitessCellTemplate)
-
VitessCellStatus defines the observed state of VitessCell
+VitessCellGatewaySpec specifies the per-cell deployment parameters for vtgate.
-observedGeneration + replicas
-int64
+int32
|
- The generation observed by the controller. +Replicas is the number of vtgate instances to deploy in this cell. |
-lockserver + resources
-
-LockserverStatus
+
+Kubernetes core/v1.ResourceRequirements
|
- Lockserver is a summary of the status of the cell-local lockserver. +Resources determines the compute resources reserved for each vtgate replica. |
-gateway + authentication
-
-VitessCellGatewayStatus
+
+VitessGatewayAuthentication
|
- Gateway is a summary of the status of vtgate in this cell. +Authentication configures how Vitess Gateway authenticates MySQL client connections. |
-keyspaces + secureTransport
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessCellKeyspaceStatus
+
+VitessGatewaySecureTransport
|
- Keyspaces is a summary of keyspaces deployed in this cell. -This summary could be empty either if there are no keyspaces, -or if the controller failed to read the current state. -Use the Idle condition to distinguish these scenarios -when the difference matters. +SecureTransport configures secure transport connections for vtgate. |
-idle + extraFlags
-
-Kubernetes core/v1.ConditionStatus
-
+map[string]string
|
- Idle is a condition indicating whether the cell can be turned down. -If Idle is True, there are no keyspaces deployed in the cell, so it -should be safe to turn down the cell. +ExtraFlags can optionally be used to override default flags set by the +operator, or pass additional flags to vtgate. All entries must be +key-value string pairs of the form “flag”: “value”. The flag name should +not have any prefix (just “flag”, not “-flag”). To set a boolean flag, +set the string value to either “true” or “false”. |
-(Appears on: -VitessCellSpec, -VitessClusterSpec) -
--
VitessCellTemplate contains only the user-specified parts of a VitessCell object.
- -Field | -Description | -
---|---|
-name + extraEnv
-string
+
+[]Kubernetes core/v1.EnvVar
+
|
- Name is the cell name as it should be provided to Vitess. -Note that this is different from the VitessCell object’s -metadata.name, which is generated by the operator. +ExtraEnv can optionally be used to override default environment variables +set by the operator, or pass additional environment variables. |
-zone + extraVolumes
-string
+
+[]Kubernetes core/v1.Volume
+
|
- Zone is the name of the Availability Zone that this Vitess Cell should run in. -This value should match the value of the “failure-domain.beta.kubernetes.io/zone” -label on the Kubernetes Nodes in that AZ. -If the Kubernetes Nodes don’t have such a label, leave this empty. +ExtraVolumes can optionally be used to override default Pod volumes +defined by the operator, or provide additional volumes to the Pod. +Note that when adding a new volume, you should usually also add a +volumeMount to specify where in each container’s filesystem the volume +should be mounted. |
-lockserver + extraVolumeMounts
-
-LockserverSpec
+
+[]Kubernetes core/v1.VolumeMount
|
- Lockserver specifies either a deployed or external lockserver -to be used as the Vitess cell-local topology store. -Default: Put this cell’s topology data in the global lockserver instead of its own lockserver. +ExtraVolumeMounts can optionally be used to override default Pod +volumeMounts defined by the operator, or specify additional mounts. +Typically, these are used to mount volumes defined through extraVolumes. |
-gateway + initContainers
-
-VitessCellGatewaySpec
+
+[]Kubernetes core/v1.Container
|
- Gateway configures the Vitess Gateway deployment in this cell. +InitContainers can optionally be used to supply extra init containers +that will be run to completion one after another before any app containers are started. |
-(Appears on: -VitessClusterStatus) -
--
VitessClusterCellStatus is the status of a cell within a VitessCluster.
- -Field | -Description | -
---|---|
-pendingChanges + sidecarContainers
-string
+
+[]Kubernetes core/v1.Container
+
|
- PendingChanges describes changes to the cell that will be -applied the next time a rolling update allows. +SidecarContainers can optionally be used to supply extra containers +that run alongside the main containers. |
-gatewayAvailable + affinity
-
-Kubernetes core/v1.ConditionStatus
+
+Kubernetes core/v1.Affinity
|
- GatewayAvailable indicates whether the vtgate service is fully available. +Affinity allows you to set rules that constrain the scheduling of +your vtgate pods. WARNING: These affinity rules will override all default affinities +that we set; in turn, we can’t guarantee optimal scheduling of your pods if you +choose to set this field. |
-(Appears on: -VitessClusterStatus) -
--
VitessClusterKeyspaceStatus is the status of a keyspace within a VitessCluster.
- -Field | -Description | -
---|---|
-pendingChanges + annotations
-string
+map[string]string
|
- PendingChanges describes changes to the keyspace that will be -applied the next time a rolling update allows. +Annotations can optionally be used to attach custom annotations to Pods +created for this component. These will be attached to the underlying +Pods that the vtgate Deployment creates. |
-desiredShards + extraLabels
-int32
+map[string]string
|
- DesiredShards is the number of desired shards. This is computed from -information that’s already available in the spec, but clients should -use this value instead of trying to compute shard partitionings on their -own. +ExtraLabels can optionally be used to attach custom labels to Pods +created for this component. These will be attached to the underlying +Pods that the vtgate Deployment creates. |
-shards + service
-int32
+
+ServiceOverrides
+
|
- Shards is the number of observed shards. This could be higher or lower -than desiredShards if the state has not yet converged. +Service can optionally be used to customize the per-cell vtgate Service. |
-readyShards + tolerations
-int32
+
+[]Kubernetes core/v1.Toleration
+
|
- ReadyShards is the number of desired shards that are Ready. +Tolerations allow you to schedule pods onto nodes with matching taints. |
-updatedShards + topologySpreadConstraints
-int32
+
+[]Kubernetes core/v1.TopologySpreadConstraint
+
|
- UpdatedShards is the number of desired shards that are up-to-date -(have no pending changes). +TopologySpreadConstraint can optionally be used to +specify how to spread vtgate pods among the given topology |
-desiredTablets + lifecycle
-int32
+
+Kubernetes core/v1.Lifecycle
+
|
- DesiredTablets is the total number of desired tablets across all shards. -This is computed from information that’s already available in the spec, -but clients should use this value instead of trying to compute shard -partitionings on their own. +Lifecycle can optionally be used to add container lifecycle hooks +to the vtgate container. |
-tablets + terminationGracePeriodSeconds
-int32
+int64
|
- Tablets is the total number of observed tablets across all shards. -This could be higher or lower than desiredTablets if the state has not -yet converged. +TerminationGracePeriodSeconds can optionally be used to customize +terminationGracePeriodSeconds of the vtgate pod. |
+(Appears on: +VitessCellStatus) +
++
VitessCellGatewayStatus is a summary of the status of vtgate in this cell.
+ +Field | +Description | +
---|---|
-readyTablets + available
-int32
+
+Kubernetes core/v1.ConditionStatus
+
|
- ReadyTablets is the number of desired tablets that are Ready. +Available indicates whether the vtgate service is fully available. |
-updatedTablets + serviceName
-int32
+string
|
- UpdatedTablets is the number of desired tablets that are up-to-date -(have no pending changes). +ServiceName is the name of the Service for this cell’s vtgate. |
+(Appears on: +VitessCellSpec) +
++
VitessCellImages specifies container images to use for this cell.
+ +Field | +Description | +
---|---|
-cells + vtgate
-[]string
+string
|
- Cells is a list of cells in which any observed tablets for this keyspace -are deployed. +Vtgate is the container image (including version tag) to use for Vitess Gateway instances. |
(Appears on: -VitessCluster) +VitessCellStatus)
-
VitessClusterSpec defines the desired state of VitessCluster.
+VitessCellKeyspaceStatus summarizes the status of a keyspace deployed in this cell.
+ ++(Appears on: +VitessCell) +
++
VitessCellSpec defines the desired state of a VitessCell.
-images + VitessCellTemplate
-
-VitessImages
+
+VitessCellTemplate
|
- Images specifies the container images (including version tag) to use -in the cluster. -Default: Let the operator choose. +
+(Members of VitessCellTemplate contains the user-specified parts of VitessCellSpec. +These are the parts that are configurable inside VitessCluster. +The rest of the fields below are filled in by the parent controller. |
-imagePullPolicies + globalLockserver
-
-VitessImagePullPolicies
+
+VitessLockserverParams
|
- ImagePullPolicies specifies the container image pull policies to use for -images defined in the ‘images’ field. +GlobalLockserver are the params to connect to the global lockserver. |
-imagePullSecrets + allCells
-
-[]Kubernetes core/v1.LocalObjectReference
-
+[]string
|
- ImagePullSecrets specifies the image pull secrets to add to all Pods that -use the images defined in the ‘images’ field. +AllCells is a list of all cells in the Vitess cluster. |
-backup + images
-
-ClusterBackupSpec
+
+VitessCellImages
|
- Backup specifies how to take and store Vitess backups. -This is optional but strongly recommended. In addition to disaster -recovery, Vitess currently depends on backups to support provisioning -of a new tablet in a shard with existing data, as an implementation detail. +Images are not customizable by users at the cell level because version +skew across the cluster is discouraged except during rolling updates, +in which case this field is automatically managed by the VitessCluster +controller that owns this VitessCell. |
-globalLockserver + imagePullPolicies
-
-LockserverSpec
+
+VitessImagePullPolicies
|
- GlobalLockserver specifies either a deployed or external lockserver -to be used as the Vitess global topology store. -Default: Deploy an etcd cluster as the global lockserver. +ImagePullPolicies are inherited from the VitessCluster spec. |
-vitessDashboard + imagePullSecrets
-
-VitessDashboardSpec
+
+[]Kubernetes core/v1.LocalObjectReference
|
- Dashboard deploys a set of Vitess Dashboard servers (vtctld) for the Vitess cluster. +ImagePullSecrets are inherited from the VitessCluster spec. |
-cells + extraVitessFlags
-
-[]VitessCellTemplate
-
+map[string]string
|
- Cells is a list of templates for VitessCells to create for this cluster. -Each VitessCell represents a set of Nodes in a given failure domain, -to which VitessKeyspaces can be deployed. The VitessCell also deploys -cell-local services that any keyspaces deployed there will need. -This field is required, but it may be set to an empty list: []. -Before removing any cell from this list, you should first ensure -that no keyspaces are set to deploy to this cell. +ExtraVitessFlags is inherited from the parent’s VitessClusterSpec. |
-keyspaces + topologyReconciliation
-
-[]VitessKeyspaceTemplate
+
+TopoReconcileConfig
|
- Keyspaces defines the logical databases to deploy. -A VitessKeyspace can deploy to multiple VitessCells. -This field is required, but it may be set to an empty list: []. -Before removing any keyspace from this list, you should first ensure -that it is undeployed from all cells by clearing the keyspace’s list -of target cells. +TopologyReconciliation is inherited from the parent’s VitessClusterSpec. |
-extraVitessFlags + |
+(Appears on: +VitessCell) +
++
VitessCellStatus defines the observed state of VitessCell
+ +Field | +Description | +
---|---|
+observedGeneration
-map[string]string
+int64
|
- ExtraVitessFlags can optionally be used to pass flags to all Vitess components. -WARNING: Any flags passed here must be flags that can be accepted by vtgate, vtctld and vttablet. -An example use-case would be topo flags. -All entries must be key-value string pairs of the form “flag”: “value”. The flag name should -not have any prefix (just “flag”, not “-flag”). To set a boolean flag, -set the string value to either “true” or “false”. +The generation observed by the controller. |
-topologyReconciliation + lockserver
-
-TopoReconcileConfig
+
+LockserverStatus
|
- TopologyReconciliation can be used to enable or disable registration or pruning of various vitess components to and from topo records. +Lockserver is a summary of the status of the cell-local lockserver. |
-updateStrategy + gateway
-
-VitessClusterUpdateStrategy
+
+VitessCellGatewayStatus
|
- UpdateStrategy specifies how components in the Vitess cluster will be updated -when a revision is made to the VitessCluster spec. +Gateway is a summary of the status of vtgate in this cell. |
-gatewayService + keyspaces
-
-ServiceOverrides
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessCellKeyspaceStatus
|
- GatewayService can optionally be used to customize the global vtgate Service. -Note that per-cell vtgate Services can be customized within each cell -definition. +Keyspaces is a summary of keyspaces deployed in this cell. +This summary could be empty either if there are no keyspaces, +or if the controller failed to read the current state. +Use the Idle condition to distinguish these scenarios +when the difference matters. |
-tabletService + idle
-
-ServiceOverrides
+
+Kubernetes core/v1.ConditionStatus
|
- TabletService can optionally be used to customize the global, headless vttablet Service. +Idle is a condition indicating whether the cell can be turned down. +If Idle is True, there are no keyspaces deployed in the cell, so it +should be safe to turn down the cell. |
(Appears on: -VitessCluster) +VitessCellSpec, +VitessClusterSpec)
-
VitessClusterStatus defines the observed state of VitessCluster
+VitessCellTemplate contains only the user-specified parts of a VitessCell object.
-observedGeneration - -int64 - - |
-
- The generation observed by the controller. - |
-
-globalLockserver - - -LockserverStatus - - - |
-
- GlobalLockserver is the status of the global lockserver. - |
-
-gatewayServiceName + name
string
|
- GatewayServiceName is the name of the cluster-wide vtgate Service. - |
-
-vitessDashboard - - -VitessDashboardStatus - - - |
-
- VitessDashboard is a summary of the status of the vtctld deployment. - |
-
-cells - - -map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessClusterCellStatus - - - |
-
- Cells is a summary of the status of desired cells. +Name is the cell name as it should be provided to Vitess. +Note that this is different from the VitessCell object’s +metadata.name, which is generated by the operator. |
-keyspaces + zone
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessClusterKeyspaceStatus
-
+string
|
- Keyspaces is a summary of the status of desired keyspaces. +Zone is the name of the Availability Zone that this Vitess Cell should run in. +This value should match the value of the “failure-domain.beta.kubernetes.io/zone” +label on the Kubernetes Nodes in that AZ. +If the Kubernetes Nodes don’t have such a label, leave this empty. |
-orphanedCells + lockserver
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+LockserverSpec
|
- OrphanedCells is a list of unwanted cells that could not be turned down. +Lockserver specifies either a deployed or external lockserver +to be used as the Vitess cell-local topology store. +Default: Put this cell’s topology data in the global lockserver instead of its own lockserver. |
-orphanedKeyspaces + gateway
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+VitessCellGatewaySpec
|
- OrphanedKeyspaces is a list of unwanted keyspaces that could not be turned down. +Gateway configures the Vitess Gateway deployment in this cell. |
(Appears on: -VitessClusterSpec, -VitessKeyspaceSpec, -VitessShardSpec) +VitessClusterStatus)
-
VitessClusterUpdateStrategy indicates the strategy that the operator -will use to perform updates. It includes any additional parameters -necessary to perform the update for the indicated strategy.
+VitessClusterCellStatus is the status of a cell within a VitessCluster.
-type + pendingChanges
-
-VitessClusterUpdateStrategyType
-
+string
|
- Type selects the overall update strategy. -Supported options are: -
Default: External +PendingChanges describes changes to the cell that will be +applied the next time a rolling update allows. |
-external + gatewayAvailable
-
-ExternalVitessClusterUpdateStrategyOptions
+
+Kubernetes core/v1.ConditionStatus
|
- External can optionally be used to enable the user to customize their external update strategy -to allow certain updates to pass through immediately without using an external tool. +GatewayAvailable indicates whether the vtgate service is fully available. |
string
alias)-(Appears on: -VitessClusterUpdateStrategy) -
--
VitessClusterUpdateStrategyType is a string enumeration type that enumerates -all possible update strategies for the VitessCluster.
- -(Appears on: -VitessClusterSpec) +VitessClusterStatus)
-
VitessDashboardSpec specifies deployment parameters for vtctld.
+VitessClusterKeyspaceStatus is the status of a keyspace within a VitessCluster.
-cells + pendingChanges
-[]string
+string
|
- Cells is a list of cell names (as defined in the Cells list) -in which to deploy vtctld. -Default: Deploy to all defined cells. +PendingChanges describes changes to the keyspace that will be +applied the next time a rolling update allows. |
-replicas + desiredShards
int32
|
- Replicas is the number of vtctld instances to deploy in each cell. +DesiredShards is the number of desired shards. This is computed from +information that’s already available in the spec, but clients should +use this value instead of trying to compute shard partitionings on their +own. |
-resources + shards
-
-Kubernetes core/v1.ResourceRequirements
-
+int32
|
- Resources determines the compute resources reserved for each vtctld replica. +Shards is the number of observed shards. This could be higher or lower +than desiredShards if the state has not yet converged. |
-extraFlags + readyShards
-map[string]string
+int32
|
- ExtraFlags can optionally be used to override default flags set by the -operator, or pass additional flags to vtctld. All entries must be -key-value string pairs of the form “flag”: “value”. The flag name should -not have any prefix (just “flag”, not “-flag”). To set a boolean flag, -set the string value to either “true” or “false”. +ReadyShards is the number of desired shards that are Ready. |
-extraEnv + updatedShards
-
-[]Kubernetes core/v1.EnvVar
-
+int32
|
- ExtraEnv can optionally be used to override default environment variables -set by the operator, or pass additional environment variables. +UpdatedShards is the number of desired shards that are up-to-date +(have no pending changes). |
-extraVolumes + desiredTablets
-
-[]Kubernetes core/v1.Volume
-
+int32
|
- ExtraVolumes can optionally be used to override default Pod volumes -defined by the operator, or provide additional volumes to the Pod. -Note that when adding a new volume, you should usually also add a -volumeMount to specify where in each container’s filesystem the volume -should be mounted. +DesiredTablets is the total number of desired tablets across all shards. +This is computed from information that’s already available in the spec, +but clients should use this value instead of trying to compute shard +partitionings on their own. |
-extraVolumeMounts + tablets
-
-[]Kubernetes core/v1.VolumeMount
-
+int32
|
- ExtraVolumeMounts can optionally be used to override default Pod -volumeMounts defined by the operator, or specify additional mounts. -Typically, these are used to mount volumes defined through extraVolumes. +Tablets is the total number of observed tablets across all shards. +This could be higher or lower than desiredTablets if the state has not +yet converged. |
-initContainers + readyTablets
-
-[]Kubernetes core/v1.Container
-
+int32
|
- InitContainers can optionally be used to supply extra init containers -that will be run to completion one after another before any app containers are started. +ReadyTablets is the number of desired tablets that are Ready. |
-sidecarContainers + updatedTablets
-
-[]Kubernetes core/v1.Container
+int32
+
+ |
+
+ UpdatedTablets is the number of desired tablets that are up-to-date +(have no pending changes). + |
+
+cells
+
+[]string
+
+ |
+
+ Cells is a list of cells in which any observed tablets for this keyspace +are deployed. + |
+
+(Appears on: +VitessCluster) +
++
VitessClusterSpec defines the desired state of VitessCluster.
+ +Field | +Description | +
---|---|
+images
+
+
+VitessImages
|
- SidecarContainers can optionally be used to supply extra containers -that run alongside the main containers. +Images specifies the container images (including version tag) to use +in the cluster. +Default: Let the operator choose. |
-affinity + imagePullPolicies
-
-Kubernetes core/v1.Affinity
+
+VitessImagePullPolicies
|
- Affinity allows you to set rules that constrain the scheduling of -your vtctld pods. WARNING: These affinity rules will override all default affinities -that we set; in turn, we can’t guarantee optimal scheduling of your pods if you -choose to set this field. +ImagePullPolicies specifies the container image pull policies to use for +images defined in the ‘images’ field. |
-annotations + imagePullSecrets
-map[string]string
+
+[]Kubernetes core/v1.LocalObjectReference
+
|
- Annotations can optionally be used to attach custom annotations to Pods -created for this component. These will be attached to the underlying -Pods that the vtctld Deployment creates. +ImagePullSecrets specifies the image pull secrets to add to all Pods that +use the images defined in the ‘images’ field. + |
+
+backup
+
+
+ClusterBackupSpec
+
+
+ |
+
+ Backup specifies how to take and store Vitess backups. +This is optional but strongly recommended. In addition to disaster +recovery, Vitess currently depends on backups to support provisioning +of a new tablet in a shard with existing data, as an implementation detail. + |
+
+globalLockserver
+
+
+LockserverSpec
+
+
+ |
+
+ GlobalLockserver specifies either a deployed or external lockserver +to be used as the Vitess global topology store. +Default: Deploy an etcd cluster as the global lockserver. + |
+
+vitessDashboard
+
+
+VitessDashboardSpec
+
+
+ |
+
+ Dashboard deploys a set of Vitess Dashboard servers (vtctld) for the Vitess cluster. + |
+
+vtadmin
+
+
+VtAdminSpec
+
+
+ |
+
+ VtAdmin deploys a set of Vitess Admin servers for the Vitess cluster. + |
+
+cells
+
+
+[]VitessCellTemplate
+
+
+ |
+
+ Cells is a list of templates for VitessCells to create for this cluster. +Each VitessCell represents a set of Nodes in a given failure domain, +to which VitessKeyspaces can be deployed. The VitessCell also deploys +cell-local services that any keyspaces deployed there will need. +This field is required, but it may be set to an empty list: []. +Before removing any cell from this list, you should first ensure +that no keyspaces are set to deploy to this cell. + |
+
+keyspaces
+
+
+[]VitessKeyspaceTemplate
+
+
+ |
+
+ Keyspaces defines the logical databases to deploy. +A VitessKeyspace can deploy to multiple VitessCells. +This field is required, but it may be set to an empty list: []. +Before removing any keyspace from this list, you should first ensure +that it is undeployed from all cells by clearing the keyspace’s list +of target cells. |
-extraLabels + extraVitessFlags
map[string]string
|
- ExtraLabels can optionally be used to attach custom labels to Pods -created for this component. These will be attached to the underlying -Pods that the vtctld Deployment creates. +ExtraVitessFlags can optionally be used to pass flags to all Vitess components. +WARNING: Any flags passed here must be flags that can be accepted by vtgate, vtctld, vtorc, and vttablet. +An example use-case would be topo flags. +All entries must be key-value string pairs of the form “flag”: “value”. The flag name should +not have any prefix (just “flag”, not “-flag”). To set a boolean flag, +set the string value to either “true” or “false”. + |
+
+topologyReconciliation
+
+
+TopoReconcileConfig
+
+
+ |
+
+ TopologyReconciliation can be used to enable or disable registration or pruning of various vitess components to and from topo records. + |
+
+updateStrategy
+
+
+VitessClusterUpdateStrategy
+
+
+ |
+
+ UpdateStrategy specifies how components in the Vitess cluster will be updated +when a revision is made to the VitessCluster spec. |
-service + gatewayService
ServiceOverrides
@@ -3949,32 +4336,1284 @@ ServiceOverrides
|
- Service can optionally be used to customize the vtctld Service. +GatewayService can optionally be used to customize the global vtgate Service. +Note that per-cell vtgate Services can be customized within each cell +definition. |
-tolerations + tabletService
-
-[]Kubernetes core/v1.Toleration
+
+ServiceOverrides
+
+
+ |
+
+ TabletService can optionally be used to customize the global, headless vttablet Service. + |
+
+(Appears on: +VitessCluster) +
++
VitessClusterStatus defines the observed state of VitessCluster
+ +Field | +Description | +
---|---|
+observedGeneration
+
+int64
+
+ |
+
+ The generation observed by the controller. + |
+
+globalLockserver
+
+
+LockserverStatus
+
+
+ |
+
+ GlobalLockserver is the status of the global lockserver. + |
+
+gatewayServiceName
+
+string
+
+ |
+
+ GatewayServiceName is the name of the cluster-wide vtgate Service. + |
+
+vitessDashboard
+
+
+VitessDashboardStatus
+
+
+ |
+
+ VitessDashboard is a summary of the status of the vtctld deployment. + |
+
+vtadmin
+
+
+VtadminStatus
+
+
+ |
+
+ Vtadmin is a summary of the status of the vtadmin deployment. + |
+
+cells
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessClusterCellStatus
+
+
+ |
+
+ Cells is a summary of the status of desired cells. + |
+
+keyspaces
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessClusterKeyspaceStatus
+
+
+ |
+
+ Keyspaces is a summary of the status of desired keyspaces. + |
+
+orphanedCells
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+
+ |
+
+ OrphanedCells is a list of unwanted cells that could not be turned down. + |
+
+orphanedKeyspaces
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+
+ |
+
+ OrphanedKeyspaces is a list of unwanted keyspaces that could not be turned down. + |
+
+(Appears on: +VitessClusterSpec, +VitessKeyspaceSpec, +VitessShardSpec) +
++
VitessClusterUpdateStrategy indicates the strategy that the operator +will use to perform updates. It includes any additional parameters +necessary to perform the update for the indicated strategy.
+ +Field | +Description | +
---|---|
+type
+
+
+VitessClusterUpdateStrategyType
+
+
+ |
+
+ Type selects the overall update strategy. +Supported options are: +
Default: External + |
+
+external
+
+
+ExternalVitessClusterUpdateStrategyOptions
+
+
+ |
+
+ External can optionally be used to enable the user to customize their external update strategy +to allow certain updates to pass through immediately without using an external tool. + |
+
string
alias)+(Appears on: +VitessClusterUpdateStrategy) +
++
VitessClusterUpdateStrategyType is a string enumeration type that enumerates +all possible update strategies for the VitessCluster.
+ ++(Appears on: +VitessClusterSpec) +
++
VitessDashboardSpec specifies deployment parameters for vtctld.
+ +Field | +Description | +
---|---|
+cells
+
+[]string
+
+ |
+
+ Cells is a list of cell names (as defined in the Cells list) +in which to deploy vtctld. +Default: Deploy to all defined cells. + |
+
+replicas
+
+int32
+
+ |
+
+ Replicas is the number of vtctld instances to deploy in each cell. + |
+
+resources
+
+
+Kubernetes core/v1.ResourceRequirements
+
+
+ |
+
+ Resources determines the compute resources reserved for each vtctld replica. + |
+
+extraFlags
+
+map[string]string
+
+ |
+
+ ExtraFlags can optionally be used to override default flags set by the +operator, or pass additional flags to vtctld. All entries must be +key-value string pairs of the form “flag”: “value”. The flag name should +not have any prefix (just “flag”, not “-flag”). To set a boolean flag, +set the string value to either “true” or “false”. + |
+
+extraEnv
+
+
+[]Kubernetes core/v1.EnvVar
+
+
+ |
+
+ ExtraEnv can optionally be used to override default environment variables +set by the operator, or pass additional environment variables. + |
+
+extraVolumes
+
+
+[]Kubernetes core/v1.Volume
+
+
+ |
+
+ ExtraVolumes can optionally be used to override default Pod volumes +defined by the operator, or provide additional volumes to the Pod. +Note that when adding a new volume, you should usually also add a +volumeMount to specify where in each container’s filesystem the volume +should be mounted. + |
+
+extraVolumeMounts
+
+
+[]Kubernetes core/v1.VolumeMount
+
+
+ |
+
+ ExtraVolumeMounts can optionally be used to override default Pod +volumeMounts defined by the operator, or specify additional mounts. +Typically, these are used to mount volumes defined through extraVolumes. + |
+
+initContainers
+
+
+[]Kubernetes core/v1.Container
+
+
+ |
+
+ InitContainers can optionally be used to supply extra init containers +that will be run to completion one after another before any app containers are started. + |
+
+sidecarContainers
+
+
+[]Kubernetes core/v1.Container
+
+
+ |
+
+ SidecarContainers can optionally be used to supply extra containers +that run alongside the main containers. + |
+
+affinity
+
+
+Kubernetes core/v1.Affinity
+
+
+ |
+
+ Affinity allows you to set rules that constrain the scheduling of +your vtctld pods. WARNING: These affinity rules will override all default affinities +that we set; in turn, we can’t guarantee optimal scheduling of your pods if you +choose to set this field. + |
+
+annotations
+
+map[string]string
+
+ |
+
+ Annotations can optionally be used to attach custom annotations to Pods +created for this component. These will be attached to the underlying +Pods that the vtctld Deployment creates. + |
+
+extraLabels
+
+map[string]string
+
+ |
+
+ ExtraLabels can optionally be used to attach custom labels to Pods +created for this component. These will be attached to the underlying +Pods that the vtctld Deployment creates. + |
+
+service
+
+
+ServiceOverrides
+
+
+ |
+
+ Service can optionally be used to customize the vtctld Service. + |
+
+tolerations
+
+
+[]Kubernetes core/v1.Toleration
+
+
+ |
+
+ Tolerations allow you to schedule pods onto nodes with matching taints. + |
+
+(Appears on: +VitessClusterStatus) +
++
VitessDashboardStatus is a summary of the status of the vtctld deployment.
+ +Field | +Description | +
---|---|
+available
+
+
+Kubernetes core/v1.ConditionStatus
+
+
+ |
+
+ Available indicates whether the vtctld service has available endpoints. + |
+
+serviceName
+
+string
+
+ |
+
+ ServiceName is the name of the Service for this cluster’s vtctld. + |
+
+(Appears on: +VitessCellGatewaySpec) +
++
VitessGatewayAuthentication configures authentication for vtgate in this cell.
+ +Field | +Description | +
---|---|
+static
+
+
+VitessGatewayStaticAuthentication
+
+
+ |
+
+ Static configures vtgate to use a static file containing usernames and passwords. + |
+
+(Appears on: +VitessCellGatewaySpec) +
++
VitessGatewaySecureTransport configures secure transport connections for vtgate.
+ +Field | +Description | +
---|---|
+required
+
+bool
+
+ |
+
+ Required configures vtgate to reject non-secure transport connections. +Applies only to MySQL protocol connections. +All GRPC transport is required to be encrypted when certs are set. + |
+
+tls
+
+
+VitessGatewayTLSSecureTransport
+
+
+ |
+
+ TLS configures vtgate to use TLS encrypted transport. + |
+
+(Appears on: +VitessGatewayAuthentication) +
++
VitessGatewayStaticAuthentication configures static file authentication for vtgate.
+ +Field | +Description | +
---|---|
+secret
+
+
+SecretSource
+
+
+ |
+
+ Secret configures vtgate to load the static auth file from a given key in a given Secret. + |
+
+(Appears on: +VitessGatewaySecureTransport) +
++
VitessGatewayAuthentication configures authentication for vtgate in this cell.
+ +Field | +Description | +
---|---|
+clientCACertSecret
+
+
+SecretSource
+
+
+ |
+
+ ClientCACertSecret configures vtgate to load the TLS certificate authority PEM file from a given key in a given Secret. +If specified, checks client certificates are signed by this CA certificate. +Optional. + |
+
+certSecret
+
+
+SecretSource
+
+
+ |
+
+ CertSecret configures vtgate to load the TLS cert PEM file from a given key in a given Secret. + |
+
+keySecret
+
+
+SecretSource
+
+
+ |
+
+ KeySecret configures vtgate to load the TLS key PEM file from a given key in a given Secret. + |
+
+(Appears on: +VitessCellSpec, +VitessClusterSpec, +VitessKeyspaceSpec, +VitessShardSpec) +
++
VitessImagePullPolicies specifies container image pull policies to use for Vitess components.
+ +Field | +Description | +
---|---|
+vtctld
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vtctld is the container image pull policy to use for Vitess Dashboard instances. + |
+
+vtadmin
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vtadmin is the container image pull policy to use for Vtadmin instances. + |
+
+vtorc
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vtorc is the container image pull policy to use for Vitess Orchestrator instances. + |
+
+vtgate
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vtgate is the container image pull policy to use for Vitess Gateway instances. + |
+
+vttablet
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vttablet is the container image pull policy to use for Vitess Tablet instances. + |
+
+vtbackup
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Vtbackup is the container image pull policy to use for Vitess Backup jobs. + |
+
+mysqld
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ Mysqld is the container image pull policy to use for mysqld. + |
+
+mysqldExporter
+
+
+Kubernetes core/v1.PullPolicy
+
+
+ |
+
+ MysqldExporter is the container image pull policy to use for mysqld-exporter. + |
+
+(Appears on: +VitessClusterSpec) +
++
VitessImages specifies container images to use for Vitess components.
+ +Field | +Description | +
---|---|
+vtctld
+
+string
+
+ |
+
+ Vtctld is the container image (including version tag) to use for Vitess Dashboard instances. + |
+
+vtadmin
+
+string
+
+ |
+
+ Vtadmin is the container image (including version tag) to use for Vitess Admin instances. + |
+
+vtorc
+
+string
+
+ |
+
+ Vtorc is the container image (including version tag) to use for Vitess Orchestrator instances. + |
+
+vtgate
+
+string
+
+ |
+
+ Vtgate is the container image (including version tag) to use for Vitess Gateway instances. + |
+
+vttablet
+
+string
+
+ |
+
+ Vttablet is the container image (including version tag) to use for Vitess Tablet instances. + |
+
+vtbackup
+
+string
+
+ |
+
+ Vtbackup is the container image (including version tag) to use for Vitess Backup jobs. + |
+
+mysqld
+
+
+MysqldImage
+
+
+ |
+
+ Mysqld specifies the container image to use for mysqld, as well as +declaring which MySQL flavor setting in Vitess the image is +compatible with. Only one flavor image may be provided at a time. +mysqld running alongside each tablet. + |
+
+mysqldExporter
+
+string
+
+ |
+
+ MysqldExporter specifies the container image to use for mysqld-exporter. + |
+
+(Appears on: +VitessKeyspaceKeyRangeShard, +VitessShardSpec) +
++
VitessKeyRange specifies a range of keyspace IDs.
+ +Field | +Description | +
---|---|
+start
+
+string
+
+ |
+
+ Start is a lowercase hexadecimal string representation of an arbitrary-length sequence of bytes. +If Start is the empty string, the key range is unbounded at the bottom. +If Start is not empty, the bytes of a keyspace ID must compare greater +than or equal to Start in lexicographical order to be in the range. + |
+
+end
+
+string
+
+ |
+
+ End is a lowercase hexadecimal string representation of an arbitrary-length sequence of bytes. +If End is the empty string, the key range is unbounded at the top. +If End is not empty, the bytes of a keyspace ID must compare strictly less than End in +lexicographical order to be in the range. + |
+
+
VitessKeyspace represents the deployment of a logical database in Vitess. +Each keyspace consists of a number of shards, which then consist of tablets. +The tablets belonging to one VitessKeyspace can ultimately be deployed across +various VitessCells.
+ +Field | +Description | +||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+metadata
+
+
+Kubernetes meta/v1.ObjectMeta
+
+
+ |
+
+Refer to the Kubernetes API documentation for the fields of the
+metadata field.
+ |
+||||||||||||||||||||||
+spec
+
+
+VitessKeyspaceSpec
+
+
+ |
+
+ + +
|
+||||||||||||||||||||||
+status
+
+
+VitessKeyspaceStatus
+
+
+ |
++ | +
+(Appears on: +VitessKeyspaceStatus) +
++
VitessKeyspaceCondition contains details for the current condition of this VitessKeyspace.
+ +Field | +Description | +
---|---|
+type
+
+
+VitessKeyspaceConditionType
+
+
+ |
+
+ Type is the type of the condition. + |
+
+status
+
+
+Kubernetes core/v1.ConditionStatus
+
+
+ |
+
+ Status is the status of the condition. +Can be True, False, Unknown. + |
+
+lastTransitionTime
+
+
+Kubernetes meta/v1.Time
+
+
+ |
+
+ Last time the condition transitioned from one status to another. +Optional. + |
+
+reason
+
+string
+
+ |
+
+ Unique, one-word, PascalCase reason for the condition’s last transition. +Optional. + |
+
+message
+
+string
+
+ |
+
+ Human-readable message indicating details about last transition. +Optional. + |
+
string
alias)+(Appears on: +VitessKeyspaceCondition) +
++
VitessKeyspaceConditionType is a valid value for the key of a VitessKeyspaceCondition map where the key is a +VitessKeyspaceConditionType and the value is a VitessKeyspaceCondition.
+ ++(Appears on: +VitessKeyspacePartitioning) +
++
VitessKeyspaceCustomPartitioning lets you explicitly specify the key range of every shard.
+ +Field | +Description | +
---|---|
+shards
+
+
+[]VitessKeyspaceKeyRangeShard
|
- Tolerations allow you to schedule pods onto nodes with matching taints. +Shards is a list of explicit shard specifications. |
(Appears on: -VitessClusterStatus) +VitessKeyspacePartitioning)
-
VitessDashboardStatus is a summary of the status of the vtctld deployment.
+VitessKeyspaceEqualPartitioning splits the keyspace into some number of equal parts.
-available + parts
-
-Kubernetes core/v1.ConditionStatus
-
+int32
|
- Available indicates whether the vtctld service has available endpoints. +Parts is the number of equal parts to split the keyspace into. +If you need shards that are not equal-sized, use custom partitioning instead. +Note that if the number of parts is not a power of 2, the key ranges will +only be roughly equal in size. +WARNING: DO NOT change the number of parts in a partitioning after deploying. +That’s effectively deleting the old partitioning and adding a new one, +which can lead to downtime or data loss. Instead, add an additional +partitioning with the desired number of parts, perform a resharding +migration, and then remove the old partitioning. |
-serviceName + shardTemplate
-string
+
+VitessShardTemplate
+
|
- ServiceName is the name of the Service for this cluster’s vtctld. +ShardTemplate is the configuration used for each equal-sized shard. +If you need shards that don’t all share the same configuration, +use custom partitioning instead. |
(Appears on: -VitessCellGatewaySpec) +VitessKeyspaceSpec, +VitessShardSpec)
-
VitessGatewayAuthentication configures authentication for vtgate in this cell.
+VitessKeyspaceImages specifies container images to use for this keyspace.
-static + vttablet
-
-VitessGatewayStaticAuthentication
-
+string
|
- Static configures vtgate to use a static file containing usernames and passwords. +Vttablet is the container image (including version tag) to use for Vitess Tablet instances. |
-(Appears on: -VitessCellGatewaySpec) -
--
VitessGatewaySecureTransport configures secure transport connections for vtgate.
- -Field | -Description | +
+vtorc
+
+string
+
+ |
+
+ Vtorc is the container image (including version tag) to use for Vitess Orchestrator instances. + |
---|---|---|---|
-required + vtbackup
-bool
+string
|
- Required configures vtgate to reject non-secure transport connections. -Applies only to MySQL protocol connections. -All GRPC transport is required to be encrypted when certs are set. +Vtbackup is the container image (including version tag) to use for Vitess Backup jobs. |
||
-tls + mysqld
-
-VitessGatewayTLSSecureTransport
+
+MysqldImage
|
- TLS configures vtgate to use TLS encrypted transport. +Mysqld specifies the container image to use for mysqld, as well as +declaring which MySQL flavor setting in Vitess the image is +compatible with. Only one flavor image may be provided at a time. +mysqld running alongside each tablet. + |
+||
+mysqldExporter
+
+string
+
+ |
+
+ MysqldExporter specifies the container image for mysqld-exporter. |
(Appears on: -VitessGatewayAuthentication) +VitessKeyspaceCustomPartitioning)
-
VitessGatewayStaticAuthentication configures static file authentication for vtgate.
+VitessKeyspaceKeyRangeShard defines a shard based on a key range.
-secret + keyRange
-
-SecretSource
+
+VitessKeyRange
|
- Secret configures vtgate to load the static auth file from a given key in a given Secret. +KeyRange is the range of keys that this shard serves. +WARNING: DO NOT change the key range of a shard after deploying. +That’s effectively deleting the old shard and adding a new one, +which can lead to downtime or data loss. Instead, add an additional +partitioning with the desired set of shards, perform a resharding +migration, and then remove the old partitioning. + |
+
+VitessShardTemplate
+
+
+VitessShardTemplate
+
+
+ |
+
+
+(Members of VitessShardTemplate is the configuration for the shard. |
(Appears on: -VitessGatewaySecureTransport) +VitessKeyspaceTemplate)
-
VitessGatewayAuthentication configures authentication for vtgate in this cell.
+VitessKeyspacePartitioning defines a set of shards by dividing the keyspace into key ranges. +Each field is a different method of dividing the keyspace. Only one field should be set on +a given partitioning.
-clientCACertSecret - - -SecretSource - - - |
-
- ClientCACertSecret configures vtgate to load the TLS certificate authority PEM file from a given key in a given Secret. -If specified, checks client certificates are signed by this CA certificate. -Optional. - |
-
-certSecret + equal
-
-SecretSource
+
+VitessKeyspaceEqualPartitioning
|
- CertSecret configures vtgate to load the TLS cert PEM file from a given key in a given Secret. +Equal partitioning splits the keyspace into some number of equal parts, +assuming that the keyspace IDs are uniformly distributed, for example +because they’re generated by a hash vindex. |
-keySecret + custom
-
-SecretSource
+
+VitessKeyspaceCustomPartitioning
|
- KeySecret configures vtgate to load the TLS key PEM file from a given key in a given Secret. +Custom partitioning lets you explicitly specify the key range of every shard, +in case you don’t want them to be divided equally. |
(Appears on: -VitessCellSpec, -VitessClusterSpec, -VitessKeyspaceSpec, -VitessShardSpec) +VitessKeyspaceStatus)
-
VitessImagePullPolicies specifies container image pull policies to use for Vitess components.
+VitessKeyspacePartitioningStatus aggregates status for all shards in a given partitioning.
-vtctld + shardNames
-
-Kubernetes core/v1.PullPolicy
-
+[]string
|
- Vtctld is the container image pull policy to use for Vitess Dashboard instances. +ShardNames is a sorted list of shards in this partitioning, +in the format Vitess uses for shard names. |
-vtgate + servingWrites
-
-Kubernetes core/v1.PullPolicy
+
+Kubernetes core/v1.ConditionStatus
|
- Vtgate is the container image pull policy to use for Vitess Gateway instances. +ServingWrites is a condition indicating whether all shards in this +partitioning are serving writes for their key ranges. +Note that False only means not all shards are serving writes; it’s still +possible that some shards in this partitioning are serving writes. +Check the per-shard status for full details. |
-vttablet + desiredTablets
-
-Kubernetes core/v1.PullPolicy
-
+int32
|
- Vttablet is the container image pull policy to use for Vitess Tablet instances. +DesiredTablets is the number of desired tablets. This is computed from +information that’s already available in the spec, but clients should +use this value instead of trying to compute shard partitionings on their +own. |
-vtbackup + tablets
-
-Kubernetes core/v1.PullPolicy
-
+int32
|
- Vtbackup is the container image pull policy to use for Vitess Backup jobs. +Tablets is the number of observed tablets. This could be higher or +lower than desiredTablets if the state has not yet converged. |
-mysqld + readyTablets
-
-Kubernetes core/v1.PullPolicy
-
+int32
|
- Mysqld is the container image pull policy to use for mysqld. +ReadyTablets is the number of desired tablets that are Ready. |
-mysqldExporter + updatedTablets
-
-Kubernetes core/v1.PullPolicy
-
+int32
|
- MysqldExporter is the container image pull policy to use for mysqld-exporter. +UpdatedTablets is the number of desired tablets that are up-to-date +(have no pending changes). + |
+
+desiredShards
+
+int32
+
+ |
+
+ DesiredShards is the number of desired shards. This is computed from +information that’s already available in the spec, but clients should +use this value instead of trying to compute shard partitionings on their +own. + |
+
+readyShards
+
+int32
+
+ |
+
+ ReadyShards is the number of desired shards that are Ready. |
(Appears on: -VitessClusterSpec) +VitessKeyspaceStatus)
-
VitessImages specifies container images to use for Vitess components.
+VitessKeyspaceShardStatus is the status of a shard within a keyspace.
-vtctld + hasMaster
-string
+
+Kubernetes core/v1.ConditionStatus
+
|
- Vtctld is the container image (including version tag) to use for Vitess Dashboard instances. +HasMaster is a condition indicating whether the Vitess topology +reflects a master for this shard. |
-vtgate + servingWrites
-string
+
+Kubernetes core/v1.ConditionStatus
+
|
- Vtgate is the container image (including version tag) to use for Vitess Gateway instances. +ServingWrites is a condition indicating whether this shard is the one +that serves writes for its key range, according to Vitess topology. +A shard might be deployed without serving writes if, for example, it is +the target of a resharding operation that is still in progress. |
-vttablet + desiredTablets
-string
+int32
|
- Vttablet is the container image (including version tag) to use for Vitess Tablet instances. +DesiredTablets is the number of desired tablets. This is computed from +information that’s already available in the spec, but clients should +use this value instead of trying to compute shard partitionings on their +own. |
-vtbackup + tablets
-string
+int32
|
- Vtbackup is the container image (including version tag) to use for Vitess Backup jobs. +Tablets is the number of observed tablets. This could be higher or +lower than desiredTablets if the state has not yet converged. |
-mysqld + readyTablets
-
-MysqldImage
-
+int32
|
- Mysqld specifies the container image to use for mysqld, as well as -declaring which MySQL flavor setting in Vitess the image is -compatible with. Only one flavor image may be provided at a time. -mysqld running alongside each tablet. +ReadyTablets is the number of desired tablets that are Ready. |
-mysqldExporter + updatedTablets
-string
+int32
|
- MysqldExporter specifies the container image to use for mysqld-exporter. +UpdatedTablets is the number of desired tablets that are up-to-date +(have no pending changes). |
-(Appears on: -VitessKeyspaceKeyRangeShard, -VitessShardSpec) -
--
VitessKeyRange specifies a range of keyspace IDs.
- -Field | -Description | -
---|---|
-start + pendingChanges
string
|
- Start is a lowercase hexadecimal string representation of an arbitrary-length sequence of bytes. -If Start is the empty string, the key range is unbounded at the bottom. -If Start is not empty, the bytes of a keyspace ID must compare greater -than or equal to Start in lexicographical order to be in the range. +PendingChanges describes changes to the shard that will be applied +the next time a rolling update allows. |
-end + cells
-string
+[]string
|
- End is a lowercase hexadecimal string representation of an arbitrary-length sequence of bytes. -If End is the empty string, the key range is unbounded at the top. -If End is not empty, the bytes of a keyspace ID must compare strictly less than End in -lexicographical order to be in the range. +Cells is a list of cells in which any tablets for this shard are deployed. |
-
VitessKeyspace represents the deployment of a logical database in Vitess. -Each keyspace consists of a number of shards, which then consist of tablets. -The tablets belonging to one VitessKeyspace can ultimately be deployed across -various VitessCells.
+(Appears on: +VitessKeyspace) + ++
VitessKeyspaceSpec defines the desired state of a VitessKeyspace.
-metadata - - -Kubernetes meta/v1.ObjectMeta - - - |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||||||
-spec - - -VitessKeyspaceSpec - - - |
-
- - -
|
-||||||||||||
-status - - -VitessKeyspaceStatus - - - |
-- | -
(Appears on: -VitessKeyspaceStatus) +VitessKeyspace)
-
VitessKeyspaceCondition contains details for the current condition of this VitessKeyspace.
+VitessKeyspaceStatus defines the observed state of a VitessKeyspace.
-type + observedGeneration
-
-VitessKeyspaceConditionType
-
+int64
|
- Type is the type of the condition. +The generation observed by the controller. |
-status + shards
-
-Kubernetes core/v1.ConditionStatus
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessKeyspaceShardStatus
|
- Status is the status of the condition. -Can be True, False, Unknown. +Shards is a summary of the status of all desired shards. |
-lastTransitionTime + partitionings
-
-Kubernetes meta/v1.Time
+
+[]VitessKeyspacePartitioningStatus
|
- Last time the condition transitioned from one status to another. -Optional. +Partitionings is an aggregation of status for all shards in each partitioning. |
-reason + orphanedShards
-string
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
|
- Unique, one-word, PascalCase reason for the condition’s last transition. -Optional. +OrphanedShards is a list of unwanted shards that could not be turned down. |
-message + idle
-string
+
+Kubernetes core/v1.ConditionStatus
+
|
- Human-readable message indicating details about last transition. -Optional. +Idle is a condition indicating whether the keyspace can be turned down. +If Idle is True, the keyspace is not deployed in any cells, so it should +be safe to turn down the keyspace. |
string
alias)-(Appears on: -VitessKeyspaceCondition) -
--
VitessKeyspaceConditionType is a valid value for the key of a VitessKeyspaceCondition map where the key is a -VitessKeyspaceConditionType and the value is a VitessKeyspaceCondition.
- --(Appears on: -VitessKeyspacePartitioning) -
--
VitessKeyspaceCustomPartitioning lets you explicitly specify the key range of every shard.
- -Field | -Description | +
+resharding
+
+
+ReshardingStatus
+
+
+ |
+
+ ReshardingStatus provides information about an active resharding operation, if any. +This field is only present if the ReshardingActive condition is True. If that condition is Unknown, +it means the operator was unable to query resharding status from Vitess. + |
---|---|---|---|
-shards + conditions
-
-[]VitessKeyspaceKeyRangeShard
+
+[]VitessKeyspaceCondition
|
- Shards is a list of explicit shard specifications. +Conditions is a list of all VitessKeyspace specific conditions we want to set and monitor. +It’s ok for multiple controllers to add conditions here, and those conditions will be preserved. |
(Appears on: -VitessKeyspacePartitioning) +VitessClusterSpec, +VitessKeyspaceSpec)
-
VitessKeyspaceEqualPartitioning splits the keyspace into some number of equal parts.
+VitessKeyspaceTemplate contains only the user-specified parts of a VitessKeyspace object.
-parts - -int32 - - |
-
- Parts is the number of equal parts to split the keyspace into. -If you need shards that are not equal-sized, use custom partitioning instead. -Note that if the number of parts is not a power of 2, the key ranges will -only be roughly equal in size. -WARNING: DO NOT change the number of parts in a partitioning after deploying. -That’s effectively deleting the old partitioning and adding a new one, -which can lead to downtime or data loss. Instead, add an additional -partitioning with the desired number of parts, perform a resharding -migration, and then remove the old partitioning. - |
-
-shardTemplate + name
-
-VitessShardTemplate
-
+string
|
-
- ShardTemplate is the configuration used for each equal-sized shard. -If you need shards that don’t all share the same configuration, -use custom partitioning instead. - |
-
-(Appears on: -VitessKeyspaceSpec, -VitessShardSpec) -
--
VitessKeyspaceImages specifies container images to use for this keyspace.
- -Field | -Description | +
+ Name is the keyspace name as it should be provided to Vitess. +Note that this is different from the VitessKeyspace object’s +metadata.name, which is generated by the operator. +WARNING: DO NOT change the name of a keyspace that was already deployed. +Keyspaces cannot be renamed, so this will be interpreted as an +instruction to delete the old keyspace and create a new one. + |
---|---|---|
-vttablet + databaseName
string
|
- Vttablet is the container image (including version tag) to use for Vitess Tablet instances. +DatabaseName is the name to use for the underlying, physical MySQL +database created to hold data for the keyspace. +This name is mostly hidden from Vitess clients, which should see and use +only the keyspace name as a logical database. However, you may want to +set this to control the name used by clients that bypass Vitess and +connect directly to the underlying MySQL, such as certain DBA tools. +The default, when the field is either left unset or set to empty string, +is to add a “vt_” prefix to the keyspace name since that has historically +been the default in Vitess itself. However, it’s often preferable to set +this to be the same as the keyspace name to reduce confusion. +Default: Add a “vt_” prefix to the keyspace name. |
|
-vtbackup + durabilityPolicy
string
|
- Vtbackup is the container image (including version tag) to use for Vitess Backup jobs. +DurabilityPolicy is the name of the durability policy to use for the keyspace. +If unspecified, vtop will not set the durability policy. |
|
-mysqld + vitessOrchestrator
-
-MysqldImage
+
+VitessOrchestratorSpec
|
- Mysqld specifies the container image to use for mysqld, as well as -declaring which MySQL flavor setting in Vitess the image is -compatible with. Only one flavor image may be provided at a time. -mysqld running alongside each tablet. +VitessOrchestrator deploys a set of Vitess Orchestrator (vtorc) servers for the Keyspace. +It is highly recommended that you set disable_active_reparents=true +for the vttablets if enabling vtorc. |
|
-mysqldExporter + partitionings
-string
+
+[]VitessKeyspacePartitioning
+
|
- MysqldExporter specifies the container image for mysqld-exporter. +Partitionings specify how to divide the keyspace up into shards by +defining the range of keyspace IDs that each shard contains. +For example, you might divide the keyspace into N equal-sized key ranges. +Note that this is distinct from defining how each row maps to a keyspace ID, +which is done in the VSchema. Partitioning is purely an operational concern +(scaling the infrastructure), while VSchema is an application-level concern +(modeling relationships between data). This separation of concerns allows +resharding to occur generically at the infrastructure level without any +knowledge of the data model. +Each partitioning must define a set of shards that fully covers the +space of all possible keyspace IDs; there can be no gaps between ranges. +There’s usually only one partitioning present at a time, but during +resharding, it’s necessary to launch the destination shards alongside +the source shards. When the resharding is complete, the old partitioning +can be removed, which will turn down (undeploy) any unneeded shards. +If only some shards are being split or joined during resharding, +the shards that aren’t changing must be specified in both partitionings, +although the common shards will be shared (only deployed once). +If the per-shard configuration differs, the configuration in the latter +partitioning (in the order listed in this field) will be used. +For this reason, it’s recommended to add new partitionings at the end, +and only remove partitionings from the beginning. +This field is required. An unsharded keyspace may be specified as a +partitioning into 1 part. |
-(Appears on: -VitessKeyspaceCustomPartitioning) -
--
VitessKeyspaceKeyRangeShard defines a shard based on a key range.
- -Field | -Description | +
+turndownPolicy
+
+
+VitessKeyspaceTurndownPolicy
+
+
+ |
+
+ TurndownPolicy specifies what should happen if this keyspace is ever +removed from the VitessCluster spec. By default, removing a keyspace +entry from the VitessCluster spec will NOT actually turn down the +deployed resources, unless it can be verified that the keyspace was +previously set to have 0 total desired tablets across all shards. +With this default policy (RequireIdle), before removing the keyspace +entry from the spec, you must first edit the keyspace entry to remove +all tablet pools from all shards, and wait for that change to roll out. +If a keyspace entry is removed too soon, the keyspace resources will +remain deployed indefinitely, and the keyspace will be listed in the +orphanedKeyspaces field of VitessCluster status. +This is a safety mechanism to prevent accidental edits to the cluster +object from having immediate, destructive consequences. If the cluster +spec is only ever edited by automation whose edits you trust to be safe, +you can set the policy to Immediate to skip these checks. +Default: RequireIdle + |
---|---|---|---|
-keyRange + annotations
-
-VitessKeyRange
-
+map[string]string
|
- KeyRange is the range of keys that this shard serves. -WARNING: DO NOT change the key range of a shard after deploying. -That’s effectively deleting the old shard and adding a new one, -which can lead to downtime or data loss. Instead, add an additional -partitioning with the desired set of shards, perform a resharding -migration, and then remove the old partitioning. +Annotations can optionally be used to attach custom annotations to the VitessKeyspace object. |
||
-VitessShardTemplate + images
-
-VitessShardTemplate
+
+VitessKeyspaceTemplateImages
|
-
-(Members of VitessShardTemplate is the configuration for the shard. +For special cases, users may specify per-VitessKeyspace images. An
+example: migrating from MySQL 5.7 to MySQL 8.0 via a |
(Appears on: VitessKeyspaceTemplate)
-
VitessKeyspacePartitioning defines a set of shards by dividing the keyspace into key ranges. -Each field is a different method of dividing the keyspace. Only one field should be set on -a given partitioning.
+VitessKeyspaceTemplateImages specifies user-definable container images to +use for this keyspace.
-equal - - -VitessKeyspaceEqualPartitioning - - - |
-
- Equal partitioning splits the keyspace into some number of equal parts, -assuming that the keyspace IDs are uniformly distributed, for example -because they’re generated by a hash vindex. - |
-
-custom + mysqld
-
-VitessKeyspaceCustomPartitioning
+
+MysqldImageNew
|
- Custom partitioning lets you explicitly specify the key range of every shard, -in case you don’t want them to be divided equally. +Mysqld specifies the container image to use for mysqld, as well as +declaring which MySQL flavor setting in Vitess the image is +compatible with. Only one flavor image may be provided at a time. +mysqld running alongside each tablet. |
string
alias)+(Appears on: +VitessKeyspaceTemplate) +
++
VitessKeyspaceTurndownPolicy is the policy for turning down a keyspace.
+ +(Appears on: -VitessKeyspaceStatus) +LockserverSpec, +VitessCellSpec, +VitessKeyspaceSpec, +VitessShardSpec)
-
VitessKeyspacePartitioningStatus aggregates status for all shards in a given partitioning.
+VitessLockserverParams contains only the values that Vitess needs +to connect to a given lockserver.
-shardNames - -[]string - - |
-
- ShardNames is a sorted list of shards in this partitioning, -in the format Vitess uses for shard names. - |
-
-servingWrites + implementation
-
-Kubernetes core/v1.ConditionStatus
-
+string
|
- ServingWrites is a condition indicating whether all shards in this -partitioning are serving writes for their key ranges. -Note that False only means not all shards are serving writes; it’s still -possible that some shards in this partitioning are serving writes. -Check the per-shard status for full details. +Implementation specifies which Vitess “topo” plugin to use. |
-desiredTablets + address
-int32
+string
|
- DesiredTablets is the number of desired tablets. This is computed from -information that’s already available in the spec, but clients should -use this value instead of trying to compute shard partitionings on their -own. +Address is the host:port of the lockserver client endpoint. |
-tablets + rootPath
-int32
+string
|
- Tablets is the number of observed tablets. This could be higher or -lower than desiredTablets if the state has not yet converged. +RootPath is a path prefix for all lockserver data belonging to a given Vitess cluster. +Multiple Vitess clusters can share a lockserver as long as they have unique root paths. |
+(Appears on: +VitessKeyspaceTemplate, +VitessShardSpec) +
++
VitessOrchestratorSpec specifies deployment parameters for vtorc.
+ +
-readyTablets - -int32 - - |
-
- ReadyTablets is the number of desired tablets that are Ready. - |
+Field | +Description |
---|---|---|---|
-updatedTablets + resources
-int32
+
+Kubernetes core/v1.ResourceRequirements
+
|
- UpdatedTablets is the number of desired tablets that are up-to-date -(have no pending changes). +Resources determines the compute resources reserved for each vtorc replica. |
||
-desiredShards + extraFlags
-int32
+map[string]string
|
- DesiredShards is the number of desired shards. This is computed from -information that’s already available in the spec, but clients should -use this value instead of trying to compute shard partitionings on their -own. +ExtraFlags can optionally be used to override default flags set by the +operator, or pass additional flags to vtorc. All entries must be +key-value string pairs of the form “flag”: “value”. The flag name should +not have any prefix (just “flag”, not “-flag”). To set a boolean flag, +set the string value to either “true” or “false”. |
||
-readyShards + extraEnv
-int32
+
+[]Kubernetes core/v1.EnvVar
+
|
- ReadyShards is the number of desired shards that are Ready. +ExtraEnv can optionally be used to override default environment variables +set by the operator, or pass additional environment variables. |
-(Appears on: -VitessKeyspaceStatus) -
--
VitessKeyspaceShardStatus is the status of a shard within a keyspace.
- -Field | -Description | +
+extraVolumes
+
+
+[]Kubernetes core/v1.Volume
+
+
+ |
+
+ ExtraVolumes can optionally be used to override default Pod volumes +defined by the operator, or provide additional volumes to the Pod. +Note that when adding a new volume, you should usually also add a +volumeMount to specify where in each container’s filesystem the volume +should be mounted. + |
---|---|---|---|
-hasMaster + extraVolumeMounts
-
-Kubernetes core/v1.ConditionStatus
+
+[]Kubernetes core/v1.VolumeMount
|
- HasMaster is a condition indicating whether the Vitess topology -reflects a master for this shard. +ExtraVolumeMounts can optionally be used to override default Pod +volumeMounts defined by the operator, or specify additional mounts. +Typically, these are used to mount volumes defined through extraVolumes. |
||
-servingWrites + initContainers
-
-Kubernetes core/v1.ConditionStatus
+
+[]Kubernetes core/v1.Container
|
- ServingWrites is a condition indicating whether this shard is the one -that serves writes for its key range, according to Vitess topology. -A shard might be deployed without serving writes if, for example, it is -the target of a resharding operation that is still in progress. +InitContainers can optionally be used to supply extra init containers +that will be run to completion one after another before any app containers are started. |
||
-desiredTablets + sidecarContainers
-int32
+
+[]Kubernetes core/v1.Container
+
|
- DesiredTablets is the number of desired tablets. This is computed from -information that’s already available in the spec, but clients should -use this value instead of trying to compute shard partitionings on their -own. +SidecarContainers can optionally be used to supply extra containers +that run alongside the main containers. |
||
-tablets + affinity
-int32
+
+Kubernetes core/v1.Affinity
+
|
- Tablets is the number of observed tablets. This could be higher or -lower than desiredTablets if the state has not yet converged. +Affinity allows you to set rules that constrain the scheduling of +your vtorc pods. WARNING: These affinity rules will override all default affinities +that we set; in turn, we can’t guarantee optimal scheduling of your pods if you +choose to set this field. |
||
-readyTablets + annotations
-int32
+map[string]string
|
- ReadyTablets is the number of desired tablets that are Ready. +Annotations can optionally be used to attach custom annotations to Pods +created for this component. These will be attached to the underlying +Pods that the vtorc Deployment creates. |
||
-updatedTablets + extraLabels
-int32
+map[string]string
|
- UpdatedTablets is the number of desired tablets that are up-to-date -(have no pending changes). +ExtraLabels can optionally be used to attach custom labels to Pods +created for this component. These will be attached to the underlying +Pods that the vtorc Deployment creates. |
||
-pendingChanges + service
-string
+
+ServiceOverrides
+
|
- PendingChanges describes changes to the shard that will be applied -the next time a rolling update allows. +Service can optionally be used to customize the vtorc Service. |
||
-cells + tolerations
-[]string
+
+[]Kubernetes core/v1.Toleration
+
|
- Cells is a list of cells in which any tablets for this shard are deployed. +Tolerations allow you to schedule pods onto nodes with matching taints. |
(Appears on: -VitessKeyspace) +VitessShardStatus)
-
VitessKeyspaceSpec defines the desired state of a VitessKeyspace.
+VitessOrchestratorStatus is a summary of the status of the vtorc deployment.
-VitessKeyspaceTemplate + available
-
-VitessKeyspaceTemplate
+
+Kubernetes core/v1.ConditionStatus
|
-
-(Members of VitessKeyspaceTemplate contains the user-specified parts of VitessKeyspaceSpec. -These are the parts that are configurable inside VitessCluster. -The rest of the fields below are filled in by the parent controller. +Available indicates whether the vtctld service has available endpoints. |
-globalLockserver + serviceName
-
-VitessLockserverParams
-
+string
|
- GlobalLockserver are the params to connect to the global lockserver. +ServiceName is the name of the Service for this cluster’s vtorc. |
+(Appears on: +VitessShardTemplate) +
++
VitessReplicationSpec specifies how Vitess will set up MySQL replication.
+ +
-images - - -VitessKeyspaceImages - - - |
-
- Images are not customizable by users at the keyspace level because version -skew across the cluster is discouraged except during rolling updates, -in which case this field is automatically managed by the VitessCluster -controller that owns this VitessKeyspace. - |
+Field | +Description |
---|---|---|---|
-imagePullPolicies + initializeMaster
-
-VitessImagePullPolicies
-
+bool
|
- ImagePullPolicies are inherited from the VitessCluster spec. +InitializeMaster specifies whether to choose an initial master for a +new or restored shard that has no master yet. +Default: true. |
||
-imagePullSecrets + initializeBackup
-
-[]Kubernetes core/v1.LocalObjectReference
-
+bool
|
- ImagePullSecrets are inherited from the VitessCluster spec. +InitializeBackup specifies whether to take an initial placeholder backup +as part of preparing tablets to begin replication. This only takes effect +if a backup location is defined in the VitessCluster. +Default: true. |
||
-zoneMap + recoverRestartedMaster
-map[string]string
+bool
|
- ZoneMap is a map from Vitess cell name to zone (failure domain) name -for all cells defined in the VitessCluster. +RecoverRestartedMaster specifies whether the operator attempts to repair +replication when the master MySQL restarts in-place (due to a crash) or +its Pod gets deleted and recreated, causing the Pod IP to change. +Default: true. |
+
VitessShard represents a group of Vitess instances (tablets) that store a subset +of the data in a logical database (keyspace).
+The tablets belonging to one VitessShard can ultimately be deployed across +various VitessCells. All the tablets in a given shard, across all cells, +use MySQL replication to stay eventually consistent with the MySQL master +for that shard.
+ +
-backupLocations - - -[]VitessBackupLocation - - - |
-
- BackupLocations are the backup locations defined in the VitessCluster. - |
+Field | +Description |
---|---|---|---|
-backupEngine + metadata
-
-VitessBackupEngine
+
+Kubernetes meta/v1.ObjectMeta
|
- BackupEngine specifies the Vitess backup engine to use, either “builtin” or “xtrabackup”. - |
-||
-extraVitessFlags - -map[string]string - - |
-
- ExtraVitessFlags is inherited from the parent’s VitessClusterSpec. +Refer to the Kubernetes API documentation for the fields of the +metadata field.
|
||
-topologyReconciliation + spec
-
-TopoReconcileConfig
+
+VitessShardSpec
|
- TopologyReconciliation is inherited from the parent’s VitessClusterSpec. - |
-
-updateStrategy + VitessShardTemplate
-
-VitessClusterUpdateStrategy
+
+VitessShardTemplate
|
- UpdateStrategy is inherited from the parent’s VitessClusterSpec. - |
-
-(Appears on: -VitessKeyspace) -
--
VitessKeyspaceStatus defines the observed state of a VitessKeyspace.
+(Members ofVitessShardTemplate
are embedded into this type.)
-Field | -Description | +
---|---|
-observedGeneration + name
-int64
+string
|
- The generation observed by the controller. +Name is the shard name as it’s known to Vitess. |
-shards + databaseName
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessKeyspaceShardStatus
-
+string
|
- Shards is a summary of the status of all desired shards. +DatabaseName is the name to use for the underlying MySQL database. +It is inherited from the parent keyspace, so it can only be configured at +the keyspace level. |
-partitionings + zoneMap
-
-[]VitessKeyspacePartitioningStatus
-
+map[string]string
|
- Partitionings is an aggregation of status for all shards in each partitioning. +ZoneMap is a map from Vitess cell name to zone (failure domain) name +for all cells defined in the VitessCluster. |
-orphanedShards + images
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+VitessKeyspaceImages
|
- OrphanedShards is a list of unwanted shards that could not be turned down. +Images are not customizable by users at the shard level because version +skew across the shard is discouraged except during rolling updates, +in which case this field is automatically managed by the VitessKeyspace +controller that owns this VitessShard. |
-idle + imagePullPolicies
-
-Kubernetes core/v1.ConditionStatus
+
+VitessImagePullPolicies
|
- Idle is a condition indicating whether the keyspace can be turned down. -If Idle is True, the keyspace is not deployed in any cells, so it should -be safe to turn down the keyspace. +ImagePullPolicies are inherited from the VitessCluster spec. |
-resharding + imagePullSecrets
-
-ReshardingStatus
+
+[]Kubernetes core/v1.LocalObjectReference
|
- ReshardingStatus provides information about an active resharding operation, if any. -This field is only present if the ReshardingActive condition is True. If that condition is Unknown, -it means the operator was unable to query resharding status from Vitess. +ImagePullSecrets are inherited from the VitessCluster spec. |
-conditions + keyRange
-
-[]VitessKeyspaceCondition
+
+VitessKeyRange
|
- Conditions is a list of all VitessKeyspace specific conditions we want to set and monitor. -It’s ok for multiple controllers to add conditions here, and those conditions will be preserved. +KeyRange is the range of keyspace IDs served by this shard. |
-(Appears on: -VitessClusterSpec, -VitessKeyspaceSpec) -
--
VitessKeyspaceTemplate contains only the user-specified parts of a VitessKeyspace object.
- -Field | -Description | -
---|---|
-name + globalLockserver
-string
+
+VitessLockserverParams
+
|
- Name is the keyspace name as it should be provided to Vitess. -Note that this is different from the VitessKeyspace object’s -metadata.name, which is generated by the operator. -WARNING: DO NOT change the name of a keyspace that was already deployed. -Keyspaces cannot be renamed, so this will be interpreted as an -instruction to delete the old keyspace and create a new one. +GlobalLockserver are the params to connect to the global lockserver. |
-databaseName + vitessOrchestrator
-string
+
+VitessOrchestratorSpec
+
|
- DatabaseName is the name to use for the underlying, physical MySQL -database created to hold data for the keyspace. -This name is mostly hidden from Vitess clients, which should see and use -only the keyspace name as a logical database. However, you may want to -set this to control the name used by clients that bypass Vitess and -connect directly to the underlying MySQL, such as certain DBA tools. -The default, when the field is either left unset or set to empty string, -is to add a “vt_” prefix to the keyspace name since that has historically -been the default in Vitess itself. However, it’s often preferable to set -this to be the same as the keyspace name to reduce confusion. -Default: Add a “vt_” prefix to the keyspace name. +VitessOrchestrator is inherited from the parent’s VitessKeyspace. |
-partitionings + backupLocations
-
-[]VitessKeyspacePartitioning
+
+[]VitessBackupLocation
|
- Partitionings specify how to divide the keyspace up into shards by -defining the range of keyspace IDs that each shard contains. -For example, you might divide the keyspace into N equal-sized key ranges. -Note that this is distinct from defining how each row maps to a keyspace ID, -which is done in the VSchema. Partitioning is purely an operational concern -(scaling the infrastructure), while VSchema is an application-level concern -(modeling relationships between data). This separation of concerns allows -resharding to occur generically at the infrastructure level without any -knowledge of the data model. -Each partitioning must define a set of shards that fully covers the -space of all possible keyspace IDs; there can be no gaps between ranges. -There’s usually only one partitioning present at a time, but during -resharding, it’s necessary to launch the destination shards alongside -the source shards. When the resharding is complete, the old partitioning -can be removed, which will turn down (undeploy) any unneeded shards. -If only some shards are being split or joined during resharding, -the shards that aren’t changing must be specified in both partitionings, -although the common shards will be shared (only deployed once). -If the per-shard configuration differs, the configuration in the latter -partitioning (in the order listed in this field) will be used. -For this reason, it’s recommended to add new partitionings at the end, -and only remove partitionings from the beginning. -This field is required. An unsharded keyspace may be specified as a -partitioning into 1 part. +BackupLocations are the backup locations defined in the VitessCluster. |
-turndownPolicy + backupEngine
-
-VitessKeyspaceTurndownPolicy
+
+VitessBackupEngine
|
- TurndownPolicy specifies what should happen if this keyspace is ever -removed from the VitessCluster spec. By default, removing a keyspace -entry from the VitessCluster spec will NOT actually turn down the -deployed resources, unless it can be verified that the keyspace was -previously set to have 0 total desired tablets across all shards. -With this default policy (RequireIdle), before removing the keyspace -entry from the spec, you must first edit the keyspace entry to remove -all tablet pools from all shards, and wait for that change to roll out. -If a keyspace entry is removed too soon, the keyspace resources will -remain deployed indefinitely, and the keyspace will be listed in the -orphanedKeyspaces field of VitessCluster status. -This is a safety mechanism to prevent accidental edits to the cluster -object from having immediate, destructive consequences. If the cluster -spec is only ever edited by automation whose edits you trust to be safe, -you can set the policy to Immediate to skip these checks. -Default: RequireIdle +BackupEngine specifies the Vitess backup engine to use, either “builtin” or “xtrabackup”. |
-annotations + extraVitessFlags
map[string]string
|
- Annotations can optionally be used to attach custom annotations to the VitessKeyspace object. +ExtraVitessFlags is inherited from the parent’s VitessClusterSpec. |
string
alias)-(Appears on: -VitessKeyspaceTemplate) -
--
VitessKeyspaceTurndownPolicy is the policy for turning down a keyspace.
- --(Appears on: -LockserverSpec, -VitessCellSpec, -VitessKeyspaceSpec, -VitessShardSpec) -
--
VitessLockserverParams contains only the values that Vitess needs -to connect to a given lockserver.
- -Field | -Description | -
---|---|
-implementation + topologyReconciliation
-string
+
+TopoReconcileConfig
+
|
- Implementation specifies which Vitess “topo” plugin to use. +TopologyReconciliation is inherited from the parent’s VitessClusterSpec. |
-address + updateStrategy
-string
+
+VitessClusterUpdateStrategy
+
|
- Address is the host:port of the lockserver client endpoint. +UpdateStrategy is inherited from the parent’s VitessClusterSpec. + |
+
rootPath
status
-string
+
+VitessShardStatus
+
RootPath is a path prefix for all lockserver data belonging to a given Vitess cluster. -Multiple Vitess clusters can share a lockserver as long as they have unique root paths.
(Appears on: -VitessShardTemplate) +VitessShardStatus)
-
VitessReplicationSpec specifies how Vitess will set up MySQL replication.
+VitessShardCondition contains details for the current condition of this VitessShard.
-enforceSemiSync + status
-bool
+
+Kubernetes core/v1.ConditionStatus
+
|
- EnforceSemiSync means Vitess will configure MySQL to require semi-sync -acknowledgement of all transactions while forbidding fallback to -asynchronous replication under any circumstance. -Note that this is different from merely enabling semi-sync, which in -its default configuration allows fallback to asynchronous replication -if no replicas are connected or if they don’t respond after a few seconds. -Enforced semi-sync is a mode that prefers master unavailability when -durability cannot be ensured, rather than risking the loss of data that -was already reported to clients as committed. -WARNING: Do not enable this if the shard has fewer than 3 master-eligible -replicas, as that may lead to master unavailability during routine -maintenance. -Default: Semi-sync is not enforced. +Status is the status of the condition. +Can be True, False, Unknown. |
-initializeMaster + lastTransitionTime
-bool
+
+Kubernetes meta/v1.Time
+
|
- InitializeMaster specifies whether to choose an initial master for a -new or restored shard that has no master yet. -Default: true. +Last time the condition transitioned from one status to another. +Optional. |
-initializeBackup + reason
-bool
+string
|
- InitializeBackup specifies whether to take an initial placeholder backup -as part of preparing tablets to begin replication. This only takes effect -if a backup location is defined in the VitessCluster. -Default: true. +Unique, one-word, PascalCase reason for the condition’s last transition. +Optional. |
-recoverRestartedMaster + message
-bool
+string
|
- RecoverRestartedMaster specifies whether the operator attempts to repair -replication when the master MySQL restarts in-place (due to a crash) or -its Pod gets deleted and recreated, causing the Pod IP to change. -Default: true. +Human-readable message indicating details about last transition. +Optional. |
string
alias)+
VitessShardConditionType is a valid value for the key of a VitessShardCondition map where the key is a +VitessShardConditionType and the value is a VitessShardCondition.
+ +-
VitessShard represents a group of Vitess instances (tablets) that store a subset -of the data in a logical database (keyspace).
-The tablets belonging to one VitessShard can ultimately be deployed across -various VitessCells. All the tablets in a given shard, across all cells, -use MySQL replication to stay eventually consistent with the MySQL master -for that shard.
+(Appears on: +VitessShard) + ++
VitessShardSpec defines the desired state of a VitessShard.
-metadata - - -Kubernetes meta/v1.ObjectMeta - - - |
-
-Refer to the Kubernetes API documentation for the fields of the
-metadata field.
- |
-||||||||||||||||
-spec - - -VitessShardSpec - - - |
-
- - -
|
-||||||||||||||||
-status - - -VitessShardStatus - - - |
-- | -
(Appears on: -VitessShardStatus) +VitessShard)
-
VitessShardCondition contains details for the current condition of this VitessShard.
+VitessShardStatus defines the observed state of a VitessShard.
-status + observedGeneration
+
+int64
+
+ |
+
+ The generation observed by the controller. + |
+
+tablets
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessTabletStatus
+
+
+ |
+
+ Tablets is a summary of the status of all desired tablets in the shard. + |
+
+orphanedTablets
+
+
+map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+
+ |
+
+ OrphanedTablets is a list of unwanted tablets that could not be turned down. + |
+
+cells
+
+[]string
+
+ |
+
+ Cells is a list of cells in which any tablets for this shard are deployed. + |
+
+vitessOrchestrator
+
+
+VitessOrchestratorStatus
+
+
+ |
+
+ VitessOrchestrator is a summary of the status of the vtorc deployment. + |
+
+hasMaster
Kubernetes core/v1.ConditionStatus
@@ -6054,64 +7578,122 @@ Kubernetes core/v1.ConditionStatus
|
- Status is the status of the condition. -Can be True, False, Unknown. +HasMaster is a condition indicating whether the Vitess topology +reflects a master for this shard. |
-lastTransitionTime + hasInitialBackup
-
-Kubernetes meta/v1.Time
+
+Kubernetes core/v1.ConditionStatus
|
- Last time the condition transitioned from one status to another. -Optional. +HasInitialBackup is a condition indicating whether the initial backup +has been seeded for the shard. |
-reason + servingWrites
-string
+
+Kubernetes core/v1.ConditionStatus
+
|
- Unique, one-word, PascalCase reason for the condition’s last transition. -Optional. +ServingWrites is a condition indicating whether this shard is the one +that serves writes for its key range, according to Vitess topology. +A shard might be deployed without serving writes if, for example, it is +the target of a resharding operation that is still in progress. + |
+
+idle
+
+
+Kubernetes core/v1.ConditionStatus
+
+
+ |
+
+ Idle is a condition indicating whether the shard can be turned down. +If Idle is True, the shard is not part of the active shard set +(partitioning) for any tablet type in any cell, so it should be safe +to turn down the shard. + |
+
+conditions
+
+
+map[planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessShardConditionType]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessShardCondition
+
+
+ |
+
+ Conditions is a map of all VitessShard specific conditions we want to set and monitor. +It’s ok for multiple controllers to add conditions here, and those conditions will be preserved. |
-message + masterAlias
string
|
- Human-readable message indicating details about last transition. -Optional. +MasterAlias is the tablet alias of the master according to the global +shard record. This could be empty either because there is no master, +or because the shard record could not be read. Check the HasMaster +condition whenever the distinction is important. + |
+
+backupLocations
+
+
+[]ShardBackupLocationStatus
+
+
+ |
+
+ BackupLocations reports information about the backups for this shard in +each backup location. + |
+
+lowestPodGeneration
+
+int64
+
+ |
+
+ LowestPodGeneration is the oldest VitessShard object generation seen across +all child Pods. The tablet information in VitessShard status is guaranteed to be +at least as up-to-date as this VitessShard generation. Changes made in +subsequent generations that affect tablets may not be reflected in status yet. |
string
alias)-
VitessShardConditionType is a valid value for the key of a VitessShardCondition map where the key is a -VitessShardConditionType and the value is a VitessShardCondition.
- -(Appears on: -VitessShard) +VitessShardTemplate)
-
VitessShardSpec defines the desired state of a VitessShard.
+VitessShardTabletPool defines a pool of tablets with a similar purpose.
-VitessShardTemplate + cell
-
-VitessShardTemplate
+string
+
+ |
+
+ Cell is the name of the Vitess cell in which to deploy this pool. + |
+
+type
+
+
+VitessTabletPoolType
|
-
-(Members of VitessShardTemplate contains the user-specified parts of VitessShardSpec. -These are the parts that are configurable inside VitessCluster. -The rest of the fields below are filled in by the parent controller. +Type is the type of tablet contained in this tablet pool. +The allowed types are: +
|
+
+name
+
+string
+
+ |
+
+ Name is the pool’s unique name within the (cell,type) pair. +This field is optional, and defaults to an empty. +Assigning different names to this field enables the existence of multiple pools with a specific tablet type in a given cell, +which can be beneficial for unmanaged tablets. +Hence, you must specify ExternalDatastore when assigning a name to this field. + |
+
+replicas
+
+int32
+
+ |
+
+ Replicas is the number of tablets to deploy in this pool. +This field is required, although it may be set to 0, +which will scale the pool down to 0 tablets. + |
+
+dataVolumeClaimTemplate
+
+
+Kubernetes core/v1.PersistentVolumeClaimSpec
+
+
+ |
+
+ DataVolumeClaimTemplate configures the PersistentVolumeClaims that will be created +for each tablet to store its database files. +This field is required for local MySQL, but should be omitted in the case of externally +managed MySQL. +IMPORTANT: For a tablet pool in a Kubernetes cluster that spans multiple
+zones, you should ensure that |
+
+backupLocationName
+
+string
+
+ |
+
+ BackupLocationName is the name of the backup location to use for this +tablet pool. It must match the name of one of the backup locations +defined in the VitessCluster. +Default: Use the backup location whose name is empty. + |
+
+vttablet
+
+
+VttabletSpec
+
+
+ |
+
+ Vttablet configures the vttablet server within each tablet. |
-name + mysqld
-string
+
+MysqldSpec
+
|
- Name is the shard name as it’s known to Vitess. +Mysqld configures a local MySQL running inside each tablet Pod. +You must specify either Mysqld or ExternalDatastore, but not both. |
-databaseName + mysqldExporter
-string
+
+MysqldExporterSpec
+
|
- DatabaseName is the name to use for the underlying MySQL database. -It is inherited from the parent keyspace, so it can only be configured at -the keyspace level. +MysqldExporter configures a MySQL exporter running inside each tablet Pod. |
-zoneMap + externalDatastore
-map[string]string
+
+ExternalDatastore
+
|
- ZoneMap is a map from Vitess cell name to zone (failure domain) name -for all cells defined in the VitessCluster. +ExternalDatastore provides information for an externally managed MySQL. +You must specify either Mysqld or ExternalDatastore, but not both. |
-images + affinity
-
-VitessKeyspaceImages
+
+Kubernetes core/v1.Affinity
|
- Images are not customizable by users at the shard level because version -skew across the shard is discouraged except during rolling updates, -in which case this field is automatically managed by the VitessKeyspace -controller that owns this VitessShard. +Affinity allows you to set rules that constrain the scheduling of +your vttablet pods. Affinity rules will affect all underlying +tablets in the specified tablet pool the same way. WARNING: These affinity rules +will override all default affinities that we set; in turn, we can’t guarantee +optimal scheduling of your pods if you choose to set this field. |
-imagePullPolicies + annotations
-
-VitessImagePullPolicies
-
+map[string]string
|
- ImagePullPolicies are inherited from the VitessCluster spec. +Annotations can optionally be used to attach custom annotations to Pods +created for this component. |
-imagePullSecrets + extraLabels
-
-[]Kubernetes core/v1.LocalObjectReference
-
+map[string]string
|
- ImagePullSecrets are inherited from the VitessCluster spec. +ExtraLabels can optionally be used to attach custom labels to Pods +created for this component. |
-keyRange + extraEnv
-
-VitessKeyRange
+
+[]Kubernetes core/v1.EnvVar
|
- KeyRange is the range of keyspace IDs served by this shard. +ExtraEnv can optionally be used to override default environment variables +set by the operator, or pass additional environment variables. +These values are applied to both the vttablet and mysqld containers. |
-globalLockserver + extraVolumes
-
-VitessLockserverParams
+
+[]Kubernetes core/v1.Volume
|
- GlobalLockserver are the params to connect to the global lockserver. +ExtraVolumes can optionally be used to override default Pod volumes +defined by the operator, or provide additional volumes to the Pod. +Note that when adding a new volume, you should usually also add a +volumeMount to specify where in each container’s filesystem the volume +should be mounted. +These volumes are available to be mounted by both vttablet and mysqld. |
-backupLocations + extraVolumeMounts
-
-[]VitessBackupLocation
+
+[]Kubernetes core/v1.VolumeMount
|
- BackupLocations are the backup locations defined in the VitessCluster. +ExtraVolumeMounts can optionally be used to override default Pod +volumeMounts defined by the operator, or specify additional mounts. +Typically, these are used to mount volumes defined through extraVolumes. +These values are applied to both the vttablet and mysqld containers. |
-backupEngine + initContainers
-
-VitessBackupEngine
+
+[]Kubernetes core/v1.Container
|
- BackupEngine specifies the Vitess backup engine to use, either “builtin” or “xtrabackup”. +InitContainers can optionally be used to supply extra init containers +that will be run to completion one after another before any app containers are started. |
-extraVitessFlags + sidecarContainers
-map[string]string
+
+[]Kubernetes core/v1.Container
+
|
- ExtraVitessFlags is inherited from the parent’s VitessClusterSpec. +SidecarContainers can optionally be used to supply extra containers +that run alongside the main containers. |
-topologyReconciliation + tolerations
-
-TopoReconcileConfig
+
+[]Kubernetes core/v1.Toleration
|
- TopologyReconciliation is inherited from the parent’s VitessClusterSpec. +Tolerations allow you to schedule pods onto nodes with matching taints. |
-updateStrategy + topologySpreadConstraints
-
-VitessClusterUpdateStrategy
+
+[]Kubernetes core/v1.TopologySpreadConstraint
|
- UpdateStrategy is inherited from the parent’s VitessClusterSpec. +TopologySpreadConstraint can optionally be used to +specify how to spread vttablet pods among the given topology |
(Appears on: -VitessShard) +VitessKeyspaceEqualPartitioning, +VitessKeyspaceKeyRangeShard, +VitessShardSpec)
-
VitessShardStatus defines the observed state of a VitessShard.
+VitessShardTemplate contains only the user-specified parts of a VitessShard object.
-observedGeneration + tabletPools
-int64
+
+[]VitessShardTabletPool
+
|
- The generation observed by the controller. +TabletPools specify groups of tablets in a given cell with a certain +tablet type and a shared configuration template. +There must be at most one pool in this list for each (cell,type,name) set. +Each shard must have at least one “replica” pool (in at least one cell) +in order to be able to serve. |
-tablets + databaseInitScriptSecret
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessTabletStatus
+
+SecretSource
|
- Tablets is a summary of the status of all desired tablets in the shard. +DatabaseInitScriptSecret specifies the init_db.sql script file to use for this shard. +This SQL script file is executed immediately after bootstrapping an empty database +to set up initial tables and other MySQL-level entities needed by Vitess. |
-orphanedTablets + replication
-
-map[string]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.OrphanStatus
+
+VitessReplicationSpec
|
- OrphanedTablets is a list of unwanted tablets that could not be turned down. +Replication configures Vitess replication settings for the shard. |
-cells + annotations
-[]string
+map[string]string
|
- Cells is a list of cells in which any tablets for this shard are deployed. +Annotations can optionally be used to attach custom annotations to the VitessShard object. |
string
alias)+(Appears on: +VitessShardTabletPool) +
++
VitessTabletPoolType represents the tablet types for which it makes sense +to deploy a dedicated pool. Tablet types that indicate temporary or +transient states are not valid pool types.
+ ++(Appears on: +VitessShardStatus) +
++
VitessTabletStatus is the status of one tablet in a shard.
+ +
-hasMaster - - -Kubernetes core/v1.ConditionStatus - - - |
-
- HasMaster is a condition indicating whether the Vitess topology -reflects a master for this shard. - |
+Field | +Description |
---|---|---|---|
-hasInitialBackup + poolType
-
-Kubernetes core/v1.ConditionStatus
-
+string
|
- HasInitialBackup is a condition indicating whether the initial backup -has been seeded for the shard. +PoolType is the target tablet type for the tablet pool. |
||
-servingWrites + index
-
-Kubernetes core/v1.ConditionStatus
-
+int32
|
- ServingWrites is a condition indicating whether this shard is the one -that serves writes for its key range, according to Vitess topology. -A shard might be deployed without serving writes if, for example, it is -the target of a resharding operation that is still in progress. +Index is the tablet’s index within its tablet pool. |
||
-idle + running
Kubernetes core/v1.ConditionStatus
@@ -6427,245 +8134,203 @@ Kubernetes core/v1.ConditionStatus
|
- Idle is a condition indicating whether the shard can be turned down. -If Idle is True, the shard is not part of the active shard set -(partitioning) for any tablet type in any cell, so it should be safe -to turn down the shard. +Running indicates whether the vttablet Pod is running. |
||
-conditions + ready
-
-map[planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessShardConditionType]planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.VitessShardCondition
+
+Kubernetes core/v1.ConditionStatus
|
- Conditions is a map of all VitessShard specific conditions we want to set and monitor. -It’s ok for multiple controllers to add conditions here, and those conditions will be preserved. - |
-||
-masterAlias - -string - - |
-
- MasterAlias is the tablet alias of the master according to the global -shard record. This could be empty either because there is no master, -or because the shard record could not be read. Check the HasMaster -condition whenever the distinction is important. +Ready indicates whether the vttablet Pod is passing health checks, +meaning it’s ready to serve queries. |
||
-backupLocations + available
-
-[]*planetscale.dev/vitess-operator/pkg/apis/planetscale/v2.ShardBackupLocationStatus
+
+Kubernetes core/v1.ConditionStatus
|
- BackupLocations reports information about the backups for this shard in -each backup location. - |
-||
-lowestPodGeneration - -int64 - - |
-
- LowestPodGeneration is the oldest VitessShard object generation seen across -all child Pods. The tablet information in VitessShard status is guaranteed to be -at least as up-to-date as this VitessShard generation. Changes made in -subsequent generations that affect tablets may not be reflected in status yet. +Available indicates whether the vttablet Pod has been consistently Ready +for long enough to be considered stable. |
-(Appears on: -VitessShardTemplate) -
--
VitessShardTabletPool defines a pool of tablets with a similar purpose.
- -Field | -Description | -
---|---|
-cell + dataVolumeBound
-string
+
+Kubernetes core/v1.ConditionStatus
+
|
- Cell is the name of the Vitess cell in which to deploy this pool. +DataVolumeBound indicates whether the main PersistentVolumeClaim has been +matched up with a PersistentVolume and bound to it. |
-type + type
-
-VitessTabletPoolType
-
+string
|
- Type is the type of tablet contained in this tablet pool. -The allowed types are “replica” for master-eligible replicas that serve -transactional (OLTP) workloads; and “rdonly” for master-ineligible replicas -(can never be promoted to master) that serve batch/analytical (OLAP) workloads. +Type is the observed tablet type as reflected in topology. |
-replicas + pendingChanges
-int32
+string
|
- Replicas is the number of tablets to deploy in this pool. -This field is required, although it may be set to 0, -which will scale the pool down to 0 tablets. +PendingChanges describes changes to the tablet Pod that will be applied +the next time a rolling update allows. |
+(Appears on: +VitessClusterSpec) +
++
VtAdminSpec specifies deployment parameters for vtadmin.
+ +Field | +Description | +
---|---|
-dataVolumeClaimTemplate + rbac
-
-Kubernetes core/v1.PersistentVolumeClaimSpec
+
+SecretSource
|
- DataVolumeClaimTemplate configures the PersistentVolumeClaims that will be created -for each tablet to store its database files. -This field is required for local MySQL, but should be omitted in the case of externally -managed MySQL. -IMPORTANT: If your Kubernetes cluster is multi-zone, you must set a -storageClassName here for a StorageClass that’s configured to only -provision volumes in the same zone as this tablet pool. +Rbac contains the rbac config file for vtadmin. +If it is omitted, then it is considered to disable rbac. |
-backupLocationName + cells
-string
+[]string
|
- BackupLocationName is the name of the backup location to use for this -tablet pool. It must match the name of one of the backup locations -defined in the VitessCluster. -Default: Use the backup location whose name is empty. +Cells is a list of cell names (as defined in the Cells list) +in which to deploy vtadmin. +Default: Deploy to all defined cells. |
-vttablet + apiAddresses
-
-VttabletSpec
-
+[]string
|
- Vttablet configures the vttablet server within each tablet. +APIAddresses is a list of vtadmin api addresses +to be used by the vtadmin web for each cell +Either there should be only 1 element in the list +which is used by all the vtadmin-web deployments +or it should match the length of the Cells list |
-mysqld + replicas
-
-MysqldSpec
-
+int32
|
- Mysqld configures a local MySQL running inside each tablet Pod. -You must specify either Mysqld or ExternalDatastore, but not both. +Replicas is the number of vtadmin instances to deploy in each cell. |
-externalDatastore + webResources
-
-ExternalDatastore
+
+Kubernetes core/v1.ResourceRequirements
|
- ExternalDatastore provides information for an externally managed MySQL. -You must specify either Mysqld or ExternalDatastore, but not both. +WebResources determines the compute resources reserved for each vtadmin-web replica. |
-affinity + apiResources
-
-Kubernetes core/v1.Affinity
+
+Kubernetes core/v1.ResourceRequirements
|
- Affinity allows you to set rules that constrain the scheduling of -your vttablet pods. Affinity rules will affect all underlying -tablets in the specified tablet pool the same way. WARNING: These affinity rules -will override all default affinities that we set; in turn, we can’t guarantee -optimal scheduling of your pods if you choose to set this field. +APIResources determines the compute resources reserved for each vtadmin-api replica. |
-annotations + readOnly
-map[string]string
+bool
|
- Annotations can optionally be used to attach custom annotations to Pods -created for this component. +ReadOnly specifies whether the web UI should be read-only +or should it allow users to take actions +Default: false. |
-extraLabels + extraFlags
map[string]string
|
- ExtraLabels can optionally be used to attach custom labels to Pods -created for this component. +ExtraFlags can optionally be used to override default flags set by the +operator, or pass additional flags to vtadmin-api. All entries must be +key-value string pairs of the form “flag”: “value”. The flag name should +not have any prefix (just “flag”, not “-flag”). To set a boolean flag, +set the string value to either “true” or “false”. |
-extraEnv + extraEnv
[]Kubernetes core/v1.EnvVar
@@ -6674,13 +8339,12 @@ created for this component.
|
ExtraEnv can optionally be used to override default environment variables -set by the operator, or pass additional environment variables. -These values are applied to the vttablet, mysqld, and mysqld-exporter containers. +set by the operator, or pass additional environment variables. |
-extraVolumes + extraVolumes
[]Kubernetes core/v1.Volume
@@ -6692,13 +8356,12 @@ These values are applied to the vttablet, mysqld, and mysqld-exporter containers
defined by the operator, or provide additional volumes to the Pod.
Note that when adding a new volume, you should usually also add a
volumeMount to specify where in each container’s filesystem the volume
-should be mounted.
-These volumes are available to be mounted by both vttablet and mysqld.
+should be mounted.
|
|
-extraVolumeMounts + extraVolumeMounts
[]Kubernetes core/v1.VolumeMount
@@ -6708,13 +8371,12 @@ These volumes are available to be mounted by both vttablet and mysqld.
|
ExtraVolumeMounts can optionally be used to override default Pod volumeMounts defined by the operator, or specify additional mounts. -Typically, these are used to mount volumes defined through extraVolumes. -These values are applied to both the vttablet and mysqld containers. +Typically, these are used to mount volumes defined through extraVolumes. |
-initContainers + initContainers
[]Kubernetes core/v1.Container
@@ -6728,7 +8390,7 @@ that will be run to completion one after another before any app containers are s
| |
-sidecarContainers + sidecarContainers
[]Kubernetes core/v1.Container
@@ -6742,115 +8404,82 @@ that run alongside the main containers.
| |
-tolerations + affinity
-
-[]Kubernetes core/v1.Toleration
+
+Kubernetes core/v1.Affinity
|
- Tolerations allow you to schedule pods onto nodes with matching taints. +Affinity allows you to set rules that constrain the scheduling of +your vtadmin pods. WARNING: These affinity rules will override all default affinities +that we set; in turn, we can’t guarantee optimal scheduling of your pods if you +choose to set this field. |
-(Appears on: -VitessKeyspaceEqualPartitioning, -VitessKeyspaceKeyRangeShard, -VitessShardSpec) -
--
VitessShardTemplate contains only the user-specified parts of a VitessShard object.
- -Field | -Description | -
---|---|
-tabletPools + annotations
-
-[]VitessShardTabletPool
-
+map[string]string
|
- TabletPools specify groups of tablets in a given cell with a certain -tablet type and a shared configuration template. -There must be at most one pool in this list for each (cell,type) pair. -Each shard must have at least one “replica” pool (in at least one cell) -in order to be able to serve. +Annotations can optionally be used to attach custom annotations to Pods +created for this component. These will be attached to the underlying +Pods that the vtadmin Deployment creates. |
-databaseInitScriptSecret + extraLabels
-
-SecretSource
-
+map[string]string
|
- DatabaseInitScriptSecret specifies the init_db.sql script file to use for this shard. -This SQL script file is executed immediately after bootstrapping an empty database -to set up initial tables and other MySQL-level entities needed by Vitess. +ExtraLabels can optionally be used to attach custom labels to Pods +created for this component. These will be attached to the underlying +Pods that the vtadmin Deployment creates. |
-replication + service
-
-VitessReplicationSpec
+
+ServiceOverrides
|
- Replication configures Vitess replication settings for the shard. +Service can optionally be used to customize the vtadmin Service. |
-annotations + tolerations
-map[string]string
+
+[]Kubernetes core/v1.Toleration
+
|
- Annotations can optionally be used to attach custom annotations to the VitessShard object. +Tolerations allow you to schedule pods onto nodes with matching taints. |
string
alias)-(Appears on: -VitessShardTabletPool) -
--
VitessTabletPoolType represents the tablet types for which it makes sense -to deploy a dedicated pool. Tablet types that indicate temporary or -transient states are not valid pool types.
- -(Appears on: -VitessShardStatus) +VitessClusterStatus)
-
VitessTabletStatus is the status of one tablet in a shard.
+VtadminStatus is a summary of the status of the vtadmin deployment.
-poolType - -string - - |
-
- PoolType is the target tablet type for the tablet pool. - |
-
-index - -int32 - - |
-
- Index is the tablet’s index within its tablet pool. - |
-
-running - - -Kubernetes core/v1.ConditionStatus - - - |
-
- Running indicates whether the vttablet Pod is running. - |
-
-ready - - -Kubernetes core/v1.ConditionStatus - - - |
-
- Ready indicates whether the vttablet Pod is passing health checks, -meaning it’s ready to serve queries. - |
-
-available - - -Kubernetes core/v1.ConditionStatus - - - |
-
- Available indicates whether the vttablet Pod has been consistently Ready -for long enough to be considered stable. - |
-
-dataVolumeBound + available
Kubernetes core/v1.ConditionStatus
@@ -6933,31 +8499,18 @@ Kubernetes core/v1.ConditionStatus
|
- DataVolumeBound indicates whether the main PersistentVolumeClaim has been -matched up with a PersistentVolume and bound to it. - |
-
-type - -string - - |
-
- Type is the observed tablet type as reflected in topology. +Available indicates whether the vtadmin service has available endpoints. |
-pendingChanges + serviceName
string
|
- PendingChanges describes changes to the tablet Pod that will be applied -the next time a rolling update allows. +ServiceName is the name of the Service for this cluster’s vtadmin. |
-resources + resources
Kubernetes core/v1.ResourceRequirements
@@ -6996,7 +8549,7 @@ This field is required.
| |
-extraFlags + extraFlags
map[string]string
@@ -7009,10 +8562,36 @@ not have any prefix (just “flag”, not “-flag”). To set a
set the string value to either “true” or “false”.
|
|
+lifecycle
+
+
+Kubernetes core/v1.Lifecycle
+
+
+ |
+
+ Lifecycle can optionally be used to add container lifecycle hooks +to vttablet container + |
+
+terminationGracePeriodSeconds
+
+int64
+
+ |
+
+ TerminationGracePeriodSeconds can optionally be used to customize +terminationGracePeriodSeconds of the vttablet pod. + |
+
string
alias)string
alias)
(Appears on: ReshardingStatus) @@ -7024,3 +8603,9 @@ set the string value to either “true” or “false”.
Generated with gen-crd-api-reference-docs
.