polardbxoperator/charts/polardbx-operator/crds/polardbx.aliyun.com_polardb...

3774 lines
233 KiB
YAML

---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.0
creationTimestamp: null
name: polardbxclusters.polardbx.aliyun.com
spec:
group: polardbx.aliyun.com
names:
kind: PolarDBXCluster
listKind: PolarDBXClusterList
plural: polardbxclusters
shortNames:
- px
- pxc
- polardbx
singular: polardbxcluster
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .spec.protocolVersion
name: PROTOCOL
priority: 1
type: string
- jsonPath: .status.statusForPrint.replicaStatus.gms
name: GMS
type: string
- jsonPath: .status.statusForPrint.replicaStatus.cn
name: CN
type: string
- jsonPath: .status.statusForPrint.replicaStatus.dn
name: DN
type: string
- jsonPath: .status.statusForPrint.replicaStatus.cdc
name: CDC
type: string
- jsonPath: .status.statusForPrint.replicaStatus.columnar
name: COLUMNAR
type: string
- jsonPath: .status.phase
name: PHASE
type: string
- jsonPath: .status.statusForPrint.storageSize
name: DISK
type: string
- jsonPath: .status.stage
name: STAGE
priority: 1
type: string
- jsonPath: .status.statusForPrint.rebalanceProcess
name: REBALANCE
priority: 1
type: string
- jsonPath: .status.statusForPrint.detailedVersion
name: VERSION
priority: 1
type: string
- jsonPath: .metadata.creationTimestamp
name: AGE
type: date
name: v1
schema:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
default:
topology:
nodes:
cn:
template:
resources:
limits:
cpu: 4
memory: 8Gi
dn:
replicas: 2
template:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
properties:
config:
description: Config defines the configuration of the current cluster.
Both dynamic and static configs of CN and DN are included.
properties:
cdc:
description: CDC config
properties:
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
cn:
description: CN config.
properties:
coldDataFileStorage:
description: ColdDataFileStorage defines the file storage
used to store cold data
items:
properties:
engine:
description: Engine describes the engine type of file
storage
pattern: ^(?i)innodb|mrg_myisam|blackhole|myisam|csv|archive|performance_schema|federated|local_disk|s3|oss$
type: string
type: object
type: array
dynamic:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
enableAuditLog:
type: boolean
static:
default:
EnableCoroutine: true
properties:
AttendHtap:
type: boolean
EnableCoroutine:
default: true
type: boolean
EnableJvmRemoteDebug:
type: boolean
EnableReplicaRead:
type: boolean
RPCProtocolVersion:
anyOf:
- type: integer
- type: string
default: 1
enum:
- 1
- 2
- "1"
- "2"
- ""
x-kubernetes-int-or-string: true
ServerProperties:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
type: object
columnar:
description: Columnar config
properties:
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
dn:
description: DN config.
properties:
enableAuditLog:
type: boolean
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
logDataSeparation:
type: boolean
logPurgeInterval:
type: string
mycnfOverwrite:
type: string
type: object
type: object
initReadonly:
description: InitReadonly is the list of readonly cluster that needs
to be created and initialized
items:
properties:
cnReplicas:
type: integer
extraParams:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
name:
type: string
type: object
type: array
parameterTemplate:
description: ParameterTemplate defines the template of parameters
used by cn/dn/gms.
properties:
name:
description: parameter template
type: string
type: object
primaryCluster:
description: PrimaryCluster is the name of primary cluster of the
readonly cluster
type: string
privileges:
description: Privileges defines the extra accounts that should be
created while provisioning the cluster. Specifying an item for the
default root account will overwrite the default random password
with the given one.
items:
description: PrivilegeItem represents an item for privilege definition.
properties:
password:
description: Password for the account. The operator will generate
a random password if not provided.
type: string
type:
default: RW
description: Type represents the type of privilege, default
is ReadWrite.
enum:
- RW
- RO
- DDL
- DML
- SUPER
type: string
username:
description: Username for the account.
type: string
type: object
type: array
protocolVersion:
anyOf:
- type: integer
- type: string
description: ProtocolVersion represents the supported MySQL protocols
provided by the cluster. Must be either 5 (5.7) or 8 (8.0). Default
is operator dependent.
enum:
- 5
- 8
- "5"
- "8"
- "5.7"
- "8.0"
x-kubernetes-int-or-string: true
readonly:
default: false
description: Readonly demonstrates whether the cluster is readonly.
Default is false
type: boolean
restore:
description: Restore defines the restore specification. When provided,
the operator will create the cluster in restore mode. Restore might
fail due to lack of backups silently.
properties:
backupset:
description: BackupSet defines the source of backup set. It works
only when PolarDBXBackup object of this BackupSet still exists.
type: string
binlogSource:
description: BinlogSource defines the binlog datasource
properties:
checksum:
description: Checksum defines the binlog file checksum.
type: string
namespace:
description: Namespace defines the source binlog namespace
type: string
storageProvider:
description: StorageProvider defines the source binlog sink
properties:
sink:
description: Sink defines the storage configuration choose
to perform backup
type: string
storageName:
description: StorageName defines the storage medium used
to perform backup
type: string
type: object
type: object
from:
description: "From defines the source information, either a running
cluster, backup set path or backup selector. \n If PolarDBXRestoreFrom.BackupSetPath
provided, restore will be performed using metadata backup in
remote storage. It works only when BackupSet is empty and StorageProvider
is provided."
properties:
backupSelector:
additionalProperties:
type: string
description: BackupSelector defines the selector for the backups
to be selected. Optional.
type: object
backupSetPath:
description: BackupSetPath defines the location of backup
set in remote storage
type: string
clusterName:
description: PolarBDXName defines the polardbx name that this
polardbx is restored from. Optional.
type: string
type: object
storageProvider:
description: StorageProvider defines storage used to perform backup
properties:
sink:
description: Sink defines the storage configuration choose
to perform backup
type: string
storageName:
description: StorageName defines the storage medium used to
perform backup
type: string
type: object
syncSpecWithOriginalCluster:
default: false
description: SyncSpecWithOriginalCluster identifies whether restored
cluster should use the same spec as the original cluster. If
the field is set to true, spec of original cluster is used;
otherwise users have to declare spec manually or use default
spec, but replicas of dn will be forced to sync with original
cluster now. Default is false
type: boolean
time:
description: Time defines the specified time of the restored data,
in the format of 'yyyy-MM-ddTHH:mm:ssZ'. Required.
type: string
timezone:
description: TimeZone defines the specified time zone of the restore
time. Default is the location of current cluster.
type: string
type: object
security:
description: Security defines the security config of the cluster,
like SSL.
properties:
encodeKey:
description: EncodeKey defines the encode key used by the cluster.
If not provided, operator will generate a random key.
properties:
key:
description: The key of the secret to select from. Must be
a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?'
type: string
optional:
description: Specify whether the Secret or its key must be
defined
type: boolean
required:
- key
type: object
tls:
description: TLS defines the TLS config of the access port.
properties:
generateSelfSigned:
description: GenerateSelfSigned represents if let the operator
generate and use a self-signed cert.
type: boolean
secretName:
description: SecretName of the TLS config's secret.
type: string
type: object
type: object
serviceName:
description: ServiceName represents the name of main (access) service
of the cluster. It's set to the name of the cluster object when
not provided.
type: string
serviceType:
default: ClusterIP
description: ServiceType represents the service type of main (access)
service of the cluster. Default is ClusterIP.
type: string
shareGMS:
description: ShareGMS represents there's no standalone GMS instance
but shares the first DN as the GMS. It's not recommended in production
but useful for tests in environments with not so much CPU/memory
resources. Default is false.
type: boolean
topology:
description: Topology defines the desired node topology and templates.
properties:
nodes:
default:
cn:
replicas: 2
template:
resources:
limits:
cpu: 4
memory: 8Gi
dn:
replicas: 2
template:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
description: Node defines the replicas and template of components
of the cluster.
properties:
cdc:
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for CDC. Should be replaced by
default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy for
if/when to pull a container image (especially for
the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced object
inside the same namespace.
properties:
name:
description: 'Name of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4 cpu
and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum amount
of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum amount
of compute resources required. If Requests is
omitted for a container, it defaults to Limits
if that is explicitly specified, otherwise to
an implementation-defined value. More info:
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
xReplicas:
format: int32
minimum: 0
type: integer
type: object
cn:
default:
replicas: 2
template:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for CN. Should be replaced by default
value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy for
if/when to pull a container image (especially for
the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced object
inside the same namespace.
properties:
name:
description: 'Name of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4 cpu
and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum amount
of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum amount
of compute resources required. If Requests is
omitted for a container, it defaults to Limits
if that is explicitly specified, otherwise to
an implementation-defined value. More info:
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
type: object
columnar:
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for Columnar. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy for
if/when to pull a container image (especially for
the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced object
inside the same namespace.
properties:
name:
description: 'Name of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4 cpu
and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum amount
of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum amount
of compute resources required. If Requests is
omitted for a container, it defaults to Limits
if that is explicitly specified, otherwise to
an implementation-defined value. More info:
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
type: object
dn:
default:
replicas: 2
template:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
properties:
replicas:
default: 2
format: int32
minimum: 1
type: integer
template:
default:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
properties:
diskQuota:
anyOf:
- type: integer
- type: string
description: DiskQuota for xstore.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
engine:
description: Engine of xstore. Default is operator
dependent.
type: string
hostNetwork:
default: false
description: HostNetwork mode.
type: boolean
image:
description: Image for xstore. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy for
if/when to pull a container image (especially for
the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced object
inside the same namespace.
properties:
name:
description: 'Name of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4 cpu
and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum amount
of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
limits.io:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource
name, quantity) pairs.
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum amount
of compute resources required. If Requests is
omitted for a container, it defaults to Limits
if that is explicitly specified, otherwise to
an implementation-defined value. More info:
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
serviceType:
default: ClusterIP
description: Service type for xstore's service. Useful
when needs an external IP. Default is ClusterIP.
type: string
type: object
type: object
gms:
properties:
template:
description: Template of GMS xstore. If not provided,
the operator will use the template for DN as template
for GMS.
properties:
diskQuota:
anyOf:
- type: integer
- type: string
description: DiskQuota for xstore.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
engine:
description: Engine of xstore. Default is operator
dependent.
type: string
hostNetwork:
default: false
description: HostNetwork mode.
type: boolean
image:
description: Image for xstore. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy for
if/when to pull a container image (especially for
the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced object
inside the same namespace.
properties:
name:
description: 'Name of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4 cpu
and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum amount
of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
limits.io:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource
name, quantity) pairs.
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum amount
of compute resources required. If Requests is
omitted for a container, it defaults to Limits
if that is explicitly specified, otherwise to
an implementation-defined value. More info:
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
serviceType:
default: ClusterIP
description: Service type for xstore's service. Useful
when needs an external IP. Default is ClusterIP.
type: string
type: object
type: object
type: object
rules:
description: Rules defines the topology rules of components of
the cluster.
properties:
components:
properties:
cdc:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents the
union of the results of one or more label
queries over a set of nodes; that is, it represents
the OR of the selectors represented by the
node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node selector
terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
cn:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents the
union of the results of one or more label
queries over a set of nodes; that is, it represents
the OR of the selectors represented by the
node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node selector
terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
columnar:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents the
union of the results of one or more label
queries over a set of nodes; that is, it represents
the OR of the selectors represented by the
node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node selector
terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array of string
values. If the operator is
In or NotIn, the values array
must be non-empty. If the
operator is Exists or DoesNotExist,
the values array must be empty.
If the operator is Gt or Lt,
the values array must have
a single element, which will
be interpreted as an integer.
This array is replaced during
a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
dn:
properties:
nodeSets:
items:
properties:
name:
type: string
replicas:
default: 1
format: int32
minimum: 1
type: integer
role:
enum:
- Candidate
- Voter
- Learner
type: string
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
rolling:
properties:
replicas:
format: int32
type: integer
selector:
properties:
reference:
type: string
selector:
description: A node selector represents the
union of the results of one or more label
queries over a set of nodes; that is, it
represents the OR of the selectors represented
by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector requirement
is a selector that contains
values, a key, and an operator
that relates the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents a
key's relationship to a
set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string
values. If the operator
is In or NotIn, the values
array must be non-empty.
If the operator is Exists
or DoesNotExist, the values
array must be empty. If
the operator is Gt or Lt,
the values array must have
a single element, which
will be interpreted as an
integer. This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector requirement
is a selector that contains
values, a key, and an operator
that relates the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents a
key's relationship to a
set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string
values. If the operator
is In or NotIn, the values
array must be non-empty.
If the operator is Exists
or DoesNotExist, the values
array must be empty. If
the operator is Gt or Lt,
the values array must have
a single element, which
will be interpreted as an
integer. This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: object
gms:
properties:
nodeSets:
items:
properties:
name:
type: string
replicas:
default: 1
format: int32
minimum: 1
type: integer
role:
enum:
- Candidate
- Voter
- Learner
type: string
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
rolling:
properties:
replicas:
format: int32
type: integer
selector:
properties:
reference:
type: string
selector:
description: A node selector represents the
union of the results of one or more label
queries over a set of nodes; that is, it
represents the OR of the selectors represented
by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector requirement
is a selector that contains
values, a key, and an operator
that relates the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents a
key's relationship to a
set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string
values. If the operator
is In or NotIn, the values
array must be non-empty.
If the operator is Exists
or DoesNotExist, the values
array must be empty. If
the operator is Gt or Lt,
the values array must have
a single element, which
will be interpreted as an
integer. This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector requirement
is a selector that contains
values, a key, and an operator
that relates the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents a
key's relationship to a
set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string
values. If the operator
is In or NotIn, the values
array must be non-empty.
If the operator is Exists
or DoesNotExist, the values
array must be empty. If
the operator is Gt or Lt,
the values array must have
a single element, which
will be interpreted as an
integer. This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: object
type: object
selectors:
items:
properties:
name:
type: string
nodeSelector:
description: A node selector represents the union of
the results of one or more label queries over a set
of nodes; that is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node selector terms.
The terms are ORed.
items:
description: A null or empty node selector term
matches no objects. The requirements of them
are ANDed. The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements
by node's labels.
items:
description: A node selector requirement
is a selector that contains values, a
key, and an operator that relates the
key and values.
properties:
key:
description: The label key that the
selector applies to.
type: string
operator:
description: Represents a key's relationship
to a set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string values.
If the operator is In or NotIn, the
values array must be non-empty. If
the operator is Exists or DoesNotExist,
the values array must be empty. If
the operator is Gt or Lt, the values
array must have a single element,
which will be interpreted as an integer.
This array is replaced during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector requirements
by node's fields.
items:
description: A node selector requirement
is a selector that contains values, a
key, and an operator that relates the
key and values.
properties:
key:
description: The label key that the
selector applies to.
type: string
operator:
description: Represents a key's relationship
to a set of values. Valid operators
are In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of string values.
If the operator is In or NotIn, the
values array must be non-empty. If
the operator is Exists or DoesNotExist,
the values array must be empty. If
the operator is Gt or Lt, the values
array must have a single element,
which will be interpreted as an integer.
This array is replaced during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: array
type: object
version:
description: Version defines the default image version of the
all components. Default is empty. If not provided, one should
specify the images manually.
type: string
type: object
upgradeStrategy:
description: UpgradeStrategy defines the upgrade strategy for stateless
nodes.
type: string
type: object
status:
properties:
conditions:
description: Conditions represent the current service state of the
cluster.
items:
description: Condition defines the condition and its status.
properties:
lastProbeTime:
description: Last time we probed the condition.
format: date-time
type: string
lastTransitionTime:
description: Last time the condition transition from on status
to another.
format: date-time
type: string
message:
description: Human-readable message indicating details about
last transition.
type: string
reason:
description: Unique, one-word, CamelCase reason for the condition's
last transition.
type: string
status:
description: Status is the status of the condition.
type: string
type:
description: Type is the type of the condition.
type: string
required:
- status
- type
type: object
type: array
observedGeneration:
description: ObservedGeneration is the observed generation of the
xstore spec.
format: int64
type: integer
phase:
description: Phase is the current phase of the cluster.
type: string
pitrStatus:
description: PitrStatus represents the status of the pitr restore
properties:
job:
type: string
preapreJobEndpoint:
type: string
type: object
randHash:
description: Rand represents a random string value to avoid collision.
type: string
replicaStatus:
description: ReplicaStatus represents the replica status of the cluster.
properties:
cdc:
description: CDC defines the replica status for CDC.
properties:
available:
description: Available represents how many replicas are currently
available.
format: int32
type: integer
total:
description: Total defines the total size of the replica.
format: int32
type: integer
type: object
cn:
description: CN defines the replica status for CN.
properties:
available:
description: Available represents how many replicas are currently
available.
format: int32
type: integer
total:
description: Total defines the total size of the replica.
format: int32
type: integer
type: object
columnar:
description: Columnar defines the replica status for CDC.
properties:
available:
description: Available represents how many replicas are currently
available.
format: int32
type: integer
total:
description: Total defines the total size of the replica.
format: int32
type: integer
type: object
dn:
description: DN defines the replica status for DN.
properties:
available:
description: Available represents how many replicas are currently
available.
format: int32
type: integer
total:
description: Total defines the total size of the replica.
format: int32
type: integer
type: object
gms:
description: GMS defines the replica status for GMS.
properties:
available:
description: Available represents how many replicas are currently
available.
format: int32
type: integer
total:
description: Total defines the total size of the replica.
format: int32
type: integer
type: object
type: object
restarting:
description: Restarting represents if pods need restart
type: boolean
restartingPods:
description: RestartingPods represents pods need to restart
properties:
lastDeletedPod:
type: string
toDeletePod:
items:
type: string
type: array
type: object
restartingType:
description: RestartingType represents the type of restart
type: string
specSnapshot:
description: SpecSnapshot represents the snapshot of some aspects
of the observed spec. It should be updated atomically with the observed
generation.
properties:
config:
properties:
cdc:
description: CDC config
properties:
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
cn:
description: CN config.
properties:
coldDataFileStorage:
description: ColdDataFileStorage defines the file storage
used to store cold data
items:
properties:
engine:
description: Engine describes the engine type of
file storage
pattern: ^(?i)innodb|mrg_myisam|blackhole|myisam|csv|archive|performance_schema|federated|local_disk|s3|oss$
type: string
type: object
type: array
dynamic:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
enableAuditLog:
type: boolean
static:
default:
EnableCoroutine: true
properties:
AttendHtap:
type: boolean
EnableCoroutine:
default: true
type: boolean
EnableJvmRemoteDebug:
type: boolean
EnableReplicaRead:
type: boolean
RPCProtocolVersion:
anyOf:
- type: integer
- type: string
default: 1
enum:
- 1
- 2
- "1"
- "2"
- ""
x-kubernetes-int-or-string: true
ServerProperties:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
type: object
columnar:
description: Columnar config
properties:
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
type: object
dn:
description: DN config.
properties:
enableAuditLog:
type: boolean
envs:
additionalProperties:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
type: object
logDataSeparation:
type: boolean
logPurgeInterval:
type: string
mycnfOverwrite:
type: string
type: object
type: object
topology:
properties:
nodes:
default:
cn:
replicas: 2
template:
resources:
limits:
cpu: 4
memory: 8Gi
dn:
replicas: 2
template:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
description: Node defines the replicas and template of components
of the cluster.
properties:
cdc:
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for CDC. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy
for if/when to pull a container image (especially
for the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced
object inside the same namespace.
properties:
name:
description: 'Name of the referent. More
info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4
cpu and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum
amount of compute resources allowed. More
info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum
amount of compute resources required. If
Requests is omitted for a container, it
defaults to Limits if that is explicitly
specified, otherwise to an implementation-defined
value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
xReplicas:
format: int32
minimum: 0
type: integer
type: object
cn:
default:
replicas: 2
template:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for CN. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy
for if/when to pull a container image (especially
for the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced
object inside the same namespace.
properties:
name:
description: 'Name of the referent. More
info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4
cpu and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum
amount of compute resources allowed. More
info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum
amount of compute resources required. If
Requests is omitted for a container, it
defaults to Limits if that is explicitly
specified, otherwise to an implementation-defined
value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
type: object
columnar:
properties:
replicas:
default: 2
format: int32
minimum: 0
type: integer
template:
default:
resources:
limits:
cpu: 4
memory: 8Gi
properties:
hostNetwork:
description: HostNetwork mode.
type: boolean
image:
description: Image for Columnar. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy
for if/when to pull a container image (especially
for the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced
object inside the same namespace.
properties:
name:
description: 'Name of the referent. More
info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4
cpu and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum
amount of compute resources allowed. More
info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum
amount of compute resources required. If
Requests is omitted for a container, it
defaults to Limits if that is explicitly
specified, otherwise to an implementation-defined
value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
type: object
type: object
dn:
default:
replicas: 2
template:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
properties:
replicas:
default: 2
format: int32
minimum: 1
type: integer
template:
default:
hostNetwork: true
resources:
limits:
cpu: 4
memory: 8Gi
properties:
diskQuota:
anyOf:
- type: integer
- type: string
description: DiskQuota for xstore.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
engine:
description: Engine of xstore. Default is operator
dependent.
type: string
hostNetwork:
default: false
description: HostNetwork mode.
type: boolean
image:
description: Image for xstore. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy
for if/when to pull a container image (especially
for the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced
object inside the same namespace.
properties:
name:
description: 'Name of the referent. More
info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4
cpu and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum
amount of compute resources allowed. More
info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
limits.io:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource
name, quantity) pairs.
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum
amount of compute resources required. If
Requests is omitted for a container, it
defaults to Limits if that is explicitly
specified, otherwise to an implementation-defined
value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
serviceType:
default: ClusterIP
description: Service type for xstore's service.
Useful when needs an external IP. Default is
ClusterIP.
type: string
type: object
type: object
gms:
properties:
template:
description: Template of GMS xstore. If not provided,
the operator will use the template for DN as template
for GMS.
properties:
diskQuota:
anyOf:
- type: integer
- type: string
description: DiskQuota for xstore.
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
engine:
description: Engine of xstore. Default is operator
dependent.
type: string
hostNetwork:
default: false
description: HostNetwork mode.
type: boolean
image:
description: Image for xstore. Should be replaced
by default value if not present.
type: string
imagePullPolicy:
description: ImagePullPolicy describes a policy
for if/when to pull a container image (especially
for the engine container).
type: string
imagePullSecrets:
description: ImagePullSecrets represents the secrets
for pulling private images.
items:
description: LocalObjectReference contains enough
information to let you locate the referenced
object inside the same namespace.
properties:
name:
description: 'Name of the referent. More
info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion,
kind, uid?'
type: string
type: object
type: array
resources:
default:
limits:
cpu: 4
memory: 8Gi
description: Resources. Default is limits of 4
cpu and 8Gi memory.
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Limits describes the maximum
amount of compute resources allowed. More
info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
limits.io:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource
name, quantity) pairs.
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: 'Requests describes the minimum
amount of compute resources required. If
Requests is omitted for a container, it
defaults to Limits if that is explicitly
specified, otherwise to an implementation-defined
value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
type: object
type: object
serviceType:
default: ClusterIP
description: Service type for xstore's service.
Useful when needs an external IP. Default is
ClusterIP.
type: string
type: object
type: object
type: object
rules:
description: Rules defines the topology rules of components
of the cluster.
properties:
components:
properties:
cdc:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
cn:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
columnar:
items:
properties:
name:
type: string
replicas:
anyOf:
- type: integer
- type: string
x-kubernetes-int-or-string: true
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type implements
a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector
requirements by node's labels.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector
requirements by node's fields.
items:
description: A node selector
requirement is a selector
that contains values, a key,
and an operator that relates
the key and values.
properties:
key:
description: The label key
that the selector applies
to.
type: string
operator:
description: Represents
a key's relationship to
a set of values. Valid
operators are In, NotIn,
Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array of
string values. If the
operator is In or NotIn,
the values array must
be non-empty. If the operator
is Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will be
interpreted as an integer.
This array is replaced
during a strategic merge
patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
dn:
properties:
nodeSets:
items:
properties:
name:
type: string
replicas:
default: 1
format: int32
minimum: 1
type: integer
role:
enum:
- Candidate
- Voter
- Learner
type: string
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or
more label queries over a set of nodes;
that is, it represents the OR of the
selectors represented by the node
selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of
node selector terms. The terms
are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are
ANDed. The TopologySelectorTerm
type implements a subset of
the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node
selector requirements by
node's labels.
items:
description: A node selector
requirement is a selector
that contains values,
a key, and an operator
that relates the key and
values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists,
DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array
of string values.
If the operator is
In or NotIn, the values
array must be non-empty.
If the operator is
Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a
single element, which
will be interpreted
as an integer. This
array is replaced
during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node
selector requirements by
node's fields.
items:
description: A node selector
requirement is a selector
that contains values,
a key, and an operator
that relates the key and
values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists,
DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array
of string values.
If the operator is
In or NotIn, the values
array must be non-empty.
If the operator is
Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a
single element, which
will be interpreted
as an integer. This
array is replaced
during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
rolling:
properties:
replicas:
format: int32
type: integer
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type
implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node
selector requirements by node's
labels.
items:
description: A node selector
requirement is a selector
that contains values, a
key, and an operator that
relates the key and values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array
of string values. If
the operator is In or
NotIn, the values array
must be non-empty. If
the operator is Exists
or DoesNotExist, the
values array must be
empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will
be interpreted as an
integer. This array
is replaced during a
strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node
selector requirements by node's
fields.
items:
description: A node selector
requirement is a selector
that contains values, a
key, and an operator that
relates the key and values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array
of string values. If
the operator is In or
NotIn, the values array
must be non-empty. If
the operator is Exists
or DoesNotExist, the
values array must be
empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will
be interpreted as an
integer. This array
is replaced during a
strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: object
gms:
properties:
nodeSets:
items:
properties:
name:
type: string
replicas:
default: 1
format: int32
minimum: 1
type: integer
role:
enum:
- Candidate
- Voter
- Learner
type: string
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or
more label queries over a set of nodes;
that is, it represents the OR of the
selectors represented by the node
selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of
node selector terms. The terms
are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are
ANDed. The TopologySelectorTerm
type implements a subset of
the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node
selector requirements by
node's labels.
items:
description: A node selector
requirement is a selector
that contains values,
a key, and an operator
that relates the key and
values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists,
DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array
of string values.
If the operator is
In or NotIn, the values
array must be non-empty.
If the operator is
Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a
single element, which
will be interpreted
as an integer. This
array is replaced
during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node
selector requirements by
node's fields.
items:
description: A node selector
requirement is a selector
that contains values,
a key, and an operator
that relates the key and
values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists,
DoesNotExist. Gt,
and Lt.
type: string
values:
description: An array
of string values.
If the operator is
In or NotIn, the values
array must be non-empty.
If the operator is
Exists or DoesNotExist,
the values array must
be empty. If the operator
is Gt or Lt, the values
array must have a
single element, which
will be interpreted
as an integer. This
array is replaced
during a strategic
merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: array
rolling:
properties:
replicas:
format: int32
type: integer
selector:
properties:
reference:
type: string
selector:
description: A node selector represents
the union of the results of one or more
label queries over a set of nodes; that
is, it represents the OR of the selectors
represented by the node selector terms.
properties:
nodeSelectorTerms:
description: Required. A list of node
selector terms. The terms are ORed.
items:
description: A null or empty node
selector term matches no objects.
The requirements of them are ANDed.
The TopologySelectorTerm type
implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node
selector requirements by node's
labels.
items:
description: A node selector
requirement is a selector
that contains values, a
key, and an operator that
relates the key and values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array
of string values. If
the operator is In or
NotIn, the values array
must be non-empty. If
the operator is Exists
or DoesNotExist, the
values array must be
empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will
be interpreted as an
integer. This array
is replaced during a
strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node
selector requirements by node's
fields.
items:
description: A node selector
requirement is a selector
that contains values, a
key, and an operator that
relates the key and values.
properties:
key:
description: The label
key that the selector
applies to.
type: string
operator:
description: Represents
a key's relationship
to a set of values.
Valid operators are
In, NotIn, Exists, DoesNotExist.
Gt, and Lt.
type: string
values:
description: An array
of string values. If
the operator is In or
NotIn, the values array
must be non-empty. If
the operator is Exists
or DoesNotExist, the
values array must be
empty. If the operator
is Gt or Lt, the values
array must have a single
element, which will
be interpreted as an
integer. This array
is replaced during a
strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: object
type: object
type: object
selectors:
items:
properties:
name:
type: string
nodeSelector:
description: A node selector represents the union
of the results of one or more label queries over
a set of nodes; that is, it represents the OR
of the selectors represented by the node selector
terms.
properties:
nodeSelectorTerms:
description: Required. A list of node selector
terms. The terms are ORed.
items:
description: A null or empty node selector
term matches no objects. The requirements
of them are ANDed. The TopologySelectorTerm
type implements a subset of the NodeSelectorTerm.
properties:
matchExpressions:
description: A list of node selector requirements
by node's labels.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt, and
Lt.
type: string
values:
description: An array of string
values. If the operator is In
or NotIn, the values array must
be non-empty. If the operator
is Exists or DoesNotExist, the
values array must be empty. If
the operator is Gt or Lt, the
values array must have a single
element, which will be interpreted
as an integer. This array is replaced
during a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchFields:
description: A list of node selector requirements
by node's fields.
items:
description: A node selector requirement
is a selector that contains values,
a key, and an operator that relates
the key and values.
properties:
key:
description: The label key that
the selector applies to.
type: string
operator:
description: Represents a key's
relationship to a set of values.
Valid operators are In, NotIn,
Exists, DoesNotExist. Gt, and
Lt.
type: string
values:
description: An array of string
values. If the operator is In
or NotIn, the values array must
be non-empty. If the operator
is Exists or DoesNotExist, the
values array must be empty. If
the operator is Gt or Lt, the
values array must have a single
element, which will be interpreted
as an integer. This array is replaced
during a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
type: object
type: array
required:
- nodeSelectorTerms
type: object
type: object
type: array
type: object
version:
description: Version defines the default image version of
the all components. Default is empty. If not provided, one
should specify the images manually.
type: string
type: object
type: object
stage:
description: Stage is the current stage of the xstore.
type: string
statusForPrint:
description: StatusForPrint represents the printable status of the
cluster.
properties:
detailedVersion:
description: DetailedVersion for the status of current detailed
vesrion of the cluster, which is dynamically acquired when cluster
is ready.
type: string
rebalanceProcess:
description: RebalanceProgress for the status of data rebalance
tasks.
type: string
replicaStatus:
description: ReplicaStatus for the status of nodes' replicas.
properties:
cdc:
description: CDC status, e.g. 1/2 or - when CDC nodes not
requested.
type: string
cn:
description: CN status, e.g. 1/2
type: string
columnar:
description: Columnar status, e.g. 1/2 or - when Columnar
nodes not requested.
type: string
dn:
description: DN status, e.g. 1/2
type: string
gms:
description: GMS status, e.g. 1/1
type: string
type: object
storageSize:
description: StorageSize represents the total storage size that
used by this cluster. The value is in IEC format and is simply
gotten by accumulating the GMS' and DNs' storage sizes.
type: string
storageSizeUpdateTime:
description: StorageSizeUpdateTime represents the last time that
storage size is updated. It's used to control the frequency
of the updating progress.
format: date-time
type: string
type: object
type: object
type: object
served: true
storage: true
subresources:
status: {}