使用备份恢复服务

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

借助恢复功能,您可以从备份中恢复 Dataproc Metastore 服务存储的元数据和配置。

本页面介绍如何恢复 Dataproc Metastore 服务的元数据。

访问权限控制机制

  • 要恢复元数据,您必须申请一个包含 metastore.services.restoremetastore.backups.use IAM 权限的 IAM 角色。Dataproc Metastore 特定角色 roles/metastore.adminroles/metastore.editor 包含恢复权限。

  • 您可以使用 roles/ownerroles/editor 旧版角色为用户或群组授予恢复权限。

如需了解详情,请参阅 Dataproc Metastore IAM 和访问权限控制

使用备份恢复服务

要从某个备份中恢复服务,请在本地浏览器中打开的“Service 详情”页面中选择一个备份,请使用 gcloud CLI,或发出 Dataproc Metastore API 方法 services.restore

您可以选择使用当前服务配置恢复元数据,或者使用备份服务配置恢复元数据。您可以同时恢复元数据和备份服务配置。配置包括网络、端口和服务层级等设置,您可以使用 API 方法 service.update 更改这些配置。

在恢复待处理时,您无法对服务进行任何更新。在服务进行恢复期间,您仍然可以使用该服务。

如需从备份恢复 Dataproc Metastore 服务,请完成以下步骤:

控制台

  1. 在 Cloud Console 中,打开 Dataproc Metastore 页面:

    在 Cloud Console 中打开 Dataproc Metastore

  2. Dataproc Metastore 页面上,点击要将元数据恢复到的服务的名称。服务详情页面随即打开。

    服务详情页面
  3. 点击备份/恢复标签页以查看该服务的备份。

  4. 在您要使用的备份右侧,点击 并选择恢复。系统会打开恢复页面。

    您还可以在“备份详情”页面上恢复您的服务,方法是点击要使用的备份名称,然后点击恢复

  5. 选择恢复选项:

    • 恢复 Metastore 数据

      仅恢复备份中存储的数据内容。

    • 恢复 Metastore 数据和服务配置

      恢复备份中存储的数据内容,并将备份中存储的服务配置应用到当前服务。

  6. 点击恢复以更新服务。

  7. 确认您已返回服务详情页面,并且您的恢复结果显示在备份/恢复标签页上的恢复历史记录下。

gcloud

  1. 运行以下 gcloud metastore services restore 命令可将元数据恢复到服务中:

    gcloud metastore services restore SERVICE  \
        --location=LOCATION \
        --backup=BACKUP \
        --restore-type=RESTORE_TYPE
        --project=PROJECT_ID
    

    替换以下内容:

    • SERVICE:服务的名称。
    • LOCATION:服务的位置。
    • BACKUP:要从中恢复的备份资源。这可以是备份 ID、完全限定网址或相对名称。
    • RESTORE_TYPE:要执行的恢复类型。默认为 metadata-only
    • PROJECT_ID:服务项目。
  2. 验证恢复是否成功。

REST

按照 API 说明使用 API Explorer 将元数据恢复到服务中

恢复成功后,该服务会自动进入活动状态。如果失败,服务将回滚到其之前运行状况良好的状态。

如需查看服务的恢复历史记录,请参阅 Cloud Console 中服务详情页面上的备份/恢复标签页。

恢复注意事项

  • Dataproc Metastore 服务标签和数据仓库目录中的实际数据不会恢复。

  • 您只能通过从与目标服务位于同一项目和地区的 Dataproc Metastore 服务创建的备份恢复元数据。

    • 您可以使用 Google Cloud CLI 或 REST API 方法从跨服务备份恢复元数据。
  • 使用备份进行恢复不会恢复或替换精细的 IAM 政策。

  • 界面中可查看之前恢复操作的历史记录。删除服务本身会删除该服务下的所有恢复历史记录。

常见的失败情况

  • 从备份恢复 Dataproc Metastore 服务的用户没有 metastore.services.restoremetastore.backups.use 权限。

后续步骤