CouchbaseReplication
Resource
The Couchbase Autonomous Operator operates on CouchbaseCluster
objects.
XDCR replications are decoupled from this configuration and are selected for inclusion within a cluster with configurable label selectors.
The following YAML shows all possible fields that may be configured for a CouchbaseReplication
.
This configuration may not be valid and is only for illustrative purposes.
CouchbaseReplication
configuration parametersapiVersion: couchbase.com/v2
kind: CouchbaseReplication
metadata:
name: my-replication
labels:
cluster: my-cluster
spec:
bucket: local-bucket-name
remoteBucket: remote-bucket-name
compressionType: Auto
filterExpression: ""
paused: false
Top-Level Definitions
The following are relevant generic parameters that can be defined:
apiVersion: couchbase.com/v2
kind: CouchbaseBucket
metadata:
name: my-bucket
labels:
cluster: my-cluster
apiVersion
The API version defines which version of the resource this configuration refers to.
Field rules: This field is required and must be set to
couchbase.com/v2
kind
The kind defines the type of resource this configuration refers to.
Field rules: This field is required and must be set to
CouchbaseBucket
metadata.name
The metadata name defines the name of the resource.
The name must be unique for the kind defined.
Furthermore the name must be unique for all bucket kinds defined and used by the cluster.
For example you cannot have a CouchbaseBucket
named "default" and a CouchbaseEphemeralBucket
also named "default".
Field rules: This field is required and must be unique as described above.
metadata.labels
The metadata labels allow the resource to be tagged so that it is only selected by specific CouchbaseCluster
resources.
Further details about resource selection can be found on the Couchbase Resources and RBAC page.
Field rules: This field is optional and must be a map of string key/value pairs.
spec
The following are parameters that may be set on the replication:
spec:
bucket: local-bucket-name
remoteBucket: remote-bucket-name
compressionType: Auto
filterExpression: ""
paused: false
spec.bucket
This field specifies the local bucket to replicate from.
A CouchbaseBucket
or CouchbaseEphemeralBucket
resource of the same name must exist on a related CouchbaseCluster
instance.
This field refers to the Couchbase bucket name, defined — by default — with the bucket’s metadata.name
, and optionally overridden by spec.name
.
Field rules: This field is required and must be a bucket name string.
spec.remoteBucket
This field specifies the remote bucket to replicate to.
A CouchbaseBucket
or CouchbaseEphemeralBucket
resource of the same name must exist on a related CouchbaseCluster
instance.
This field refers to the Couchbase bucket name, defined — by default — with the bucket’s metadata.name
, and optionally overridden by spec.name
.
Field rules: This field is required and must be a bucket name string.
spec.compressionType
This field specifies the compression type to use when replicating data.
This field will default to Auto
if not specified.
Field rules: This field is optional and must be either
None
orAuto
.
spec.filterExpression
This field controls what documents are replicated to the remote cluster. Further information can be read in the Couchbase Server XDCR documentation.
Field rules: This field is optional and must be a string.