本页面介绍了如何更新 Dataproc Metastore 服务。
您可以更新 Dataproc Metastore 服务,以更改配置设置,或启用或停用可选功能。
准备工作
所需的角色
如需获得更新 Dataproc Metastore 服务所需的权限,请让管理员根据最小权限原则向您授予项目的以下 IAM 角色:
- 授予对 Dataproc Metastore 资源的完全控制权 (
roles/metastore.editor) - 授予对所有 Dataproc Metastore 资源的完全访问权限,包括 IAM 政策管理 (
roles/metastore.admin)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含
metastore.services.update
权限,
这是更新 Dataproc Metastore 服务所必需的。
关于更新服务
您可以更新以下 Dataproc Metastore 参数。
- 端口号 。更新 Apache Thrift 接口的 TCP 端口号。
- 服务层级 。在开发者 服务层级或企业 服务层级之间切换。这些层级会影响服务的容量。
- Data Catalog 同步 。开启或关闭 Data Catalog 同步功能。
- 维护窗口 。更改维护窗口的频率,包括星期几 和整点时刻 。
- Kerberos 。启用或停用 Kerberos 身份验证。如果之前已启用,您可以更新 Kerberos 配置文件。
- Hive Metastore 配置 。更新 Hive 仓库目录的位置。
- 辅助版本配置 (预览版)。启用、停用或添加其他辅助版本。
- 标签 。添加或移除用于描述元数据的可选标签。
- 缩放比例 。更改缩放比例。您可以启用或停用自动伸缩,并更新最小或最大缩放比例。
更新服务
在运行更新之前,请注意以下注意事项:
- 您一次只能运行一个更新作业(针对每个 Dataproc Metastore 服务)。
- 您可以在单个更新作业中更新多个参数。
- 您可以在 Dataproc Metastore 更新期间继续使用它。
更新成功后,Dataproc Metastore 会自动进入活跃状态。如果更新失败,Dataproc Metastore 服务会回滚到之前的正常状态。
以下说明介绍了如何更新 Dataproc Metastore 服务。
控制台
在 Google Cloud 控制台中,打开 Dataproc Metastore 页面:
在 Dataproc Metastore 页面上,点击要更新的服务的名称。
此时会打开服务详情 页面。
Dataproc Metastore 服务详情页面 在配置 标签页中,点击修改 。
此时会打开修改服务 页面。
为服务选择要更新的值。
点击提交 。
返回 Dataproc Metastore 页面,并验证服务是否已成功更新。
gcloud CLI
如需更新服务,请运行以下
gcloud metastore services update命令:gcloud metastore services update SERVICE \ --location=LOCATION \ --port=PORT \ --tier=TIER \ --kerberos_principal=KERBEROS_PRINCIPAL \ --keytab=KEYTAB \ --krb5-config=KRB5_CONFIG \ --update-hive-metastore-configs-from-file=[KEY=VALUE, ...] \ --clear-hive-metastore-configs \ --remove-hive-metastore-configs=[KEY, ...] \ --update-labels=[KEY=VALUE, ...] \ --clear-labels \ --remove-labels=[KEY, ...]替换以下内容:
SERVICE:Dataproc Metastore 服务的名称。LOCATION:Dataproc Metastore 服务所在的 Google Cloud 区域。PORT:(可选)您用于 Dataproc Metastore 服务的 Thrift 接口的 TCP 端口。TIER:(可选)Dataproc Metastore 服务的层级容量。MAINTENANCE_WINDOW_DAY:(可选)服务窗口开始的星期几。MAINTENANCE_WINDOW_HOUR:(可选)服务窗口开始的整点时刻。KERBEROS_PRINCIPAL:(可选)keytab 和 KDC 中存在的 Kerberos 主账号。典型的正文格式为“primary/实例@REALM”,但系统没有规定确切的格式。KEYTAB:(可选)用于通过 Kerberos 密钥分发中心对服务主账号进行身份验证的 Kerberos keytab 文件。KRB5_CONFIG:(可选)krb5.config 文件指定 KDC 和 Kerberos 大区信息,其中包括 KDC 的位置以及大区和 Kerberos 应用的默认值。[KEY, ...]:(可选)您要更新的 Hive Metastore 配置。 如果此字段中存在变量,则其值会更新。否则,系统会创建一个新变量。 如果设置了此标志,系统也会自动设置-clear-hive-metastore-configs。[KEY, ...]:(可选)您要移除的 Hive Metastore 配置。[KEY=VALUE, ...]:(可选)您要更新的标签或 Hive Metastore 键值对配置。[KEY, ...]:(可选)您要移除的标签或 Hive Metastore 键值对配置。
验证更新是否成功。
REST
按照 API 说明使用 API Explorer 更新服务 。
更新 Hive Metastore 仓库配置
如果您的 Hive 仓库目录位于 Cloud Storage 上,您应设置 Metastore 配置替换。此替换会将您的特定数据仓库设置为 Dataproc Metastore 的默认仓库目录
在设置此替换之前,请确保您的 Dataproc Metastore 服务具有访问仓库目录的对象读取和写入权限。如需了解详情,请参阅 Hive 仓库目录。
以下说明介绍了如何更新 Hive Metastore 配置替换。
控制台
在 Google Cloud 控制台中,打开 Dataproc Metastore 页面:
在 Dataproc Metastore 页面上,点击要更新的服务的名称。
此时会打开服务详情 页面。
在配置 标签页中,点击修改 。
此时会打开修改服务 页面。
在 Metastore 配置替换 中,输入以下内容:
- 键:输入以下值:
hive.metastore.warehouse.dir。 - 值:仓库目录的 Cloud Storage 位置。例如:
gs://my-bucket/path/to/location。
- 键:输入以下值:
点击提交 。
返回 Dataproc Metastore 页面,并验证服务是否已成功更新。
gcloud
如需更新服务,请运行以下
gcloud metastore services update命令:gcloud metastore services update SERVICE \ --location=LOCATION \ --update-hive-metastore-configs="hive.metastore.warehouse.dir=CUSTOMER_DIR"替换以下内容:
SERVICE:Dataproc Metastore 服务的名称。LOCATION:Dataproc Metastore 服务所在的 Google Cloud 区域。CUSTOMER_DIR:仓库目录的 Cloud Storage 位置。 例如:gs://my-bucket/path/to/location
验证更新是否成功。