Skip to main content
Loading
Version: Operator 3.0.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.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 can't 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 cannot be updated.
  • TLS configuration cannot be updated. See Manage TLS Certificates for information on how to rotate TLS certificates.
  • A namespace storage device cannot be resized. No new storage devices can be added.
  • A simultaneous cluster scale-down and rolling restart is not supported in strong consistency mode. These must be done sequentially.
  • 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