CouchbaseMemcachedBucket Resource

The Couchbase Autonomous Operator operates on CouchbaseCluster objects. Buckets are decoupled from this configuration and are selected for inclusion within a cluster with configurable label selectors.

CouchbaseBucket resources provide memcached compatible in-memory storage.

The following YAML shows all possible fields that may be configured for a CouchbaseMemcachedBucket. This configuration may not be valid and is only for illustrative purposes.

All available CouchbaseMemcachedBucket configuration parameters
apiVersion: couchbase.com/v2
kind: CouchbaseMemcachedBucket
metadata:
  name: my-bucket
  labels:
    cluster: my-cluster
spec:
  memoryQuota: 100Mi
  enableFlush: false

Top-Level Definitions

The following are relevant generic parameters that can be defined:

apiVersion: couchbase.com/v2
kind: CouchbaseMemcachedBucket
metadata:
  name: my-bucket
  labels:
    cluster: my-cluster

apiVersion

The apiVersion 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 CouchbaseMemcachedBucket

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 CouchbaseMemcachedBucket named "default" and a CouchbaseBucket 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 bucket:

spec:
  memoryQuota: 100Mi
  enableFlush: false

spec.memoryQuota

This field specifies the amount of memory to allocate to this bucket per-node. It is deducted from the per-node spec.cluster.dataServiceMemoryQuota parameter in a related CouchbaseCluster resource. The total quota allocated for all buckets must not exceed the spec.cluster.dataServiceMemoryQuota parameter in a related CouchbaseCluster resource. The minimum size is 100Mi. If not specified this field will default to 100Mi.

Field rules: This field is optional and must be a Kubernetes resource quantity greater than or equal to 100Mi.

spec.enableFlush

This field specifies whether or not to enable the flush command on this bucket. This parameter defaults to false if it is not specified.

Field rules: This field is optional and must be a boolean.