本页面介绍如何使用 Backup for GKE 服务在 Google Kubernetes Engine (GKE) 中创建工作负载备份。
简介
备份会捕获两种形式的数据:
- 配置备份:从正在备份的集群的 API 服务器中提取的一组 Kubernetes 资源说明。
- 卷备份:一组与配置备份中找到的
PersistentVolumeClaim
资源相对应的卷。
如果您的备份方案定义了备份的时间表,则系统会自动根据该时间表创建备份。您也可以手动创建备份。例如,您可能希望在升级应用之前备份工作负载。
准备工作
所需的角色
如需获得创建和管理备份所需的权限,请让您的管理员为您授予 Backup for GKE Backup Admin (roles/gkebackup.backupAdmin
),该角色是项目的 Backup for GKE Admin (roles/gkebackup.admin
) IAM 角色的子集。如需详细了解如何授予角色,请参阅管理访问权限。
创建手动备份
您可以使用 Google Cloud CLI 或 Google Cloud 控制台为备份方案手动创建备份。
gcloud
运行以下命令:
gcloud beta container backup-restore backups create BACKUP \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN \
WAIT_OPTION
替换以下内容:
BACKUP
:您要创建的备份的名称。PROJECT_ID
:您的 Google Cloud 项目的 ID。LOCATION
:父级备份方案的计算区域。BACKUP_PLAN
:派生备份的父级备份方案的名称。WAIT_OPTION
:定义该命令何时应返回:--async
:命令会在收到服务确认后尽快返回;几乎是立即返回。- (默认):一旦服务指示集群中的代理开始备份过程,命令便会返回;通常会在几秒钟内返回。
--wait-for-completion
:等到代理完成集群中的备份操作。这可能需要几分钟时间。
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups create
文档。
控制台
使用以下说明在 Google Cloud 控制台中创建手动备份:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份方案标签页。
展开集群并找到要为其创建备份的方案。
点击开始备份。
输入备份名称和可选说明。
(可选)设置在自动删除备份之前保留备份的天数。
(可选)设置无法删除备份的天数。
点击开始备份。
查看备份
可以使用 gcloud CLI 或 Google Cloud 控制台查看备份及其详细信息。
gcloud
如需列出所有备份方案来查找某一备份方案,请运行以下命令:
gcloud beta container backup-restore backups list \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN
仅针对 list
命令,您可以提供“-”作为除 PROJECT_ID
以外的任何参数的值,-
充当通配符。如果您未指定命令行选项或未设置属性,则 -
是任何参数的默认值。
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups list
文档。
如需查看备份的详细信息,请运行以下命令:
gcloud beta container backup-restore backups describe BACKUP \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups describe
文档。
控制台
使用以下说明在 Google Cloud 控制台中查看备份及其详情:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份标签页。
展开备份方案,然后点击备份名称。
查看备份索引
备份索引提供备份中包含的资源的相关信息。通过备份索引,您可以确定特定资源是否进行了备份。备份索引会显示资源详细信息,例如资源名称、资源类型、群组和版本。
您可以使用 gcloud CLI 或 Google Cloud 控制台查看备份索引。
gcloud
查看备份中每个资源的群组、版本、种类和名称:
gcloud beta container backup-restore backups get-backup-index-download-url BACKUP \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN
该命令会生成一个网址,供您查看和下载备份索引。该网址会在 10 分钟后过期。
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups get-backup-index-download-url
文档。
控制台
请按照以下说明在 Google Cloud 控制台中查看备份索引及其详细信息:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份标签页。
展开备份方案,然后点击备份名称。
点击备份索引。
查看卷备份
在备份范围内遇到 PersistentVolumeClaims
时,代理会自动创建卷备份资源。 每个卷备份对应一个永久性磁盘快照。代理会在备份操作的过程中自动创建和管理这些资源。 您可以使用 gcloud CLI 或 Google Cloud 控制台查看卷备份及其详细信息。
gcloud
如需列出所有卷备份来查找某一备份,请运行以下命令:
gcloud beta container backup-restore volume-backups list \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN \
--backup=BACKUP
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore volume-backups list
文档。
如需查看卷备份的详细信息,请运行以下命令:
gcloud beta container backup-restore volume-backups describe VOLUME_BACKUP \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN \
--backup=BACKUP
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore volume-backups describe
文档。
控制台
请按照以下说明在 Google Cloud 控制台中查看卷备份详细信息:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份标签页。
展开备份方案,然后点击备份名称。
点击存储内容标签页。
备份会显示以下存储内容详细信息:永久性卷声明名称、永久性卷名称、命名空间、磁盘句柄、卷类型和卷备份名称。
点击卷备份以查看卷备份详情。
更新备份
您可能希望修改备份的相关信息,例如其说明或标签。更改说明或标签不会影响备份的处理方式。
您可能还需要修改备份的保留政策,例如保留备份的时长,或者无法删除备份的时间段。您只能增加保留政策参数。
可以使用 gcloud CLI 或 Google Cloud 控制台更新备份。
gcloud
如需更新备份(例如通过添加新说明),请运行以下命令:
gcloud beta container backup-restore backups update BACKUP\
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN \
--description=DESCRIPTION
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups update
文档。
控制台
使用以下说明在 Google Cloud 控制台中更新备份:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份标签页。
展开备份方案,然后点击备份名称。
点击 edit 修改以修改备份部分,然后点击保存更改。
删除备份
您可以通过以下两种方式删除备份:
- 如果备份方案定义了保留期限,则为该方案创建的备份会在该期限到期后自动删除。
- 您可以手动删除备份。
如果此备份的备份方案定义了备份的最短生命周期,并且配置了 --backup-delete-lock-days
标志,则在此生命周期过期之前,都无法删除为该方案创建的备(无论是自动删除还是手动删除)。
您可以使用 gcloud CLI 或 Google Cloud 控制台手动删除备份。
gcloud
如需删除备份,请运行以下命令:
gcloud beta container backup-restore backups delete BACKUP \
--project=PROJECT_ID \
--location=LOCATION \
--backup-plan=BACKUP_PLAN
如需查看选项的完整列表,请参阅 gcloud beta container backup-restore backups delete
文档。
控制台
使用以下说明在 Google Cloud 控制台中删除备份:
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在导航菜单中,点击 Backup for GKE。
点击备份标签页。
展开该方案,然后点击备份名称。
点击 delete 删除备份。
输入备份方案名称,然后点击确认对话框中的删除备份。
后续步骤
- 详细了解如何规划一组恢复。