Jenkins 2.319.1

IT 2021年12月12日19:36:35头条评论2,5432763字阅读9分12秒阅读模式

传统应用发布模式

一般一个开发团队中都会存在多个角色:开发、测试、运维。当时我们的应用发布模式可以能是这样的:

  • 开发同学进行项目代码开发,本地运行测试成功后将代码上传到版本控制系统
  • 开发同学通知运维同学项目可以发布了,然后运维同学下载代码进行打包和构建,生成应用制品
  • 运维同学使用部署脚本将生成的制品部署到测试环境,并提示测试同学可以进行产品的测试。
  • 测试同学开始进行手动、自动化测试,测试完成后提醒运维同学可以进行预生产环境部署
  • 运维同学开始进行预生产环境部署,然后测试同学进行测试,测试完成后,开始部署生产环境

手动操作很多、出现的问题很多。上面看似很流畅的过程,其实每次构建或发布都可能会出现问题。未对每次提交验证、构建环境不一致:开发人员本地测试成功后提交代码,运维同学下载代码进行编译却出现了错误。

Jenkins简介与应用场景

对于持续集成工具现在也有很多,目前应用最多的是Jenkins。Jenkins前身是Hudson,使用java语言开发的自动化发布工具。Jenkins是跨平台的可以在Win、Linux、MacOS部署。Jenkins是应用最广的开源免费的持续集成服务器,企业中普遍使用Jenkins来作为项目集成发布工具。Jenkins官方提供的插件使Jenkins更为强大。目前发展超过15年,比较成熟的CI工具(也可以CD)能够实现自动化集成发布。目前普遍使用Jenkins完成持续集成CI/持续部署CD等相关技术实践。 可以把Jenkins想象成一个脚本执行器,我们可以通过编写代码的方式灵活的控制Jenkins作业的运行与控制。

 应用场景

  • 持续集成实践
    • 集成svn/git客户端实现源代码下载检出
    • 集成maven/ant/gradle/npm等构建工具实现源码编译打包单元测试
    • 集成sonarqube对源代码进行质量检查(坏味道、复杂度、新增bug等)
  • 持续部署实践
    • 集成SaltStack/Ansible实现自动化部署发布
  • 自动化测试实践
    • 集成Jmeter/Soar/Kubernetes/.....

功能特点

  • 开源免费
  • 多平台支持(windows/linux/macos)
  • 主从分布式架构
  • 提供web可视化配置管理页面
  • 安装配置简单
  • 插件资源丰富

官网

  • http://jenkins.io

Jenkins 2.319.1

Jenkins安装部署

关于Jenkins的安装可以使用rpm或者war包安装,需要提前安装好JDK8+环境。 Jenkins采用分布式架构,分为server节点和agent节点。server节点也是可以运行构建任务的,但我们一般使其主要来做任务的调度。(毕竟server节点挂了就都...)agent节点专门用于任务的执行。随着现在容器的盛行,我们可以将server节点和agent节点在容器或者基于Kubernetes中部署。关于agent节点借助容器可以实现动态的资源分配等等好处。agent节点可以分为静态节点和动态节点。静态节点是固定的一台vm虚机或者容器。动态节点是随着任务的构建来自动创建agent节点。

安装JDK环境

  • 如果使用rpm的方式安装的Jenkins需要提前安装好JDK,Jenkins Slave运行也需要使用JDK。
[root@i-1nawyxkx ~]# yum install -y java-11-openjdk*
  • 添加环境变量
[root@i-1nawyxkx ~]#
cat >> /etc/profile<<EOF
export JAVA_HOME=/usr/lib/jvm/jre-11-openjdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
EOF
[root@i-1nawyxkx ~]# java -version
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mixed mode, sharing)

安装Jenkins Master

  • rpm包安装地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable
  • 下载rpm包
[root@i-1nawyxkx ~]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.319.1-1.1.noarch.rpm
Retrieving https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.319.1-1.1.noarch.rpm
warning: /var/tmp/rpm-tmp.PkYd9g: Header V4 RSA/SHA512 Signature, key ID 45f2c3d5: NOKEY
Preparing... ################################# [100%]
file /usr/lib/jenkins/jenkins.war from install of jenkins-2.319.1-1.1.noarch conflicts with file from package jenkins-2.303.2-1.1.noarch
  • 修改启动用户
JENKINS_USER="root"
  • 启动服务
[root@i-1nawyxkx ~]# systemctl start jenkins.service
[root@i-1nawyxkx ~]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 566/sshd 
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 744/master 
tcp6 0 0 :::22 :::* LISTEN 566/sshd 
tcp6 0 0 ::1:25 :::* LISTEN 744/master 
tcp6 0 0 :::8080 :::* LISTEN 16265/java
  • 访问http://ip:8080/

Jenkins 2.319.1

视频操作地址

  • 复制一下链接到浏览器,记得关注今日头条号,掌握最新资料。
  • https://www.ixigua.com/7040845651705332263?wid_try=1

继续阅读
  • 我的QQ
  • QQ扫一扫
  • weinxin
  • 我的头条
  • 头条扫一扫
  • weinxin
头条最后更新:2021-12-13
IT
  • 本文由 发表于 2021年12月12日19:36:35
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接

发表评论