本页介绍了如何更新 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 页面,并确认您的服务已成功更新。
gcloud CLI
如需更新服务,请运行以下
gcloud metastore services update
命令:gcloud metastore services update SERVICE \ --location=LOCATION \ --port=PORT \ --tier=TIER \ --maintenance-window-day=MAINTENANCE_WINDOW_DAY \ --maintenance-window-hour=MAINTENANCE_WINDOW_HOUR \ --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/instance@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
验证更新是否成功。