Status Conditions and Events

The actions of the Couchbase Operator and the state of the cluster are communicated using the standard Kubernetes convention.

In Kubernetes, you can normally view more information about an object using the kubectl describe command which displays, among other things, the Events and Conditions associated with the resource. Similarly, the Couchbase Operator exposes the events and conditions for each CouchbaseCluster custom resource. If you’re using OpenShift, you should be able to do the same using the oc describe command.

Events

The lifecycle of a CouchbaseCluster includes the following events (in no particular order):

Member Lifecycle

MemberCreationFailed

A new member was unable to be created. This may be due to pod scheduling constraints, network issues or TLS configuration.

NewMemberAdded

A new Couchbase node was added to the cluster.

FailedAddNode

A Couchbase node failed to join the cluster.

MemberRemoved

A Couchbase node was removed from the cluster.

MemberDown

A Couchbase node has been reported as down by its peers.

MemberRecovered

A failed Couchbase node has been recovered from its persistent volume.

MemberFailedOver

A node has either been failed over automatically or manually.

RebalanceStarted

A rebalance operation has started.

RebalanceIncomplete

A rebalance operation has terminated abnormally; nodes may have not been added or ejected as expected.

RebalanceCompleted

A rebalance operation has successfully completed.

Cluster Upgrade Lifecycle

UpgradeStarted

An upgrade operation has started.

UpgradeFinished

An upgrade operation has successfully completed.

RollbackStarted

A rollback operation during a partial upgrade has started.

RollbackFinished

A rollback operation during a partial upgrade has successfully completed.

Upgrade events are raised in relation to an upgrade of the entire cluster and not individual nodes. Individual node upgrades will raise NewMemberAdded, RebalanceStarted, MemberRemoved and RebalanceCompleted member lifecycle events as members are swapped out for upgraded replacements.

Bucket Lifecycle

BucketCreated

A bucket was created.

BucketDeleted

A bucket was deleted.

BucketEdited

A bucket was modified.

Service Lifecycle

ServiceCreated

A cluster service was created.

ServiceDeleted

A cluster service was deleted.

NodeServiceCreated

A node service was created.

NodeServiceDeleted

A node service was deleted.

Specification Lifecycle

ClusterSettingsEdited

The cluster specification was modified.

TLS Lifecycle

TLSUpdated

TLS certificates and keys were updated across the cluster.

TLSInvalid

TLS configuration invalid. Consult the Operator logs for details.

Conditions

The CouchbaseCluster conditions and their statuses are defined in the following list:

Available

True

All members are up and all vBuckets are available.

False

One or more members are down and some vBuckets are unavailable.

Balanced

True

The vBuckets are evenly distributed across the cluster.

False

The vBuckets are not evenly distributed across the cluster.

Unknown

The status is currently unknown.

Scaling

True

Scaling from current members size X to spec.size Y.

False

Reason for failure (e.g., No more nodes to place member due to anti-affinity.)

This condition is undefined when not scaling

ManageBuckets

False

Creating, editing, or deleting a bucket failed.

This condition is undefined when buckets are in the desired state.

ManageConfig

False

A configuration change failed.

This condition is undefined when a configuration was successfully applied.

Upgrading

True

The cluster is upgrading or rolling back from one version to another.

This condition is undefined when an upgrade or rollback is not in progress.