Skip to main content
Loading
Version: Operator 2.4.0

Aerospike Kubernetes Operator Limitations

The following restrictions are currently in place and apply to any cluster managed by the operator.

  • aerospikeConfig cannot be empty
  • aerospikeConfig.namespace cannot be null or empty
  • ca-path in TLS config not allowed, Only ca-file is allowed
  • Warm restart only supported for configuration change with newer versions of Aerospike container image
  • All flash requires the Aerospike pod to be run in privileged mode.
  • All racks should have the same Strong Consistent (SC) namespaces.
  • ClusterSize < replication-factor is allowed in AP mode but not in SC mode.

When updating a cluster

The following restrictions apply to an already deployed cluster:

note

Although they can't be updated in place, you can adjust Storage.Volumes, and Namespace storage using the workaround described here.

  • Persistent storage volumes can not be added/removed or updated in Storage.Volumes config
  • MultiPodPerHost cannot be updated
  • Cluster security config flag "enable-security" cannot be updated after the first deployment
  • TLS config cannot be updated. See Manage TLS Certificates for info on how to rotate TLS certificates.
  • Namespace storage device cannot be resized.
  • Strong Consistency config cannot be updated.
  • Cluster scale down and rolling restart simultaneously is not supported in Strong Consistency mode.
  • Block device re-usage requires two update operations: one for Block device removal from one namespace and second for Block device addition in different namespace.

Cannot be set

These values cannot be given in aerospikeConfig in yaml config file. These are fixed or determined at runtime.

  • namespaces[<index>].rack-id
  • service.node-id
  • service.cluster-name
  • network.service.access-address
  • network.service.alternate-access-address
  • network.service.tls-access-address
  • network.service.tls-alternate-access-address
  • network.heartbeat.mode

Cannot be updated

The following values cannot be changed after the first deployment of a cluster

  • network.service.port
  • network.service.access-port
  • network.service.alternate-access-port
  • network.service.tls-port
  • network.service.tls-access-port
  • network.service.tls-alternate-access-port
  • network.heartbeat.port
  • network.heartbeat.tls-port
  • network.fabric.port
  • network.fabric.tls-port