Skip to content

Instantly share code, notes, and snippets.

@kelvintaywl
Last active January 29, 2024 00:17
Show Gist options
  • Save kelvintaywl/98a1535863739514d79dbc0f4f6784a1 to your computer and use it in GitHub Desktop.
Save kelvintaywl/98a1535863739514d79dbc0f4f6784a1 to your computer and use it in GitHub Desktop.

Notes on Velero and CircleCI Server

Important

As per CircleCI Server 3.x and 4.x documentation, CircleCI Server uses Velero (and Restic) to manage backups.

CircleCI Server admins install Velero and Restic via the command:

# --use-restic will install Restic
# see https://velero.io/docs/v1.9/restic/#install-restic
$ velero install \
    ...
    --provider gcp \
    --plugins velero/velero-plugin-for-gcp:v1.2.0 \
    --use-restic \
    --wait

Note: that Velero will install the server version according the the client (CLI) version.

As of Velero >= v1.10, the --use-restic option is no longer available.

Importantly, Velero >= 1.10 will interact with Restic binary directly: https://velero.io/docs/v1.10/file-system-backup/#how-velero-integrates-with-restic

NOTE: Restic can still be used with Velero >= 1.10; The way to install and interact with Restic is different likely.

Concerns

1. Ensuring the right Velero version is installed

CircleCI docs mention installing the latest Velero. Right now, this would be Velero v1.11.0, however: https://github.com/vmware-tanzu/velero

This is problematic since the docs is referring to Restic usage as of Velero <= 1.9.x https://circleci.com/docs/server/operator/backup-and-restore/#creating-backups

I believe the way to run backups with Restic with Velero >= 1.10.0 will be different; I think it would be via using the Restic binary directly? See https://velero.io/docs/v1.11/file-system-backup/#how-velero-integrates-with-restic

It would thus be good to confirm how Restic + Velero >= v1.10.0 works for CircleCI Server backups.

2. Ensuring the right plugin version is installed

Beyond the Velero version, it is important to check the AWS or GCP plugin's compatibility with Velero version:

Right now, the CircleCI docs refer to velero/velero-plugin-for-aws:v1.2.0 specifically: https://circleci.com/docs/server/installation/phase-4-post-installation/#set-up-backup-and-restore-on-aws

We note that for Velero 1.9.x, velero/velero-plugin-for-aws:v1.5.x should be used.

It would also be good to confirm if v1.2.0 are fine for all Velero versions <= 1.9.x. Otherwise, the CircleCI docs would require an update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment