使用 Jenkins 实现集群化管理以及配置流水线
一、Jenkins Cluster 简介
1.配置 Jenkins 实现集群功能
2.使用 Jenkins 配置流水线项目
一、Jenkins Cluster 简介
首先在这里说一下单台 Jenkins 的工作流程:
1.在 GitLab 远程仓库中下载代码到本地;
2.由本地的 Maven 对代码编译成 war 包(针对于 Tomcat)
3.最后将打包的 war 包放置目标位置(一般都是通过脚本来进行传输)
- 以上就是 Jenkins 大致的一个工作流程。
现在来说一下为什么要使用 Jenkins 集群:
其实使用 Jenkins 集群的主要目的就是为了缓解 Jenkins Master 的一个工作压力(Jenkins 本身就是 Master)
因为当同时在 Jenkins 上部署多个项目时,单台 Jenkins 服务器的压力可能会过大(拉取,编译,发布)
1.配置 Jenkins 实现集群功能
- Jenkins 上需要安装:SSH、SSH Agent、SSH Build Agents 插件。
- Node 上需要安装:JDK 软件包,并进行时间同步。
1)配置 Jenkins 集群
Manage Jenkins —— Manage Nodes and Clouds
2)准备项目
3)Build Now
ssh-copy-id root@192.168.1.3 # 需要将 Node 节点的公钥发送给 Client
2.使用 Jenkins 配置流水线项目
Jenkins 流水线(Pipeline)就是在任务项目构建的过程中通过 Pipeline 来呈现每个构建阶段的细节信息。
流水线格式:
pipeline { agent any # 在所有主机上操作 stages { # 任务集 stage('Hello') { # 任务名称为 Hello steps { echo 'Hello World' # Hello 任务要执行的命令 } } } }
- 注意:我这里只是简单做了下演示,你们可以根据 pipeline 语法来玩更高级的东西。