Backups

how do we do backups

Data Backup and Recovery in the IGAAWI Infrastructure

S3 Buckets

The project uses S3 buckets for storing application data. The primary production bucket is:

  • Backend: igaawi-prod-api-backend-bucket

The bucket has versioning enabled and CORS configured for wiperinstall.rainx.com and api.wiperinstall.rainx.com. Public read access is configured for the public/* and web/* prefixes (AI models and 3D wiper models).

See more instruction in the official documentation #1 official documentation #2

Kubernetes Cluster Backup Using Velero

To protect data and configurations in our Kubernetes cluster, we use Velero — a tool for backup and recovery of Kubernetes resources. Backups are created daily and include:

  • All resources and objects in namespaces (Pods, Services, Deployments, etc.),
  • PVCs (if a snapshot provider is configured),
  • Associated metadata and configurations.

Backups are stored in the following S3 buckets:

  • Production: igaawi-prod-eks-backup

Example: Creating a Backup and Restoring from a Backup

For example, let’s say we need to create a backup of the prod namespace using the following command:

velero backup create velero-prod-$(date +%Y%m%d%H%M) --include-namespaces prod

Suppose we need to restore the prod namespace in the production cluster from the backup. This can be done using the following command:

velero restore create --from-backup velero-prod-20260622024511 --namespace-mappings prod:prod-restored

After executing the command, Velero will create all resources from the backup in the prod-restored namespace, where the recovery can be tested or migrated back.

See more instruction about velero in the official documentation