> velero

Velero for Kubernetes backup and disaster recovery. Use when the user needs to back up cluster resources and persistent volumes, restore workloads, migrate between clusters, or schedule automated backups.

fetch
$curl "https://skillshub.wtf/TerminalSkills/skills/velero?format=md"
SKILL.mdvelero

Velero

Velero backs up and restores Kubernetes cluster resources and persistent volumes for disaster recovery and migration.

Installation

# Install Velero CLI
wget https://github.com/vmware-tanzu/velero/releases/download/v1.13.0/velero-v1.13.0-linux-amd64.tar.gz
tar -xzf velero-v1.13.0-linux-amd64.tar.gz
sudo mv velero-v1.13.0-linux-amd64/velero /usr/local/bin/

AWS Setup

# Install Velero with AWS provider
velero install \
  --provider aws \
  --plugins velero/velero-plugin-for-aws:v1.9.0 \
  --bucket my-velero-backups \
  --backup-location-config region=us-east-1 \
  --snapshot-location-config region=us-east-1 \
  --secret-file ./credentials-velero \
  --use-node-agent \
  --default-volumes-to-fs-backup
# credentials-velero — AWS credentials file for Velero
[default]
aws_access_key_id=AKIA...
aws_secret_access_key=...

GCP Setup

# Install Velero with GCP provider
velero install \
  --provider gcp \
  --plugins velero/velero-plugin-for-gcp:v1.9.0 \
  --bucket my-velero-backups \
  --secret-file ./credentials-velero-gcp.json \
  --use-node-agent

Backup Operations

# Create a full cluster backup
velero backup create full-backup-$(date +%Y%m%d)

# Backup specific namespace
velero backup create app-backup \
  --include-namespaces production,staging \
  --ttl 720h

# Backup with label selector
velero backup create team-a-backup \
  --selector app.kubernetes.io/team=team-a

# Backup specific resources
velero backup create configs-backup \
  --include-resources configmaps,secrets \
  --include-namespaces default

# Exclude resources
velero backup create partial-backup \
  --exclude-namespaces kube-system,kube-public \
  --exclude-resources events

# Check backup status
velero backup describe full-backup-20240115
velero backup logs full-backup-20240115
velero backup get

Scheduled Backups

# Create scheduled backup (daily at 2am UTC)
velero schedule create daily-backup \
  --schedule="0 2 * * *" \
  --ttl 168h \
  --include-namespaces production

# Weekly full backup
velero schedule create weekly-full \
  --schedule="0 0 * * 0" \
  --ttl 720h

# List and manage schedules
velero schedule get
velero schedule describe daily-backup
velero schedule delete daily-backup
# schedule.yaml — Velero Schedule as manifest
apiVersion: velero.io/v1
kind: Schedule
metadata:
  name: daily-production
  namespace: velero
spec:
  schedule: "0 2 * * *"
  template:
    includedNamespaces:
      - production
      - database
    ttl: 168h0m0s
    storageLocation: default
    volumeSnapshotLocations:
      - default
    defaultVolumesToFsBackup: true
  useOwnerReferencesInBackup: false

Restore Operations

# Restore entire backup
velero restore create --from-backup full-backup-20240115

# Restore specific namespace
velero restore create --from-backup full-backup-20240115 \
  --include-namespaces production

# Restore to different namespace (namespace mapping)
velero restore create --from-backup app-backup \
  --namespace-mappings production:production-restored

# Restore specific resources only
velero restore create --from-backup full-backup-20240115 \
  --include-resources deployments,services,configmaps

# Check restore status
velero restore describe restore-name
velero restore logs restore-name
velero restore get

Backup Locations

# backup-location.yaml — Additional backup storage location
apiVersion: velero.io/v1
kind: BackupStorageLocation
metadata:
  name: secondary
  namespace: velero
spec:
  provider: aws
  objectStorage:
    bucket: my-velero-secondary
    prefix: backups
  config:
    region: eu-west-1
  accessMode: ReadWrite

Volume Backup Annotations

# deployment-with-backup.yaml — Deployment with volume backup annotations
apiVersion: apps/v1
kind: Deployment
metadata:
  name: database
spec:
  template:
    metadata:
      annotations:
        backup.velero.io/backup-volumes: data
    spec:
      containers:
        - name: postgres
          image: postgres:15
          volumeMounts:
            - name: data
              mountPath: /var/lib/postgresql/data
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: postgres-data

Cluster Migration

# Source cluster: create backup
velero backup create migration-backup --include-namespaces production

# Configure destination cluster with same backup location
velero backup-location create source \
  --provider aws \
  --bucket my-velero-backups \
  --config region=us-east-1 \
  --access-mode ReadOnly

# Destination cluster: restore
velero restore create --from-backup migration-backup

Common Commands

# Status and debugging
velero get backups
velero get restores
velero get schedules

# Plugin management
velero plugin get

# Delete old backups
velero backup delete old-backup-name

# Uninstall
velero uninstall

> related_skills --same-repo

> zustand

You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.

> zoho

Integrate and automate Zoho products. Use when a user asks to work with Zoho CRM, Zoho Books, Zoho Desk, Zoho Projects, Zoho Mail, or Zoho Creator, build custom integrations via Zoho APIs, automate workflows with Deluge scripting, sync data between Zoho apps and external systems, manage leads and deals, automate invoicing, build custom Zoho Creator apps, set up webhooks, or manage Zoho organization settings. Covers Zoho CRM, Books, Desk, Projects, Creator, and cross-product integrations.

> zod

You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.

> zipkin

Deploy and configure Zipkin for distributed tracing and request flow visualization. Use when a user needs to set up trace collection, instrument Java/Spring or other services with Zipkin, analyze service dependencies, or configure storage backends for trace data.

┌ stats

installs/wk0
░░░░░░░░░░
github stars17
███░░░░░░░
first seenMar 17, 2026
└────────────

┌ repo

TerminalSkills/skills
by TerminalSkills
└────────────