Before you touch a `velero backup create` command, you need to master kubectl and cluster access, understand Kubernetes resources like Deployment and PVC, and grasp S3-compatible object storage concepts. In this episode you prepare a cluster, install the velero CLI 1.18, provide a MinIO/S3 backend, and verify the environment is ready.

Welcome to the Learning Velero series! This series will take you from installation, backup/restore, scheduling, to cross-cluster migration and production disaster recovery as you master Velero — the open source tool for backing up, restoring, and migrating Kubernetes resources and persistent volumes. There are 23 episodes in total, arranged across six phases, from fundamentals to production readiness.
Before running velero backup create for the first time, there are base skills and software you must have. Why are these prerequisites important? Because Velero runs as an application inside the cluster (not an external agent): it communicates with the Kubernetes API server to read resources, and writes data to object storage. You need to understand both worlds.
Episode 0 is your roadmap: we make sure the base skills are covered, set up the cluster and object storage, install the velero CLI, and verify the environment for the first time.
Velero is controlled via its CLI and runs inside the cluster. You should be fluent with kubectl for reading cluster state:
kubectl cluster-info
kubectl get nodes
kubectl get nsYou should also be comfortable managing contexts (kubectl config use-context), because the cross-cluster migration in episode 11 will use different contexts.
Understand the three resources that are most commonly backed up:
If these three concepts are still fuzzy, the learn-kubernetes series is the right primer to read before continuing.
Velero stores manifests and data files in a bucket on object storage. The concepts you must understand: bucket, key/prefix, region, credential (access key), and endpoint URL. Example services: AWS S3, Google Cloud Storage, or MinIO (an S3-compatible service you can run on your laptop).
Use one of the following depending on your needs:
Verify your cluster version because Velero 1.18 is compatible with Kubernetes 1.18 up to the latest version (tested on 1.33.7, 1.34.1, and 1.35.0):
kubectl version --shortDownload the CLI binary whose version must match the Velero server you are about to install:
curl -LO https://github.com/velero-io/velero/releases/download/v1.18.0/velero-v1.18.0-linux-amd64.tar.gz
tar -xzf velero-v1.18.0-linux-amd64.tar.gz
sudo mv velero-v1.18.0-linux-amd64/velero /usr/local/bin/velero
velero version --client-onlyYou need at least one bucket. For local practice, run MinIO via Docker:
services:
minio:
image: minio/minio:latest
ports:
- "9000:9000"
- "9001:9001"
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minioadmin
command: server /data --console-address ":9001"
volumes:
- minio-data:/data
volumes:
minio-data:Once MinIO is running, create a velero bucket via the web console at http://localhost:9001 or with mc (MinIO Client). For EKS/GKE, you use AWS S3 or GCS buckets with cloud credentials — we prepare those in episodes 3 and 13.
Note
Version pairing is critical: CLI 1.18 uses Velero server 1.18. Mixing different CLI and server versions generally still works for basic operations, but always match versions to avoid flag behavior and data format differences.
Before moving on to episode 1, run a thorough verification:
velero version --client-only
kubectl cluster-info
curl -s http://localhost:9000/minio/health/liveAll three commands must succeed: CLI 1.18 ready, cluster accessible, and MinIO alive. You should also have an object storage bucket (or cloud credentials) ready to be used as the backup location.
Key takeaways:
velero version, kubectl cluster-info, and an object storage health check.In episode 1 next, we will cover history, background, and why you need Velero — from its Heptio origins, its status as a CNCF project, to the real problems it solves: API resource plus volume backup, selective restore, cross-cluster migration, and disaster recovery without vendor lock-in. Make sure your environment is ready, because the Learning Velero journey is just beginning!