在复杂工作流步骤的编排中,一个步骤的输出往往会作为另一个步骤的输入。通过配置Artifacts,您可以在工作流各个步骤之间传递所需的参数。本文介绍如何在Argo Workflows Controller的ConfigMap中新增Artifacts配置,以使用阿里云对象存储OSS存储Artifacts文件,实现工作流步骤间参数的传递。
前提条件
已开通OSS服务,并创建了OSS Bucket,请参见创建存储空间。
当OSS Bucket与集群处于同一VPC下,您可以通过OSS内网地址访问OSS资源,无需支付流量费用。关于OSS的计费信息,请参见计费项。
操作步骤
在集群argo命名空间中创建一个名为
my-oss-secret
的Secret,用于保存访问OSS的凭证。apiVersion: v1 stringData: accessKey: xxxxxxxxxx # 替换为能够访问OSS的Access Key信息。 secretKey: xxxxxxxxxx # 替换为能够访问OSS的Access Key Secret信息。 kind: Secret metadata: name: my-oss-secret namespace: argo type: Opaque
执行以下命令,编辑
workflow-controller-configmap
文件。kubectl edit configmap workflow-controller-configmap -n argo
在
data
字段中增加Artifacts配置。data: artifactRepository: | archiveLogs: true oss: endpoint: http://oss-cn-zhangjiakou-internal.aliyuncs.com # 替换为OSS的访问域名。 bucket: my-bucket # 替换为实际的OSS Bucket名称。 accessKeySecret: name: my-oss-secret key: accessKey secretKeySecret: name: my-oss-secret key: secretKey
创建完成后,Argo Workflows Controller会Watch ConfigMap信息,根据您的工作流定义执行文件上传、下载、删除等操作。
文档内容是否对您有帮助?