备份恢复
从 https://github.com/heptio/velero/releases 下载最新的稳定版。
以 Azure 为例,安装 Velero 需要以下步骤:
(2)创建 service principal
AZURE_SUBSCRIPTION_ID=`az account list --query '[?isDefault].id' -o tsv`
AZURE_CLIENT_SECRET=`az ad sp create-for-rbac --name "velero" --role "Contributor" --query 'password' -o tsv`
AZURE_CLIENT_ID=`az ad sp list --display-name "velero" --query '[0].appId' -o tsv`
AZURE_SUBSCRIPTION_ID=${AZURE_SUBSCRIPTION_ID}
AZURE_TENANT_ID=${AZURE_TENANT_ID}
AZURE_CLIENT_ID=${AZURE_CLIENT_ID}
AZURE_RESOURCE_GROUP=${AZURE_RESOURCE_GROUP}
(3)启动 Velero
velero schedule create <SCHEDULE NAME> --schedule "0 7 * * *"
首先,在集群 1 中创建备份(默认 TTL 是 30 天,你可以使用 —ttl 来修改):
velero backup create <BACKUP-NAME>
然后,为集群 2 配置 BackupStorageLocations 和 VolumeSnapshotLocations,指向与集群 1 相同的备份和快照路径,并确保 BackupStorageLocations 是只读的(使用 —access-mode=ReadOnly)。接下来,稍微等一会(默认的同步时间为 1 分钟),等待 Backup 对象创建成功。
velero restore create --from-backup <BACKUP-NAME>
velero restore get
velero restore describe <RESTORE-NAME-FROM-GET-COMMAND>