Skip to content

Upgrade Aerospike Database for Clusters on Kubernetes

This page describes how to upgrade Aerospike Database Enterprise Edition on your Aerospike Kubernetes Operator (AKO) deployment.

Overview

AKO performs a rolling upgrade of the Aerospike cluster by default. Because one node is upgraded at a time, there is zero downtime. A new node is created with the same pod configuration as the node that you upgraded.

For the following example, the cluster is deployed using a file named aerospike-cluster.yaml.

Upgrade Aerospike cluster

  1. To upgrade the Aerospike cluster, change the spec.image field in the AerospikeCluster CR to the name of your Aerospike Database Docker image.

    apiVersion: asdb.aerospike.com/v1
    kind: AerospikeCluster
    metadata:
    name: aerocluster
    namespace: aerospike
    spec:
    size: 2
    image: aerospike/aerospike-server-enterprise:8.0.0.2
  2. Use kubectl to apply the change.

    Terminal window
    kubectl apply -f aerospike-cluster.yaml

    The pods undergo a rolling restart.

  3. Use kubectl to watch the progress:

    Terminal window
    kubectl get pods -n aerospike
    kubectl output:
    Terminal window
    NAME READY STATUS RESTARTS AGE
    aerocluster-0-0 1/1 Running 0 3m6s
    aerocluster-0-1 1/1 Running 0 3m6s
    aerocluster-0-2 1/1 Running 0 30s
    aerocluster-0-3 1/1 Terminating 0 30s
  4. Use kubectl to get the status of the cluster. Check image for all Pods.

    Terminal window
    kubectl -n aerospike describe aerospikecluster aerocluster
    kubectl output:
    Terminal window
    Name: aerocluster
    Namespace: aerospike
    Kind: AerospikeCluster
    Status:
    Pods:
    aerocluster-0-0:
    Aerospike:
    Access Endpoints:
    10.128.15.225:31312
    Alternate Access Endpoints:
    34.70.193.192:31312
    Cluster Name: aerocluster
    Node ID: 0a0
    Tls Access Endpoints:
    Tls Alternate Access Endpoints:
    Tls Name:
    Host External IP: 34.70.193.192
    Host Internal IP: 10.128.15.225
    Image: aerospike/aerospike-server-enterprise:8.0.0.2
    Initialized Volume Paths:
    /opt/aerospike
    Pod IP: 10.0.4.6
    Pod Port: 3000
    Service Port: 31312
Feedback

Was this page helpful?

What type of feedback are you giving?

What would you like us to know?

+Capture screenshot

Can we reach out to you?