0.7.0
Release Notes
Changes since 0.6.0
Breaking changes
IMPORTANT: Before upgrading aerospike-operator
to 0.7.0
or later, one
should perform the actions indicated by the Action required items below as
applicable.
- Enforce the existence of a single Aerospike namespace per Aerospike cluster.
- Action required: Existing
AerospikeCluster
resources with two Aerospike
namespaces must be backed-up and restored to two new, separate Aerospike
clusters with a single Aerospike namespace each.
- Action required: Existing
Improvements
- Use stable node IDs for Aerospike nodes.
- Prevent Aerospike from trying to establish heartbeat connections to IP
addresses of pods that don't exist anymore. - Support operating on up to six Aerospike clusters simultaneously instead of
only two. - Prevent the
.status
field of anAerospikeCluster
resource from being
deleted. - Allow standby replicas of
aerospike-operator
to serve the validating
admission webhook. - Improving the handling of errors caused by the Kubernetes API forcibly closing
open watch connections. - Wait for endpoints for custom resource definitions to be available before
starting the controllers. - Improve logging when running with
--debug=false
.
Bug Fixes
- Fix panics that might occur if some optional fields were absent from a
AerospikeCluster
resource.
Documentation
- Design: Make it clear that
.spec.backupSpec
is only required when one
wants to upgrade an Aerospike cluster. - Design: Make it clear that
.spec.nodeCount
must be greater than or equal
to.spec.namespaces[*].replicationFactor
. - Design: Add an OpenAPI spec for the
aerospike.travelaudience.com/v1alpha1
API. - Design/Usage: Address single namespace limitation.
- Usage: Briefly mention capacity planning as a precursor to the creation of
AerospikeCluster
resources. - Usage: Make it clear that the secret used for backups and restores must
contain akey.json
entry. - Usage: Fix the name of the
.spec.namespaces[*].storage.storageClassName
field. - Usage: Add a "quickstart" subsection to the
Installation Guide page. - Examples: Add missing permissions to the example cluster role binding.
- Examples: Specify resource requests and limits for
aerospike-operator
pods
in the example deployment. - Other: Add links to
README.md
for better navigation. - Other: Mention supported Aerospike versions in
README.md
. - Other: List existing design documents in
README.md
.
Other
- Tests: Run end-to-end tests using a separate Kubernetes service account.