Jenkins 集群搭建

877 阅读2分钟

一、环境准备

1、集群介绍

Jenkins是当下比较流行的一款功能强大的持续集成工具,它支持搭建集群,来提高多项目的构建速度,模式为主从模式,master会将任务分配到各个从节点进行并发构建,从而提高速度

2、环境准备

  • 服务器: 准备两台服务器, 一台做为master, 一台作为slave, 设A为master, B为slave
  • 服务器系统: Linux(我这里使用Ubuntu)
  • Jenkins版本: 2.287, Jenkins只需要装在master即可, 部署教程可参考: juejin.cn/post/695020…

3、slave节点环境准备

根据你是用的源代码管理工具git或者svn来安装对于的工具,还有需要安装可能会构建的项目所需的环境,比如.NET Core 项目就需要安装 .NET Core SDK,JAVA项目就需要安装JAVA环境。从节点无需安装Jenkins。

这里介绍下Jenkins构建python自动化测试任务, slave节点需要准备的环境:

  • python3
  • jdk >= 8
  • google-chrome (注意版本)
  • chromedriver (版本要和google-chrome版本一致)
  • python 所需包环境, 可在本地生成环境文件, 从节点执行 pip3 install -r requirements.txt
  • allure (需要allure生成测试报告)

二、Jenkins创建新节点

1、主从节点建立连接 (创建凭据)

  • master生成密钥 master 执行以下命令:

    # 生成密钥, 生成的密钥保存在 ~/.ssh/id_rsa
    ssh-keygen
    # 将密钥发送到slave节点, 此过程会输入slave的登录密码, 迷人为root用户
    ssh-copy-id slave_ip
    
  • jenkins创建凭据

    jenkins系统管理 ==> 凭据管理 ==> 新建 ==》 添加全局凭据

    image.png

2、jenkins新建节点

  • 新建节点 系统管理 ==> 管理节点 => 新建节点

    image.png

    点击确定, 接入到节点信息配置:

    image.png

    点击确定之后, 返回到节点管理界面,这个时候已经能看到我们刚刚新建的slave1节点, 但这节点还处于离线状态, 我们点slave1 进入到节点里:

    image.png

    如果新建节点时密钥验证方式选择手动验证, 进入到节点之后需要点击左侧 Trust SSH Host Key, 手动验证下密钥

    image.png

    密钥验证成功之后, 点击启动代理, 如果无报错, 节点就代理成功, 返回到节点管理就能看到slave1节点已经是在线状态了。

三、选择执行任务的节点及节点属性配置

1、选择标签节点执行任务

  • 自由风格的任务配置

    任务配置里勾选 限制项目的运行节点, 输入标签名即可

    image.png

  • pipeline 配置

    pipeline {
        agent { node { label 'linux_python_test' }}
    }
    

2、从节点 Allure工具配置

节点管理 => 点击要配置的节点 => 节点属性 => 勾选Tool Locations => 新增 Allure Command

image.png