启用批量任务编排能力

Argo Workflows是一个Kubernetes原生的工作流引擎,支持通过YAML或Python编排并行任务,简化容器化应用的自动化和管理工作,适用于CI/CD流水线、数据处理、机器学习等场景。您可以通过安装Argo Workflows组件启用批量任务编排能力,使用阿里云Argo CLI或控制台界面创建和管理工作流任务。

步骤一:安装Argo Workflows组件

您可以在组件管理页面安装Argo Workflows。

  1. 登录容器服务管理控制台,在左侧导航栏选择集群

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > 组件管理

  3. 组件管理页面,定位Argo Workflows,按照页面提示完成组件的安装。

    安装后,您可以在集群管理页左侧导航栏,选择应用 > Helm,查看ack-workflow的状态。当显示为已部署时,表明安装成功。

步骤二:使用阿里云Argo CLI或控制台

ACK提供阿里云Argo CLI或Argo控制台两种方式来创建和管理工作流任务。

方式一:安装阿里云Argo CLI

阿里云Argo CLI完全兼容开源Argo CLI,并在此基础上增强了Metrics能力。您可以使用阿里云Argo CLI查看工作流消耗的CPU和内存资源,以及工作流运行的成本。同时,阿里云Argo CLI增强了日志能力,支持获取工作流已删除Pod的日志。

  1. 下载阿里云Argo CLI安装包argo-cli-aliyun-linux。

    wget https://ack-one.oss-cn-hangzhou.aliyuncs.com/cli/v3.4.12/argo-cli-aliyun-linux

    本步骤以Linux系统为例。Darwin和Linux系统的下载链接分别为argo-cli-aliyun-darwinargo-cli-aliyun-linux

  2. 执行如下命令,为argo-cli-aliyun-linux授予可执行权限。

    chmod +x argo-cli-aliyun-linux
  3. 将执行文件移动到环境变量包含的目录下,例如/usr/local/bin/,不同环境路径可能不同。

    mv argo-cli-aliyun-linux /usr/local/bin/argo

方式二:获取访问凭证并使用Argo控制台

1、获取访问凭证

您可以通过集群中的ServiceAccount获取临时Token,以访问Argo Server。该Token有效期为1小时。

以下命令展示如何通过argo命名空间下的名为argo-server的ServiceAccount获取临时Token。

kubectl create token argo-server -n argo

预期输出:

elxxxxxxxxxx

2、访问Argo控制台

在获取访问凭证后,您将能够访问并使用Argo控制台。系统默认提供内网访问地址,您可以根据需要选择是否开启公网访问。

  1. 开启公网访问并设置访问控制。(可选)

    1. 执行以下命令,设置typeLoadBalancer

      kubectl edit service argo-server -n argo 
    2. 若您需要配置访问控制,请参见使用负载均衡的访问控制功能

  2. 通过kubectl命令获取Argo Server的Service的公网IP(EXTERNAL-IP对应的字段),即访问IP。

    kubectl get service argo-server -n argo
  3. 在浏览器中参见下方格式输入访问IP及端口。

    https://${IP}:2746

    预期输出:

    image

  4. 在文本框中输入此前获取的访问凭证,登录控制台,输入值的格式为Bearer $token

    image

  5. 登录后,填写Namespace为argo,查看相应的任务状态。

    image

后续操作

前置操作完成后,您可以使用CLI或控制台在ACK集群中快速体验如何创建一个示例工作流,请参见创建工作流