You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求Jenkins批量创建多节点的替代方案,无需手动配置300个节点

Jenkins 多主机多用户组合节点管理替代方案

方案1:动态调度模式(优先选择,无需提前创建300个静态节点)

  • 仅需为15台主机各创建1个基础Jenkins节点,每台节点打上唯一主机标签,如host_192.168.1.101、host_server02等
  • 任务运行时通过Pipeline指定目标主机和执行用户即可实现组合需求,无需绑定用户到固定节点,示例Pipeline代码如下:
pipeline {
  agent {
    node {
      label 'host_192.168.1.101' // 匹配指定主机标签
    }
  }
  stages {
    stage('执行业务逻辑') {
      steps {
        // Linux环境切换对应用户执行命令,Windows环境可替换为runas对应逻辑
        sh 'su - user05 -c "你的业务执行命令"'
      }
    }
  }
}
  • 该方案仅需维护15个基础节点,无额外节点管理成本,调度灵活度最高

方案2:脚本批量生成静态节点(适用于必须有独立节点实体的场景)

  • 如果业务要求每个主机+用户组合必须对应独立的Jenkins节点实体,可通过Jenkins内置的Groovy脚本控制台批量生成节点,无需手动创建
  • 操作路径:Jenkins首页→管理Jenkins→脚本控制台,运行如下示例代码即可批量生成300个节点:
// 提前配置好主机列表、用户列表和SSH登录凭证ID
def hostList = ["192.168.1.101", "192.168.1.102", .../* 补全15台主机信息 */]
def userList = ["user01", "user02", .../* 补全20个用户信息 */]
def sshCredId = "你提前配置的全局SSH凭证ID"

hostList.each { hostAddr ->
  userList.each { userName ->
    def nodeName = "${hostAddr}-${userName}"
    def slaveNode = new hudson.slaves.DumbSlave(
      nodeName,
      "/home/${userName}/jenkins_agent", // 对应用户家目录下的工作路径
      new hudson.plugins.sshslaves.SSHConnector(
        22, // SSH端口,按需调整
        sshCredId,
        null, null, null, null, null, 0, 0, null
      )
    )
    // 给节点打双标签,方便后续按主机/用户维度调度
    slaveNode.setLabelString("host_${hostAddr} user_${userName}")
    Jenkins.instance.addNode(slaveNode)
  }
}
  • 后续需要批量修改、删除节点时,调整脚本逻辑即可执行,无需手动逐个操作

方案3:配置即代码管理(适用于需要对节点配置做版本管控的场景)

  • 使用Jenkins Configuration as Code(JCasC)插件,将所有节点配置写入yaml文件,Jenkins启动或重载配置时自动加载所有节点
  • 配置片段示例:
jenkins:
  nodes:
    - permanent:
        name: "192.168.1.101-user01"
        remoteFS: "/home/user01/jenkins_agent"
        labels: "host_192.168.1.101 user_user01"
        launcher:
          ssh:
            host: "192.168.1.101"
            port: 22
            credentialsId: "ssh_cred_id"
            user: "user01"
    # 可通过脚本批量生成所有300个节点的yaml配置段

内容的提问来源于stack exchange,提问作者Sandeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 21:06:02