创建 Volcano 作业
本节介绍如何创建 Volcano 作业。
操作步骤
-
以具有 project-admin 权限的用户登录 KubeSphere Web 控制台并进入您的企业空间。
-
在左侧导航栏选择 Volcano 调度 > Volcano 作业。
-
在页面左上角的下拉列表中选择一个项目。
-
在页面点击创建。
-
在基本信息页签,设置 Volcano 作业的基本信息,然后点击下一步。
-
在作业设置页签,设置调度策略、存储设置等,然后点击下一步。
-
在任务设置页签,为 Volcano 作业管理的任务设置副本数量、容器、资源需求和调度策略,然后点击下一步。
-
在存储设置页签,为 Volcano 作业挂载卷,然后点击下一步。
-
在高级设置页签,为 Volcano 作业指定节点,设置元数据,然后点击创建。
请参阅参数描述设置 Volcano 作业的参数。
参数描述
-
基本信息
设置 Volcano 作业的基本信息。
参数 描述 名称
Volcano 作业的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 40 个字符。
别名
Volcano 作业的别名。不同 Volcano 作业的别名可以相同。
描述
Volcano 作业的描述信息。描述可包含任意字符,最长 256 个字符。
-
作业设置 > 基础设置
参数 描述 调度器
该作业的容器组所使用的调度器,可选择 Volcano 或 Kubernetes 默认调度器。
Volcano 调度器更适用于高性能计算场景,如机器学习、大数据应用和科学计算。
队列
作业所属的队列,决定了其有资格使用的资源范围。
若未指定队列,默认使用 default 队列。
最少容器组数量
定义了 Volcano 作业进入正常运行状态所需达到的最低要求。只有当作业中处于运行状态的容器组数量不小于最少容器组数量时,该作业才被视为运行正常。
最大重试次数
超过最大重试次数后,作业将标记为失败。
优先级
作业优先级:高、中、低。更高优先级的作业将会优先分配/抢占资源。
-
作业设置 > 生命周期策略
配置 Volcano 作业的自动处理策略。
还可以在“任务设置”页签为任务(Task)单独配置策略以覆盖 Volcano 作业的默认策略。
参数 描述 事件
-
PodPending:Pod 正在等待创建。
-
PodRunning:Pod 正在运行。
-
PodFailed:Pod 运行失败。
-
PodEvicted:Pod 被驱逐。
-
Unknown:Pod 状态未知。
-
TaskCompleted:Task 中已成功完成的 Pod 数量达到了该 Task 预设的完成要求。
动作
-
RestartJob:重启整个作业。
-
RestartTask:重启 Task。
-
RestartPod:重启 Pod。
-
AbortJob:暂停该作业,不会清理已创建的 Pod 资源。
-
TerminateJob:终止作业运行,并清理删除所有相关的 Pod。
-
CompleteJob:强制将作业状态标记为“已完成”,来结束整个作业。
-
ResumeJob:恢复被暂停的作业。
-
点击添加可设置多个生命周期策略。
-
在已创建的生命周期策略右侧点击
可删除策略。
-
-
作业设置 > 存储设置
为 Volcano 作业挂载卷,选择已有持久卷或新建一个持久卷。
-
作业设置 > 存储设置 > 指定已有持久卷
参数 描述 选择持久卷声明
点击选择一个已有的持久卷。
挂载路径
卷挂载到容器上的路径。
-
作业设置 > 存储设置 > 新建持久卷
参数 描述 存储类
用于创建持久卷声明的存储类。
访问模式
持久卷的读写模式。
RWO(ReadWriteOnce):允许单个节点读取持久卷中的数据并向其中写入数据。
卷容量
持久卷的容量。
挂载方式
卷在容器上的挂载方式。
-
任务设置 > 添加任务
-
为 Volcano 作业新增一个任务(Task),可单独设置副本数、容器镜像、资源需求和调度策略。
-
将鼠标悬停在已创建的任务上,然后在右侧点击
可编辑任务的设置。
-
将鼠标悬停在已创建的任务上,然后在右侧点击
可删除任务。
-
-
任务设置 > 添加任务 > 任务设置
参数 描述 任务名称
任务的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 15 个字符。
容器组副本数量
设置该任务的容器组副本数。
高级设置
为任务单独配置的生命周期策略,比上一步配置的 Volcano 作业的生命周期策略具有更高优先级。
-
任务设置 > 添加任务 > 重启策略
参数 描述 重启策略
容器组中的容器异常退出时,系统采取的策略:重新创建容器组、或重启容器。
-
任务设置 > 添加任务 > 容器
有关添加容器的更多信息,请参阅创建工作负载。
-
存储设置
选择一个任务,为其创建的容器挂载卷、配置字典或保密字典。
参数 描述 挂载卷
为容器挂载持久卷、临时卷或 HostPath 卷。
挂载配置字典或保密字典
将配置字典或保密字典中的数据作为卷挂载到容器。
-
存储设置 > 挂载卷 > 持久卷
为容器挂载持久卷。用于创建持久卷的持久卷声明必须属于容器所在的项目。
参数 描述 选择持久卷声明
选择用于创建持久卷的持久卷声明。该持久卷声明必须属于容器所在项目。如果容器所在的项目中没有可用的持久卷声明,您需要提前创建一个持久卷声明。
挂载方式
卷在容器上的挂载方式。
-
读写:允许容器读取卷中的数据并向其中写入数据。
-
只读:只允许容器读取卷中的数据。
-
不挂载:卷不挂载到容器上。
挂载路径
卷挂载到容器上的路径。点击
可设置需要挂载的卷子路径。如果不设置子路径则默认挂载整个卷。
-
-
存储设置 > 挂载卷 > 临时卷
为容器挂载临时卷。临时卷具有以下特点:
-
由系统自动在容器组所在的节点的存储系统中创建。
-
由系统自动管理,容量上限为节点的存储容量。
-
无法保存持久化数据,容器组创建时由系统自动创建临时卷,容器组删除时由系统自动删除临时卷。
参数 描述 卷名称
临时卷的名称。
容量上限
当前卷的容量上限。
挂载方式
卷在容器上的挂载方式。
-
读写:允许容器读取卷中的数据并向其中写入数据。
-
只读:只允许容器读取卷中的数据。
-
不挂载:卷不挂载到容器上。
挂载路径
卷挂载到容器上的路径。点击
可设置需要挂载的卷子路径。如果不设置子路径则默认挂载整个卷。
-
-
存储设置 > 挂载卷 > HostPath 卷
将容器组所在的节点上的文件或目录挂载到容器上。
-
不同节点上相同路径的文件或文件夹可能不同,因此不同节点上的容器组副本可能会从 HostPath 卷中读取到不同的数据。
-
您需要确保被挂载的路径在容器组所在的节点上存在,并且容器组进程具有所需的权限,否则容器组进程将无法从 HostPath 卷上读取数据或向其中写入数据。
参数 描述 卷名称
HostPath 卷的名称。
主机路径
节点上需要挂载的文件或文件夹的路径。
挂载方式
卷在容器上的挂载方式。
-
读写:允许容器读取卷中的数据并向其中写入数据。
-
只读:只允许容器读取卷中的数据。
-
不挂载:卷不挂载到容器上。
挂载路径
卷挂载到容器上的路径。点击
可设置需要挂载的卷子路径。如果不设置子路径则默认挂载整个卷。
-
-
存储设置 > 挂载配置字典或保密字典
将配置字典或保密字典中的数据作为卷挂载到容器。
参数 描述 选择配置字典/选择保密字典
选择当前项目中的配置字典或保密字典。
挂载方式
设置配置字典或保密字典中的数据在容器上的挂载方式。配置字典和保密字典只支持以只读方式挂载或不挂载。
挂载路径
设置配置字典或保密字典中的数据挂载到容器上的路径。
-
系统将根据配置字典或保密字典中的数据生成一个文件夹,并将其中的每个键值对映射为一个文件,每个文件以键为文件名,值为文件的内容。
-
点击
可指定配置字典或保密字典中的键值对作为文件挂载,如不设置子路径则默认挂载整个配置字典或保密字典。如果使用子路径,挂载到容器中的文件不会随配置字典或保密字典动态更新。
选择特定键
将配置字典或保密字典中的键值对作为文件挂载到容器中,挂载到容器中的文件会随配置字典或保密字典动态更新。点击添加可挂载多个键值对。
-
键:配置字典或保密字典中的需要挂载的键值对的键名称。
-
路径:容器中相对于挂载路径的路径。配置字典或保密字典中的指定键值对将挂载到该路径下,挂载路径中原有的文件将被覆盖。
-
-
高级设置
为 Volcano 作业管理的容器组指定节点,并设置 Volcano 作业的元数据。
参数 描述 选择节点
将容器组副本调度到具有指定标签的节点上。
-
您可以手动输入目标节点的标签键值对,也可以点击指定节点选择一个节点。
-
点击添加节点选择器可设置多个标签,容器组副本将被调度到具有所有指定标签的节点上。
-
在已创建的标签右侧点击
可删除标签。
添加元数据
设置 Volcano 作业的标签和注解。
-
点击添加可设置多条标签或注解。
-
在已创建的标签或注解右侧点击
可删除标签或注解。
-