升级转换 API编辑

升级所有转换。

请求编辑

POST _transform/_upgrade

先决条件编辑

需要以下权限

  • 集群:manage_transformtransform_admin 内置角色授予此权限)

描述编辑

转换在次要版本之间以及受支持的主要版本之间兼容。但是,随着时间的推移,转换配置信息的格式可能会发生变化。此 API 标识具有旧配置格式的转换,并将其升级到最新版本;包括清理存储转换状态和检查点的内部数据结构。转换升级不会影响源索引和目标索引。

从 Elasticsearch 8.10.0 开始,使用新的版本号来跟踪转换插件中的配置和状态更改。此新版本号与产品版本分离,并将独立递增。

如果转换升级步骤失败,升级将停止,并返回有关底层问题的错误。解决问题后,请重新运行该过程。升级完成后,将返回摘要。

为了确保在集群的主要版本升级期间(例如,从 7.16 升级到 8.0)连续转换保持运行,建议在升级集群之前升级转换。您可能希望在升级之前执行最近的集群备份。

  • 启用 Elasticsearch 安全功能后,您的转换会记住上次创建或更新它的用户的角色。与更新转换相比,转换升级不会更改存储的角色,因此用于读取源数据和写入目标索引的角色保持不变。

查询参数编辑

dry_run
(可选,布尔值)如果为 true,则仅检查更新,但不执行更新。默认为 false
timeout
(可选,时间)等待响应的时间段。如果在超时到期之前未收到响应,则请求失败并返回错误。默认为 30 秒

响应正文编辑

needs_update
(整数)需要升级的转换数量。
no_action
(整数)不需要升级的转换数量。
updated
(整数)已升级的转换数量。

示例编辑

要将旧版转换升级到最新的配置格式,请执行以下 API 调用

response = client.transform.upgrade_transforms
puts response
POST _transform/_upgrade

升级所有转换后,您将收到摘要

{
  "needs_update": 0,
  "updated": 2,
  "no_action": 1
}