For Kubernetes: Installing and configuring Velero

To protect cluster-scoped resources and namespace-scoped resources in your container workloads, you must install and configure Velero in a dedicated namespace. The suggested default for this namespace is spp-velero.

Before you begin

If you installed an instance of Velero in the cluster for another purpose, you must install another instance of Velero for IBM Spectrum® Protect Plus. Follow the instructions in Installing a second instance of Velero.

About this task

Velero is required to protect cluster-scoped and namespace-scoped resources. If Velero is installed in a cluster in the default namespace, called spp-velero, you can uninstall Velero and follow this procedure to install a new instance.

Procedure

  1. Download the supported Velero installation package from the following VMware download site:
    To download Velero, run the following command in the kubectl command-line tool:
    curl -fsSL -o velero-version-linux-amd64.tar.gz https://github.com/vmware-tanzu/velero/releases/download/version/velero-version-linux-amd64.tar.gz
    
    For example, to download Velero 1.9.0, issue the following command:
    curl -fsSL -o velero-v1.9.0-linux-amd64.tar.gz https://github.com/vmware-tanzu/velero/releases/download/v1.9.0/velero-v1.9.0-linux-amd64.tar.gz
  2. Extract the .tar file by issuing the following command:
    tar -xvf velero-version-linux-amd64.tar.gz
  3. Change to the directory where the extracted .tar file is located and run the following command:
    ./velero install \
            --use-volume-snapshots=false \
            --no-default-backup-location \
            --no-secret \
            --plugins velero/velero-plugin-for-aws:plugin_version \
            -n spp-velero
    
    where the value for plugin_version differs depending on the version of Velero that is installed.
    • For Velero 1.7, specify v1.3.0
    • For Velero 1.8, specify v1.4.0
    • For Velero 1.9, specify v1.5.0
    When the installation is finished, a message similar to the following message is displayed:
    No secret file was specified, no Secret created.
    
    No bucket and provider were specified, no default backup storage location created.
    
    Velero is installed! ⛵ Use 'kubectl logs deployment/velero -n spp-velero' to view the status.

    In this example, the Velero namespace parameter was named spp-velero by changing the velero_namespace parameter in the baas-values-cr.yaml file.

  4. Ensure that Velero is installed and running by issuing the following command:
    kubectl describe deployment velero -n spp-velero | grep Image
    The output is similar to the following examples:
    • For Velero 1.7, the following output is displayed:
      Image:      velero/velero-plugin-for-aws:v1.3.0
      Image:      velero/velero:v1.7.0
    • For Velero 1.8, the following output is displayed:
      Image:      velero/velero-plugin-for-aws:v1.4.0
      Image:      velero/velero:v1.8.0
    • For Velero 1.9, the following output is displayed:
      Image:      velero/velero-plugin-for-aws:v1.5.0
      Image:      velero/velero:v1.9.0

What to do next

After you install Velero and Container Backup Support and before you can protect cluster-scoped and namespace-scoped resources, you must run an inventory in the IBM Spectrum Protect Plus user interface so that the Velero instance is detected. For instructions, see Detecting Kubernetes resources.

During the inventory operation, the BackupStorageLocation that connects to the BaaS MinIO data mover is created automatically.

If you no longer require Velero, you can uninstall it. Uninstalling Velero will delete the namespace along with the Velero application.

For Velero 1.7.0 and later, use the Velero uninstall command:
./velero uninstall --namespace namespace_for_velero_install
where namespace_for_velero_install specifies the namespace where Velero is installed, for example, spp-velero.