Jenkins分布式及pipline使用(小节8)

本文介绍了使用Jenkins进行分布式构建的过程,包括创建数据目录、安装JDK、配置环境变量、设置节点同步,以及使用Pipeline进行自动化部署。Pipeline通过Groovy脚本串联了代码拉取、打包、拷贝和部署等步骤,实现了跨主机的自动化发布流程。
摘要由CSDN通过智能技术生成

highlight: atelier-lakeside-dark

theme: jzman

Jenkins分布式

图片.png

103和104

```

创建数据目录

mkdir -p /var/lib/jenkins ```

103

apt安装jdk ``` apt install openjdk-8-jdk -y mkdir -p /var/lib/jenkins/jdk/bin/

whereis java java: /usr/bin/java /usr/share/java /usr/share/man/man1/java.1.gz <--

软链接

ln -sv /usr/bin/java /var/lib/jenkins/jdk/bin/java ```

104

编译安装jdk、下载地址 ``` cd /usr/local/src tar xvf jdk-8u351-linux-x64.tar.gz

添加JAVA环境变量

vim /etc/profile ... export JAVAHOME=/usr/local/jdk export PATH=$JAVAHOME/bin:$JAVAHOME/jre/bin:$PATH export CLASSPATH=.$CLASSPATH:$JAVAHOME/lib:$JAVAHOME/jre/lib:$JAVAHOME/lib/tools.jar

使java变量生效

source /etc/profile

创建目录

mkdir /var/lib/jenkins/jdk/bin -p

软链接

ln -sv /usr/local/src/jdk1.8.0_351 /usr/local/jdk ln -sv /usr/local/jdk/bin/java /var/lib/jenkins/jdk/bin/ ```

系统管理-节点管理 图片.png

新建节点时间一定要同步、date查看【master(102)、slave(103、104)】

图片.png

图片.png

图片.png

图片.png

图1

图片.png

图片.png

系统管理-节点管理-'jenkins-slave1'-日志 图片.png 再次新建节点

图片.png

图片.png

图片.png 图2 图片.png

系统管理-节点管理-'jenkins-slave2'-日志

图片.png

图片.png

pipline

官方介绍:https://jenkins.io/2.0

pipline 是帮助 jenkins 实现 CI 到 CD 转变的重要角色,是运行在jenkins 2.X 版本的核心插件,简单来说 pipline 就要一套运用于 jenkins 上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂发布流程,从而实现单个任务很难实现的复杂流程编排和任务可视化,pipline 的实现方案是一套Groovy DSL,任何发布流程都可以表述为一段Groovy 脚本。

新建任务

图片.png

图片.png

103 ```

生成密钥

ssh-keygen

拷贝密钥到'远程主机的tomcat用户' 密码:1234.com

ssh-copy-id tomcat@192.168.37.105 ssh-copy-id tomcat@192.168.37.106 ```

103 slave 没有密钥(方法)

图片.png

图片.png

图片.png

``` node { stage('代码clone') git branch: 'develop', credentialsId: 'cf8129d1-9772-475b-a9a8-ea857687d1ab', url: 'git@192.168.37.101:linux01/web1.git' stage('代码打包') sh 'cd /var/lib/jenkins/workspace/pipline-test && tar czvf app.tar.gz ./*'

stage('代码拷贝') sh 'cd /var/lib/jenkins/workspace/pipline-test && scp app.tar.gz tomcat@192.168.37.105:/data/tomcat/tomcatappdir' sh 'cd /var/lib/jenkins/workspace/pipline-test && scp app.tar.gz tomcat@192.168.37.106:/data/tomcat/tomcatappdir'

stage('代码部署') sh 'ssh tomcat@192.168.37.105 "/etc/init.d/tomcat stop"' sh 'ssh tomcat@192.168.37.106 "/etc/init.d/tomcat stop"'

sh 'ssh tomcat@192.168.37.105 "rm -rf /data/tomcat/tomcat_webdir/app && rm -rf /data/tomcat/tomcat_webapps/myapp"'
sh 'ssh tomcat@192.168.37.106 "rm -rf /data/tomcat/tomcat_webdir/app &&  rm -rf /data/tomcat/tomcat_webapps/myapp"'

sh 'ssh tomcat@192.168.37.105  "mkdir /data/tomcat/tomcat_webdir/app && cd /data/tomcat/tomcat_appdir && tar xvf app.tar.gz  -C /data/tomcat/tomcat_webdir/app/"'
sh 'ssh tomcat@192.168.37.106  "mkdir /data/tomcat/tomcat_webdir/app && cd /data/tomcat/tomcat_appdir && tar xvf app.tar.gz  -C /data/tomcat/tomcat_webdir/app/"'

stage('代码替换') sh 'ssh tomcat@192.168.37.105 "ln -sv /data/tomcat/tomcatwebdir/app /data/tomcat/tomcatwebapps/myapp"' sh 'ssh tomcat@192.168.37.106 "ln -sv /data/tomcat/tomcatwebdir/app /data/tomcat/tomcatwebapps/myapp"'

stage('启动tomcat') sh 'ssh tomcat@192.168.37.105 "/etc/init.d/tomcat start"' sh 'ssh tomcat@192.168.37.106 "/etc/init.d/tomcat start"' } ```

*105

修改版本号

``` cd /opt/web1

修改页面信息

vim index.html

Linux01 项目1

Linux01 web1 v5

Linux01 web1 v8

Linux01 web1 v9

<--

git add ./* git commit -m "v9"

账号:zhangsan 密码:1234.com

git push ``` 立即构建

图片.png

版本变化

图片.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值