前言
传统部署网站的方法对于单台或者几台服务器更新很容易,如果服务器规模超过百台或者千台 ,更新网站代码很频繁,手工更新非常消耗人力和时间成本基于主流的 Hudson/Jenkins 工具平台实现全自动网站部署、网站测试、网站回滚会大大地减少网站部署的成本,Jenkins 的前身为 Hdson,Hdson 为商业版, Jenkins 为开源免费版。
主流网站部署流程:
JenKins 是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。而且 Jenkins 平台的安装和配置非常容易 ,使用也非常简单。构建 Jenkins 平台可以解放人员的双手,具体内容如下:
开发人员:对于开发人员来说,只需负责网站代码的编写,不需要手动再对源码进行编译、打包、单元测试等工作,开发人员直接将写好的代码分支存放在 SVN、GI库即可;
运维人员:对于运维人员来说,使用 Jenkins 自动部署,可以减轻人工干预的错误率,同时解放运维人员繁杂的上传代码、手动备份、手动更新;
测试人员:对于测试人员来说,可以通过 Jenkins 进行代码测试、网站功能或者性能测试;
基于 Jenkins 自动部署网站的流程大致分为需求分析
→原型设计
→开发代码
→提交测试
→Jenkins 内网部署
→确认上线
→ Jenkins 备份数据
→Jenkins 外网部署
→发布完毕
→Jnkins 网站测试
等,如果发现外网部署的代码有异常,可以通过 Jenkin 及时回滚
(撤回)。
Jenkins持续集成组件
要熟练掌握 Jenkin 技能,需要了解 Jenkins 持续集成平台依赖的组件,例如 JOB 工程、SVN 仓库源 Jenkins 服务器,详解如下:
- 自动构建过程 JOB:JOB 的功能主要是获取 SVN、GIT 源码、自动编译、自动打包、部署分发和自动测试等;
- 源代码存储库:开发编写代码需上传至 SVN、GIT 代码库中,供 Jenkins 来获取;
- Jenkins 持续集成服务器:用于部署 Jenkins UI、存放 JOB 工程、各种插件、编译打包的数据等;
基于RPM包安装部署
一、Jenkins 平台安装部署
安装所需软件:
JDK软件包:jdk-8u241-linux-x64.tar.gz – 密码: 7o6d
Jenkins软件包:jenkins-2.99-1.1.noarch.rpm – 密码:lmdp
Jenkins插件包:jenkins-plugins.tar.gz – 密码:il3k
1、安装JDK运行环境
- 安装jdk
[root@localhost src]# tar -xzvf jdk-8u241-linux-x64.tar.gz
[root@localhost src]# mkdir -p /usr/java/
[root@localhost src]# mv jdk1.8.0_241/ /usr/java/
- 配置环境变量
[root@localhost src]# vim /etc/profile ///在最后面添加下面三行内容
export JAVA_HOME=/usr/java/jdk1.8.0_241
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
- 重载profile文件,并查看java版本
[root@localhost java]# source /etc/profile
[root@localhost java]# java -version
java version "1.8.0_241"
2、安装jenkins
[root@jenkins ~]# rpm -ivh jenkins-2.99-1.1.noarch.rpm
3、修改启动用户为root
[root@jenkins ~]# vim /etc/sysconfig/jenkins