文档

批处理框架

概述

MinIO 批处理框架允许使用 YAML 格式的作业定义文件(“batch file”)来创建、管理、监控和执行作业。 批处理作业直接在 MinIO 部署上运行,从而利用服务端处理能力,而不受运行 MinIO Client 的本地机器限制。

一个批处理文件定义一个作业任务。

启动后,MinIO 会开始处理该作业。 完成所需时间取决于部署可用的资源。

如果作业的任何部分失败,MinIO 会按照作业定义中指定的次数上限重试该作业。

MinIO 批处理框架支持以下作业类型:

作业类型

说明

replicate

执行一次性复制流程,将数据从一个 MinIO 位置复制到另一个 MinIO 位置。

keyrotate

执行一次性流程,轮换对象上的 sse-s3 or sse-kms 加密密钥。

expire

对存储桶中的对象执行一次性立即过期操作。

MinIO 批处理 CLI

mc batch 命令包括:

mc batch generate

mc batch generate 命令会为指定作业类型创建一个基础的 YAML 格式模板文件。

mc batch start

mc batch start 命令根据批处理作业 YAML 文件启动一个批处理作业。

mc batch list

mc batch list 命令会输出部署中当前正在进行的批处理作业列表。

mc batch status

mc batch status 命令会输出 MinIO 服务器上作业事件的汇总信息。

Changed in version mc: RELEASE.2024-07-03T20-17-25Z

Batch status 会显示活动且正在进行的作业,或前 3(三)天内已完成的任意批处理作业的汇总信息。

mc batch describe

mc batch describe 命令会输出指定作业 ID 的作业定义。

mc batch cancel

mc batch cancel 可停止正在进行的批处理作业。

mc batch 的访问权限

每个批处理作业都使用批处理定义中指定的凭证执行。 批处理作业能否成功,取决于这些凭证是否具有执行所有请求操作所需的适当 权限

执行批处理作业的用户必须具有以下权限。 也可以通过阻止或限制对这些操作的访问,来限制用户使用这些功能:

admin:ListBatchJobs

授予用户查看当前正在处理的批处理作业的能力。

admin:DescribeBatchJobs

授予用户查看当前正在处理的批处理作业定义详情的能力。

admin:StartBatchJob

授予用户启动批处理作业的能力。 该作业还可能受到其用于访问源部署或目标部署的凭证进一步限制。

admin:CancelBatchJob

允许用户停止当前正在进行的批处理作业。

可以将这些操作中的任意一个单独分配给用户,也可以任意组合分配。

内置的 ConsoleAdmin 策略包含执行所有这些类型批处理作业操作所需的充分访问权限。

Local 部署

可通过向 mc batch 命令传递一个 alias,对特定部署运行批处理作业。 命令中指定的部署会在该批处理作业的上下文中成为 local 部署。