Argo Workflows是一个Kubernetes原生的工作流引擎,支持通过YAML或Python编排并行任务,简化容器化应用的自动化和管理工作,适用于CI/CD流水线、数据处理、机器学习等场景。您可以通过安装Argo Workflows组件启用批量任务编排能力,使用阿里云Argo CLI或控制台界面创建和管理工作流任务。
步骤一:安装Argo Workflows组件
您可以在组件管理页面安装Argo Workflows。
登录容器服务管理控制台,在左侧导航栏选择集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在组件管理页面,定位Argo Workflows,按照页面提示完成组件的安装。
安装后,您可以在集群管理页左侧导航栏,选择应用 > Helm,查看ack-workflow的状态。当显示为已部署时,表明安装成功。
步骤二:使用阿里云Argo CLI或控制台
ACK提供阿里云Argo CLI或Argo控制台两种方式来创建和管理工作流任务。
方式一:安装阿里云Argo CLI
阿里云Argo CLI完全兼容开源Argo CLI,并在此基础上增强了Metrics能力。您可以使用阿里云Argo CLI查看工作流消耗的CPU和内存资源,以及工作流运行的成本。同时,阿里云Argo CLI增强了日志能力,支持获取工作流已删除Pod的日志。
下载阿里云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-darwin、argo-cli-aliyun-linux。
执行如下命令,为argo-cli-aliyun-linux授予可执行权限。
chmod +x argo-cli-aliyun-linux
将执行文件移动到环境变量包含的目录下,例如
/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控制台。系统默认提供内网访问地址,您可以根据需要选择是否开启公网访问。
开启公网访问并设置访问控制。(可选)
执行以下命令,设置
type
为LoadBalancer
。kubectl edit service argo-server -n argo
若您需要配置访问控制,请参见使用负载均衡的访问控制功能。
通过kubectl命令获取Argo Server的Service的公网IP(
EXTERNAL-IP
对应的字段),即访问IP。kubectl get service argo-server -n argo
在浏览器中参见下方格式输入访问IP及端口。
https://${IP}:2746
预期输出:
在文本框中输入此前获取的访问凭证,登录控制台,输入值的格式为
Bearer $token
。登录后,填写Namespace为argo,查看相应的任务状态。
后续操作
前置操作完成后,您可以使用CLI或控制台在ACK集群中快速体验如何创建一个示例工作流,请参见创建工作流。