最近更新时间:2024.02.02 11:21:00
首次发布时间:2022.03.04 23:10:38
定时任务为指定时间的一次性任务、或者周期性任务。对应 Kubernetes 中的 CronJob。用户可以通过镜像在集群中创建一个定时任务。
参数 | 说明 |
---|---|
名称 | 根据系统提示,配置定时任务的名称。在同一个命名空间下,名称必须唯一。 |
命名空间 | 选择定时任务部署的命名空间,支持选择自定义创建的命名空间或 Kubernetes 自建的命名空间。Kubernetes 自建命名空间的说明,请参见 命名空间概述。 |
标签 | 填写定时任务的标签,对应 Kubernetes 中的 Label,用于识别定时任务的键值对,配合选择器,帮助 Kubernetes 快速筛选目标定时任务。例如 |
注解 | 填写定时任务的注解信息,对应 Kubernetes 中的 Annotation,主要记录用于应用部署、安全策略、调度策略的附加信息,不用于标识和区分资源。 |
算力类型 | VPC-CNI 网络模型的集群显示该参数。选择部署工作负载的基础设施资源,有如下两种算力类型:
|
日志采集 | 算力类型 选择 以弹性容器实例方式部署 后显示该参数。要开启后采集弹性容器实例日志。详细说明,请参见 通过日志服务采集 VCI 容器日志。 |
参数 | 说明 |
---|---|
容器名称 | 根据系统提示的命名规则,输入容器名称。同一个工作负载下容器名称必须唯一。 |
容器镜像 | 容器使用的镜像。支持使用第三方镜像和镜像仓库 CR 中的镜像:
|
镜像版本 | 选择镜像的版本,不选择则默认拉取 注意
|
镜像密钥 | 默认不开启。开启后需要配置镜像仓库密钥。选择已有的仓库密钥或单击 创建仓库密钥,按如下说明在容器服务侧补充镜像仓库的密钥:
注意 不使用免密组件,且需要拉取私有镜像时,必须配置该参数。 |
资源配额 | 支持按照业务需求,在容器维度配置 CPU 和内存的上下限,保障容器的健康运行。若不设置,则表示容器资源配额无限制。
说明
|
特权级容器 | 默认不开启。开启后特权级容器可以访问宿主上的设备。支持部署在 Linux 系统上的容器控制网络堆栈或访问设备。 |
Init 容器 | 默认不开启。开启后表示将该容器设置为 Init 容器。Init 容器是 Pod 中,运行在应用容器前的容器,并且它可以包括仅在安装过程中使用的工具(例如 python、dig)和代码,避免在应用容器中的重复部署,提升应用镜像的安全性。 说明 Init 容器不支持设置生命周期管理中的启动后处理、停止前处理,不支持开启健康检查。 |
nginx
的 TCP 协议 80 端口。类型 | 说明 |
---|---|
自定义 | 支持输出入变量名称和变量值,创建自定义的环境变量。 |
配置项 | 支持部分引用或全部引用配置项中的变量。部分引用时,一条规则仅支持为一个 Key 创建环境变量。 |
保密字典 | 支持部分引用或全部引用保密字典中的变量。部分引用时,一条规则仅支持为一个 Key 创建环境变量。 |
实例字段 | 支持引用实例字段中的值,创建环境变量。
|
容器资源 | 支持引用容器中的字段作为环境变量。
|
类型 | 说明 |
---|---|
配置项 | 支持为配置项中的全部数据或部分数据创建数据卷。为部分数据创建存储卷时,支持配置多数据 item,用半角分号 (;)分隔。例如 cm1:path1;cm2:path2 。 |
保密字典 | 支持部分挂载或全部挂载保密字典中的数据。为部分数据创建存储卷时,支持配置多数据 item,用半角分号 (;)分隔。例如 cm1:path1;cm2:path2 。 |
存储卷声明 | 选择当前工作负载命名空间中已创建的存储卷声明,并为其指定数据卷的名称。 |
临时目录 | 为临时目录创建数据卷名称。 |
主机目录 | 为主机中的目录创建数据卷。 |
类型 | 说明 |
---|---|
运行命令 | 输入容器启动前运行的命令。 |
运行参数 | 输入容器启动前所运行命令的参数。 |
启动后处理 | 输入启动后命令。 |
停止前处理 | 输入停止前处理命令。 |
配置项 | 说明 |
---|---|
检查方式 | 配置检查的方式,包括:
|
时间设置 | 配置检查的时间参数,包括:
|
阈值设置 | 配置检查的结果阈值。包括:
|
配置项 | 说明 |
---|---|
Cron 语句 | Cron 语句是一个字符串,通过分钟、小时、日期、月份和星期,分为 5 个域,以空格分割。 |
成功任务保留数 | 保留运行成功任务记录的个数。 |
失败任务保留数 | 保留运行失败任务记录的个数。 |
并发策略 | 任务同时运行的策略:
|
配置项 | 说明 |
---|---|
成功运行次数 | 配置定时任务需要 Pod 成功运行的次数。 |
可并行数 | 配置允许 Pod 的并发数。 |
最大超时时间 | 配置任务最大运行时长。 |
重试次数 | 配置任务失败后的重试次数。 |
重启策略 | 配置 Pod 重启策略,包括:永不重启、失败后重启。 |
说明
对任务失败状态的判定上,最大超时时间 的优先级高于 重试次数。即使重试的次数还没到达上限,但是运行时长超过了上限,那么任务也会判定为失败。
配置项 | 说明 |
---|---|
实例标签 | 配置定时任务实标签。单击 添加实例标签,根据界面提示输入符合要求的 键 和 值。 标签对应 Kubernetes 中的 Label,用于设置识别资源的键值对,配合选择器,帮助 Kubernetes 快速筛选目标资源。 |
实例注解 | 配置定时任务注解。单击 添加实例注解,根据界面提示输入符合要求的 键 和 值。注解对应 Kubernetes 中的 Annotation,不用于标识和区分资源,主要记录用于负责应用部署、安全策略、调度策略的附加信息。 |
DNS 策略 | 配置实例的 DNS 策略。包括:
|
root
角色运行将会启动失败。说明
通过 kubectl 命令行创建定时任务前请确保:
cronjob-demo.yaml
代码如下:apiVersion: batch/v1beta1 kind: CronJob metadata: name: cronjob-demo # 定时任务的名称。 namespace: default # 定时任务所在的命名空间。 spec: schedule: "*/1 * * * *"# 定时任务的执行时间。 jobTemplate: spec: template: spec: containers: - name: hello # 定时任务重的容器名称。 image: busybox # 容器镜像。 command: # 容器中执行的命令。 - /bin/sh - -c - date; echo Hello from the Kubernetes cluster resources: requests: # 指定容器的 CPU 和内存请求。 cpu: "500m" memory: "1024Mi" limits: # 指定资源配额,例如:CPU 上限、内存上限、RDMA 卡数等。 cpu: "1" memory: "2Gi" vke.volcengine.com/rdma: 2 restartPolicy: OnFailure # 容器中任务失败时的重启策略,包括:Never:永不重启、OnFailure:失败时重启。 ```
kubectl apply -f cronjob-demo.yaml
操作完成后可以在 工作负载 > 定时任务 页面查看工作负载的状态。