当在多个job的环境里,一台主jenkins服务器同时执行多个job,如代码的cone、代码的编译、测试、打包、构建 ,这样jenkins代码部署的效率会大幅度降低,成为单台jenkins部署效率的瓶颈,这时候就须要jenkins分布式管理, 在主jenkins上添加多个jenkins的node节点,这时候jenkins就能够将多个项目job运行在添加的多个nodes上,从而 大大下降主jenkins服务器的负载,提升代码部署效率,所以jenkins的分布式管理颇有必要
[root@node1 ~]# mkdir -p /var/lib/jenkins
[root@node1 src]# ls jdk-8u211-linux-x64.tar.gz
[root@node1 src]# tar xvf jdk-8u211-linux-x64.tar.gz
[root@node1 src]# ln -sv jdk1.8.0_211 jdk [root@node1 src]# ln -sv /usr/local/src/jdk/bin/* /usr/bin/
[root@node1 ~]# vim /etc/profile export JAVA_HOME=/usr/local/jdk export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
[root@node1 ~]# source /etc/profile
[root@node1 ~]# java -version java version "1.8.0_211" Java(TM) SE Runtime Environment (build 1.8.0_211-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode) [root@node1 ~]# echo $JAVA_HOME /usr/local/jdk [root@node1 ~]# echo $CLASSPATH /usr/local/jdk/lib:/usr/local/jdk/jre/lib:/usr/local/jdk/lib/tools.jar
[root@node1 ~]# yum install git -y
[root@node1 ~]# mkdir -pv /var/lib/jenkins/jdk/bin mkdir: created directory ‘/var/lib/jenkins/jdk’ mkdir: created directory ‘/var/lib/jenkins/jdk/bin’ [root@node1 ~]# ln -sv /usr/local/src/jdk/bin/java /var/lib/jenkins/jdk/bin #建立软连接,直接指向java二进制可执行文件 ‘/var/lib/jenkins/jdk/bin/java’ -> ‘/usr/local/src/jdk/bin/java’
[root@node1 ~]# ps -ef | grep java root 10348 10308 0 12:19 ? 00:00:00 bash -c cd "/var/lib/jenkins" && /var/lib/jenkins/jdk/bin/java -jar remoting.jar -workDir /var/lib/jenkins root 10355 10348 0 12:19 ? 00:00:34 /var/lib/jenkins/jdk/bin/java -jar remoting.jar -workDir /var/lib/jenkins root 10811 9443 0 14:04 pts/0 00:00:00 grep --color=auto java