Argo作业
Argo是一个开源项目,为Kubernetes提供了云原生工作流,将工作流中的每个步骤实现为容器。Argo作业基于Argo构建,因此模板格式完全兼容Argo workflow。社区标准的Argo workflow的编写规范参见社区官方文档。
Argo作业是通过Argo workflow创建的批量计算作业,主要用于创建AI任务和HPC(High Performance Compute)任务。广泛应用于高性能计算、图片处理、美颜、游戏AGI、科学计算等领域。
前提条件
已创建队列,如未创建,请参见队列管理。
创建Argo作业
- 登录BCE控制台,左侧导航栏中选择“作业管理”。
- 在“Argo”页签下,单击“创建作业”。
- 配置参数,具体如表1所示。
表1 创建作业 参数
说明
作业名称
输入作业名称。要求如下:- 长度范围为4~32个字符。
- 名称由小写字母、数字、中划线(-)组成。
- 以小写字母开头。
- 以小写字母或数字结尾。
队列
选择队列,如果还未创建队列,可单击“创建队列”创建,具体操作请参见队列管理。
任务组件
可将“AI任务”或“HPC任务”用鼠标拖动至画布中。
- 在画布中,双击“AI任务”或“HPC任务”,编辑任务,编辑完成后,单击“确定”。
- 编辑AI任务
表2 编辑AI任务 参数
说明
基本信息
任务名称
输入任务名称。
队列
选择队列,如未创建队列,可单击“创建队列”。
任务实例配置
资源类型
默认为Tensorflow,不可修改。
Tensorflow任务是一种基于Tensorflow开源框架的kubernetes自定义资源类型,多种角色可以配置,可更简单地实现Tensorflow的单机或分布式训练
任务实例组合
可根据实际需求选择对应的任务实例组合。- Worker+Evaluator:单节点进行训练,只有Worker角色,可以搭配Evaluator角色使用。
- PS+Worker+Evaluator:多节点进行训练,有PS和Worker角色,可以搭配Evaluator角色使用。
- PS+Chief+Worker+Evaluator:多节点进行训练,有PS、Chief和Worker角色,可以搭配Evaluator角色使用。
任务实例
角色名称
角色名称此处为默认值,不用输入。
实例数量
输入实例数量。- PS、Worker:这两个角色根据实际情况输入实例数量。
- Chief、Evaluator:这两个角色默认实例数量为1,无法输入。
容器配置
容器配置参数,请参见表3。可单击“添加容器”,添加多个容器。
高级配置
失败重试次数
任务的失败重试次数,仅适用于重启策略为OnFailure或Always的pod。
最大存活时长
最大存活时长,从创建任务开始,若超过此时间任务没有执行完成,则任务会视为失败。
结束后保留时长(s)
此处指定时间删除执行完成的任务,可以选择“0~永久”之间的任意时间。- 0:表示执行完成后立刻删除。
- 永久:表示执行完成后永久保留,不删除。
如果不配置,默认为“永久”。
清理策略
任务结束之后,清理pod策略。可根据实际需求选择“清理运行中的Pod”、“清理全部实例”和“不清理”。
表3 容器配置参数说明 参数
说明
基本信息
镜像名称
单击“选择镜像”,从我的镜像、开源镜像中心或共享镜像中选择需要的镜像。- 我的镜像:展示了您创建的所有镜像仓库。
- 开源镜像中心:展示了开源镜像中心仓库中的官方镜像。
- 共享镜像:其他租户通过“容器镜像服务”共享给您的镜像将在此处展示,您可以基于共享镜像创建工作负载。
导入的镜像,您可单击“更换镜像”进行更换。
* 镜像版本
选择需要部署的镜像版本。
* 容器名称
容器的名称,可修改。
特权容器
特权容器是指容器里面的程序具有一定的特权。
若选中,容器将获得超级权限,例如可以操作宿主机上面的网络设备、修改内核参数等。
CPU配额
容器需要使用的最小CPU值,默认0.5 核。
内存配额
容器需要使用的内存最小值,默认1 GB。
生命周期
启动命令
设置容器启动时执行的命令。
启动后处理
设置容器成功运行后执行的命令,详细配置方法请参见设置容器生命周期。
停止前处理
设置容器结束前执行的命令,通常用于删除日志/临时文件等,详细配置方法请参见设置容器生命周期。
容器端口
端口名称
输入端口名称,默认为port-1。
容器端口
输入端口,默认为22。
端口协议
选择端口协议,默认为TCP。
环境变量
手动添加
输入变量名称、变量/变量引用。
对于已设置的环境变量,可以进行修改或者删除。
容器存储
手动添加
可选参数,如果要挂载使用对象存储服务提供的并行文件系统,则单击“添加存储挂载”。- 文件系统名称:在下拉列表中根据名称选择要使用的并行文件系统。
- 挂载路径:根据实际情况填入挂载目录,例如/dir/test。
- 编辑HPC任务
表4 编辑HPC任务 参数
说明
任务名称
输入任务名称。
最小实例
输入最小实例个数。
任务实例配置
添加角色
可单击“添加角色”,添加多个角色。
角色名称
输入角色名称。要求如下:- 长度范围为1~10个字符。
- 名称由小写字母、数字、中划线(-)和点(.)组成。
- 中划线(-)和点(.)必须以字母或数字隔开。
- 以小写字母开头和结尾。
实例数量
输入实例数量。
容器配置
容器配置参数,请参见表5。
可单击“添加容器”,添加多个容器。
表5 容器配置参数说明 参数
说明
基本信息
镜像名称
单击“选择镜像”,从我的镜像、开源镜像中心或共享镜像中选择需要的镜像。- 我的镜像:展示了您创建的所有镜像仓库。
- 开源镜像中心:展示了开源镜像中心仓库中的官方镜像。
- 共享镜像:其他租户通过“容器镜像服务”共享给您的镜像将在此处展示,您可以基于共享镜像创建工作负载。
导入的镜像,您可单击“更换镜像”进行更换。
镜像版本
选择需要部署的镜像版本。
容器名称
容器的名称,可修改。
CPU配额
容器需要使用的最小CPU值,默认0.5 核。
内存配额
容器需要使用的内存最小值,默认1 GB。
生命周期
启动命令
设置容器启动时执行的命令。
启动后处理
设置容器成功运行后执行的命令,详细配置方法请参见设置容器生命周期。
停止前处理
设置容器结束前执行的命令,通常用于删除日志/临时文件等,详细配置方法请参见设置容器生命周期。
容器端口
端口名称
输入端口名称,默认为port-1。
容器端口
输入端口,默认为22。
端口协议
选择端口协议,默认为TCP。
环境变量
手动添加
输入变量名称、变量/变量引用。
对于已设置的环境变量,可以进行修改或者删除。
容器存储
手动添加
可选参数,如果要挂载使用对象存储服务提供的并行文件系统,则单击“添加存储挂载”。- 文件系统名称:在下拉列表中根据名称选择要使用的并行文件系统。
- 挂载路径:根据实际情况填入挂载目录,例如/dir/test
- 编辑AI任务
- 单击“下一步:规格确认”,确认任务规格。
- 单击“创建任务”,任务创建成功。
查看作业
- 登录BCE控制台,左侧导航栏中选择“作业管理”。
- 在“Argo”页签下,可查看作业的基本信息。单击作业名称,可查看作业的详细信息。
删除作业
- 登录BCE控制台,左侧导航栏中选择“作业管理”。
- 在“Argo”页签下,在需要清理的作业列中单击“删除”,也可以选择多个作业,单击“批量删除”;
- 在弹出的对话框中单击“确认”即可删除作业。