當在多個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