本页面介绍了如何升级实例或批处理流水线的版本。
将 Cloud Data Fusion 实例和批处理流水线升级到最新的平台和插件版本,以获取最新功能、bug 修复和性能提升。
准备工作
- 为升级计划计划停机时间。 此过程最多需要一个小时。
-
在 Google Cloud 控制台中,激活 Cloud Shell。
限制
创建 Cloud Data Fusion 实例后,您无法更改其版本,即使通过升级操作也无法更改。
不支持升级实时流水线,但在 6.8.0 版中使用 Kafka 实时来源创建的流水线除外。如需获取解决方法,请参阅升级实时流水线。
Cloud Data Fusion 不会重启因升级操作而停止的流水线。
升级 Cloud Data Fusion 实例
如需将 Cloud Data Fusion 实例升级到新的 Cloud Data Fusion 版本,请转到实例详情页面:
在 Google Cloud 控制台中,转到 Cloud Data Fusion 页面。
点击实例,然后点击相应实例的名称以转到实例详情页面。
然后使用 Google Cloud 控制台或 gcloud CLI 执行升级:
控制台
点击升级以获取可用版本的列表。
选择一个版本。
点击升级。
验证升级是否成功:
刷新实例详情页面。
点击查看实例以在 Cloud Data Fusion 网页界面中访问已升级的实例。
点击菜单栏中的系统管理员。
新的版本号会显示在页面顶部。
如需避免在新版本中运行流水线时流水线卡住,请在升级后的实例中授予所需的角色。
gcloud
如需升级到新的 Cloud Data Fusion 版本,请从本地终端 Cloud Shell 会话运行以下 gcloud CLI 命令:
gcloud beta data-fusion instances update \ --project= \ --location= \ --version=
可选:如果适用于您的实例,请添加
--enable_stackdriver_logging
、--enable_stackdriver_monitoring
和--labels
标志。可选:您可以将 CDAP 属性(例如
enable.unrecoverable.reset
)作为--options
传递。
请按照以下步骤验证升级是否成功:
在 Google Cloud 控制台中,转到 Cloud Data Fusion 实例页面。
点击查看实例以在 Cloud Data Fusion 网页界面中访问已升级的实例。
点击菜单栏中的系统管理员。
新的版本号会显示在页面顶部。
如需避免在新版本中运行流水线时流水线卡住,请在升级后的实例中授予所需的角色。
升级批处理流水线
要升级 Cloud Data Fusion 批处理流水线以使用最新的插件版本,请执行以下操作:
建议:备份所有流水线。您可以通过以下两种方式之一备份流水线:
按照以下步骤下载 ZIP 文件:
- 如需触发 ZIP 文件下载,请使用以下命令备份所有流水线:
echo $CDAP_ENDPOINT/v3/export/apps
- 将输出的网址复制到浏览器。
- 解压缩下载的文件,然后确认已导出所有流水线。流水线按命名空间组织。
使用 Source Control Management (SCM) 备份流水线(在 6.9 版及更高版本中提供)。SCM 提供 GitHub 集成,可用于备份流水线。
按照以下步骤升级流水线:
创建一个变量,该变量指向您将在下一步中创建的
pipeline_upgrade.json
文件,以保存流水线列表。export PIPELINE_LIST=PATH/pipeline_upgrade.json
将 PATH 替换为该文件的路径。
使用以下命令创建实例和命名空间的所有流水线列表。结果以
JSON
格式存储在$PIPELINE_LIST
文件中。您可以修改该列表以移除不需要升级的流水线。curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps -o $PIPELINE_LIST
将 NAMESPACE_ID 替换为您希望执行升级的命名空间。
升级
pipeline_upgrade.json
中列出的流水线。插入要升级的流水线的 NAMESPACE_ID。该命令会显示升级后的流水线及其升级状态的列表。curl -N -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/upgrade --data @$PIPELINE_LIST
将 NAMESPACE_ID 替换为要升级的流水线的命名空间 ID。
为防止您在新版本中运行流水线时卡住,请在升级后的实例中授予所需的角色。
升级实时流水线
不支持升级实时流水线,但在 6.8.0 版中使用 Kafka 实时来源创建的流水线除外。
对于其他所有操作,您可以改为执行以下操作:
- 停止并导出流水线。
- 升级实例。
- 将实时流水线导入升级后的实例。
升级以启用复制功能
您可以在 6.3.0 版或更高版本的 Cloud Data Fusion 环境中启用复制功能。如果您使用的是 6.2.3 版,请升级到 6.3.0,然后再升级到最新版本。然后,您可以启用复制功能。
为升级后的实例授予角色
升级完成后,向项目中的 Dataproc 服务帐号授予 Cloud Data Fusion Runner 角色 (roles/datafusion.runner
) 和 Cloud Storage Admin 角色 (roles/storage.admin
)。
后续步骤
- 为 Cloud Data Fusion 实例管理补丁修订版本。
- 了解 Cloud Data Fusion 中的版本控制。
- 请参阅可用的版本和补丁修订版本升级。
- 排查升级问题。