一.jenkins分布式作用

在众多 Job 的场景下,单台 jenkins master 同时执行代码 clone、编译、打包及构建,其性能可能会出现瓶颈从而会影响代码部署效率,影响 jenkins 官方提供了 jenkins 分布式构建,将众多 job 分散运行到不同的 jenkins slave 节点,大幅提高并行 job 的处理能力。不同的node可以分别执行测试和线上环境的操作。 jenkins-系统管理-结点管理-新建节点

重点:每个结点的时间必须同步


二.配置 slave 节点 java 环境: slave 服务器创建工作目录,如果 slave 需要执行编译 job,则也需要配置 java 环境并 且安装 git、svn、maven 等与 master 相同的基础运行环境,另外也要创建与 master 相同的数据目录,因为脚本中调用的路径只有相对一 master 的一个路径,此路径在master 与各 node 节点必须保持一致。node结点执行下面命令

mkdir -p /var/lib/jenkins #创建数据目录

vi /etc/sysconfig/jenkins jenkins home location JENKINS_HOME=/var/lib/jenkins #工作目录配置与 master 保持一致

cd /usr/local/src tar -xf jdk-8u212-linux-x64.tar.gz ln -sv /usr/local/src/jdk1.8.0_212/ /usr/local/jdk ln -sv /usr/local/jdk/bin/java /usr/bin/ java -version

vi /etc/profile export HISTTIMEFORMAT="%F %T whoami " export export LANG="en_US.utf-8" export JAVA_HOME=/usr/local/jdk export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin


三.添加 slave 节点: 主jenkins操作 Jenkins—系统管理—节点管理—新建结点 结点名称自己起

添加 slave 认证凭据

slave结点最终信息

日志中会报错,java命令路径不对 ln -sv /usr/local/jdk/bin/java /var/lib/jenkins/jdk/bin/java 断开结点,重新启动

总结:master结点把执行命令的包拷到node结点,类似zabbix_proxy那个原理,是由node结点拉代码,编译,打包,部署