Ubuntu 上 Jenkins 资源调度的核心做法
在 Ubuntu 环境中,Jenkins 的资源调度通常涵盖三类:按时间的定时触发、按集群资源的执行分配与并行、以及按系统层面的统一触发与节流。下面给出可直接落地的配置方法与示例。
一 定时触发调度
pipeline {
agent any
triggers { cron('H 10 * * 1-5') }
stages { ... }
}
crontab -e 添加条目,配合任务的 API Token 触发构建:0 2 * * * /usr/bin/curl -X POST "http://<jenkins_server>:8080/job/<job_name>/build?token=<api_token>"
二 集群资源与并行调度
agent { label 'xxx' } 将任务调度到具备相应资源的节点,实现按 CPU/内存/工具链隔离与横向扩展。stages 中使用 parallel 拆分任务,提高单机或多机资源利用率:pipeline {
agent any
stages {
stage('Parallel') {
parallel {
stage('Task-1') { steps { sh 'echo task1' } }
stage('Task-2') { steps { sh 'echo task2' } }
}
}
}
}
三 调度策略与落地建议