Skip to main content
Loading
Version: Operator 3.3.1

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.Namespaces cannot be null or empty.
  • Warm restart is only supported for configuration changes with Aerospike container image 6.0 and later.
  • All Flash requires the Aerospike pod to be run in privileged mode for Aerospike server version 6.3 or earlier. For Aerospike server version 6.3 or later, see All Flash to run in unprivileged mode.
  • Any strong consistency namespaces that exist on any given rack should also exist on all other racks. In other words, if a rack R1 has SC namespaces N1 and N2, all other racks should also have SC namespaces N1 and N2. This requirement affects only namespace names, so internal configurations can be different between identically-named namespaces on different racks.
  • A cluster size less than the 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 cannot be updated in place, you can adjust Storage.Volumes and Namespace storage using the workaround described here.

  • Persistent storage volumes cannot be added, removed, or updated in the storage.Volumes configuration.
  • replication-factor and strong-consistency parameters cannot be changed in the aerospikeConfig.Namespaces configuration.
  • The cluster security flag enable-security can only be activated if security is not enabled. Cluster security cannot be disabled on an already-deployed cluster.
  • A namespace storage device cannot be resized. No new storage devices can be added.
  • Block device re-usage requires two update operations: one to remove the block device from a namespace, and a second to add the block device to a different namespace.
  • MultiPodPerHost cannot be updated.

Cannot be set

These values cannot be given in aerospikeConfig in the YAML configuration 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