取消配置工作流
当您不再需要工作流时,可以解除其资源的配置。大多数创建资源的工作流步骤都有相应的步骤来撤销该操作。要检索当前为工作流创建的所有资源,请调用 Get Workflow Status API。当您调用 Deprovision Workflow API 时,Get Workflow Status API 响应的 resources_created
字段中包含的资源将使用与其配置它们的工作流步骤相对应的步骤被移除。
工作流按相反顺序执行配置步骤。如果因资源依赖(例如,尝试删除仍处于部署状态的注册模型)而发生故障,则只要至少有一个资源被删除,工作流就会重试失败的步骤。
为防止数据丢失,使用 create_index
、create_search_pipeline
和 create_ingest_pipeline
步骤创建的资源要求将资源 ID 包含在 allow_delete
参数中。
端点
POST /_plugins/_flow_framework/workflow/<workflow_id>/_deprovision
路径参数
下表列出了可用的路径参数。
参数 | 数据类型 | 描述 |
---|---|---|
workflow_id | 字符串 | 要解除配置的工作流 ID。必填。 |
allow-delete | 字符串 | 要解除配置的资源 ID 的逗号分隔列表。如果删除 index_name 或 pipeline_id 类型的资源,则为必填项。 |
请求示例
POST /_plugins/_flow_framework/workflow/8xL8bowB8y25Tqfenm50/_deprovision
示例响应
如果解除配置成功,OpenSearch 将返回请求中使用的相同 workflow_id
{
"workflow_id" : "8xL8bowB8y25Tqfenm50"
}
如果解除配置未能完全移除所有资源,OpenSearch 将返回 202 (ACCEPTED)
状态并识别未解除配置的资源
{
"error": "Failed to deprovision some resources: [connector_id Lw7PX4wBfVtHp98y06wV]."
}
在某些情况下,故障的发生是由于另一个依赖资源需要一些时间才能被移除。在这种情况下,您可以尝试再次发送相同的请求。
如果解除配置需要 allow_delete
参数,则 OpenSearch 将返回 403 (FORBIDDEN)
状态并识别未解除配置的资源
{
"error": "These resources require the allow_delete parameter to deprovision: [index_name my-index]."
}
要获取比错误响应摘要中提供的更详细的解除配置状态,请查询 Get Workflow Status API。
成功后,工作流将返回 NOT_STARTED
状态。如果某些资源尚未移除,它们将显示在响应中。