Configuration Settings for Aerospike Backup Service on Kubernetes
Overviewโ
Aerospike Backup Service (ABS) configuration settings are in the ABS Custom Resource (CR) file. AKO reads this file to deploy and update the backup service.
The AerospikeBackupService Custom Resource Definition (CRD) specifies the CR structure that AKO uses to manage the backup service.
CR examplesโ
CR examples are available in the main Aerospike Kubernetes Operator repository.
Example 1: CR with local storageโ
This example deploys a simple backup service using local storage.
Example 1
apiVersion: asdb.aerospike.com/v1beta1
kind: AerospikeBackupService
metadata:
name: aerospikebackupservice
namespace: aerospike
spec:
image: aerospike/aerospike-backup-service:2.0.0
config:
service:
http:
port: 8081
backup-policies:
test-policy:
parallel: 3
remove-files: KeepAll
test-policy1:
parallel: 3
remove-files: KeepAll
storage:
local:
path: /localStorage
type: local
service:
type: LoadBalancer
Example 2: CR with S3 storage and static S3 credentialsโ
This example deploys a simple backup service with S3 storage.
Example 2
apiVersion: asdb.aerospike.com/v1beta1
kind: AerospikeBackupService
metadata:
name: aerospikebackupservice
namespace: aerospike
spec:
image: aerospike/aerospike-backup-service:2.0.0
config:
service:
http:
port: 8081
backup-policies:
test-policy:
parallel: 3
remove-files: KeepAll
test-policy1:
parallel: 3
remove-files: KeepAll
storage:
s3Storage:
type: aws-s3
path: "s3://test-bucket"
s3-region: us-east-1
s3-endpoint-override: ""
s3-profile: default
secrets:
- secretName: aws-secret
volumeMount:
name: aws-secret
mountPath: /root/.aws/credentials
subPath: credentials
service:
type: LoadBalancer
Example 3: CR with S3 storage and IAM roles for Service Accounts (IRSA)โ
This example deploys a simple backup service with S3 storage.
Example 3
apiVersion: asdb.aerospike.com/v1beta1
kind: AerospikeBackupService
metadata:
name: aerospikebackupservice
namespace: aerospike
spec:
image: aerospike/aerospike-backup-service:2.0.0
config:
service:
http:
port: 8081
backup-policies:
test-policy:
parallel: 3
remove-files: KeepAll
test-policy1:
parallel: 3
remove-files: KeepAll
storage:
s3Storage:
type: aws-s3
path: "s3://test-bucket"
s3-region: us-east-1
s3-endpoint-override: ""
s3-profile: ""
service:
type: LoadBalancer
Configurationโ
The initial part of the CR file selects the CRD and the namespace to use for the ABS.
apiVersion: asdb.aerospike.com/v1beta1
kind: AerospikeBackupService
metadata:
name: aerospikebackupservice
namespace: aerospike
The rest of this page explains the parameters in the subsequent parts of the CR file. See ABS Configuration for a list of all configuration commands for ABS.
Specโ
The spec section defines the backup service's configurations.
Field | Required | Type | Default | Description |
---|---|---|---|---|
image Dynamic Rolling restart | Yes | String | Container image of Aerospike backup service to run. | |
config Dynamic Rolling restart | Yes | Structure | Aerospike backup service configuration in freeform YAML format. | |
resources Dynamic Rolling restart | No | Structure ResourceRequirements | nil | Configures resource requirements and limits like CPU or memory for the Aerospike backup service container. |
secrets Dynamic | No | Structure | nil | List of secret to be mounted in the backup service. |
service Dynamic Rolling restart | No | Structure | nil | Kubernetes service configuration for the backup service. |
Configโ
spec
-> config
The YAML form of ABS configuration. The following fields can be defined in the ABS configuration:
service
backup-policies
storage
secret-agent
Example:
config:
service:
http:
port: 8081
backup-policies:
test-policy:
parallel: 3
remove-files: KeepAll
test-policy1:
parallel: 3
remove-files: KeepAll
storage:
s3Storage:
type: aws-s3
path: "s3://test-bucket"
s3-region: us-east-1
s3-profile: default
See the ABS Configuration for more details.
Secretsโ
spec
-> secrets
Configure the secrets and their mount paths to mount the secrets in the container.
Field | Required | Type | Description |
---|---|---|---|
secretName Dynamic | Yes | String | The name of the secret. |
volumeMount Dynamic | Yes | Structure corev1.VolumeMount | Secret volume mount options. |
Serviceโ
spec
-> service
Configure the Kubernetes service for the backup service.
Field | Required | Type | Default | Description |
---|---|---|---|---|
type Dynamic | Yes | String | ClusterIP | The type of the Kubernetes service. |