Skip to main content
Loading
Version: Operator 4.0.0

Aerospike Backup Service

danger

AKO version 4.x or later does not support Aerospike Backup Service version 2.x. Upgrade to Aerospike Backup Service v3.0.0 or later. See Upgrade ABS for more information.

Overview

Aerospike Backup Service (ABS) is an external service that runs alongside an Aerospike Database deployment and manages backup and restore operations. It reads configurations in a YAML format. On a Kubernetes deployment, the configuration is provided in the ABS Custom Resource (CR) file.

Requirements

Before deploying ABS, install AKO on your Kubernetes cluster using either:

Install and deploy

We recommend using one ABS deployment per Aerospike cluster.

  1. Create service account

    Run the following command to create the ABS service account in the namespace where ABS is deployed.

    kubectl create serviceaccount aerospike-backup-service -n aerospike
    note

    You can use a different service account name. Refer to the ABS CR file to set the service account name.

  2. Configure S3 backup storage (optional)

    ABS supports S3 compatible storage as well as local storage for backups. If you use S3 compatible storage, add the credentials or roles to the ABS CR file so ABS can connect to the remote storage.

    Create a Kubernetes secret with the S3 credentials.

    kubectl -n aerospike create secret generic aws-secret --from-file=PATH_TO_AWS_CREDENTIALS

    See the AWS documentation for the format of the credentials file.

    Mount the aws-secret secret in the ABS pod by adding the secrets field in the ABS CR.

    secrets:
    - secretName: aws-secret
    volumeMount:
    name: aws-secret
    mountPath: /root/.aws/credentials
    subPath: credentials
  3. Prepare your ABS CR file.

    Aerospike publishes sample CR files in the main Aerospike Kubernetes Operator GitHub repository.

    See Backup Service Configuration for details of the available configuration parameters.

    You can edit the ABS CR file at any time to manage and change the backup service configuration.

  4. Deploy ABS.

    Run kubectl apply on the CR file you created to deploy ABS.

    kubectl apply -f aerospikebackupservice.yaml -n aerospike
  5. Verify ABS status.

    Run kubectl get deployment to check that AKO has created the ABS deployment.

    $ kubectl get deployment -n aerospike

    NAME READY UP-TO-DATE AVAILABLE AGE
    aerospikebackupservice-sample 1/1 1 1 9s

    Run kubectl get pods to check the pods to confirm the status. This step may take time as the pods provision resources, initialize, and become ready. Wait for the pods to switch to the Running state before you continue.

    $ kubectl get pods -n aerospike

    NAME READY STATUS RESTARTS AGE
    aerospikebackupservice-sample-7b7f7b5648-kpfxh 1/1 Running 0 43s

Next steps

Now that the backup service is running, you can use another CR file to perform a backup or a restore.

See Backup and Restore for more information.