jenkins实现自动化部署及服务重启-初级

一、说明

         部署jenkins 主要用于web界面化的代码上传、生产服务重启。还未涉及到svn中的代码打包,后期会配合开发同事一起完成此功能。使用jenkins而不是脚本执行主要作用是为了方便版本控制、减少人为失误导致。而jenkins主要是作为可视化的一个框架使用,核心还是各类脚本的执行。而此篇内容主要是讲解如果搭建jenkins,脚本内容将在后续逐个展示,因为作者运用jenkins比较粗浅,也在不断摸索中,此篇文章也是为菜鸟朋友们准备的,希望借鉴此篇文章,少走些弯路。

         作者只是展示了少许的使用演示,更精细化的设置于相关只是,可以看这位兄台写的东西:

    http://www.cnblogs.com/zz0412/p/jenkins01.html

二、界面展示

图一:jenkins主界面,jenkins使用非常简单,实现编写好脚本,点选执行按钮,相当于执行脚本。

 wKiom1UeDsDwmuA1AAGV5oi9Nbw387.jpg

图二:查看脚本在执行过程中的输出信息,这些输出信息需要在脚本里使用输出重定向,与在shell中执行脚本输出信息类似。

wKioL1UeEDTQhjJrAAJlWxITsrA580.jpg

图三:可以看到详细的输出信息,比在linux下看输出信息更加的方便。

wKioL1UeEKPyflcMAAKGA8WZQJw576.jpg


图四:jenkins可以可视化查看各个构建执行的时间节点,成功与否。

wKioL1UeEMvD_y4PAARc6cLG86M310.jpg

三、部署jenkins

a、部署JDKtomcat

         为了方便管理调试,作者是将jenkins直接部署在tomcat.

         版本说明:jdk1.6.0_38   apache-tomcat-6.0.35

软件获取地址:http://down.51cto.com/data/2025327

JDK安装:

chmod 700 jdk-6u38-ea-bin-b04-linux-amd64-31_oct_2012-rpm.bin

./ jdk-6u38-ea-bin-b04-linux-amd64-31_oct_2012-rpm.bin

tomcat安装:

tar -xzf apache-tomcat-6.0.35.tar.gz

mv  apache-tomcat-6.0.35  /home/vekergu/jenkins

 

b、部署jenkins

部署jenkins比较简单,首先配置JDK的变量环境:

vi  /home/vekergu/jenkins/bin/catalina.sh

在注释结束代码开始处插入:

export JRE_HOME=/usr/java/jdk1.6.0_38

export CATALINA_HOME=/home/vekergu/jenkins

JAVA_OPTS="-server -Xms2048m -Xmx2048m -Xmn768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+UseParallelOldGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/xrltest1/tomcat/dumpfile/heap.bin  -Xloggc:/home/xrltest1/tomcat/logs/gc.log"

以上内容和含义和用途不再细讲,不了解的可以看作者前面写的博客

 

 

删除webapps下其他文件

rm  /home/vekergu/jenkins/webapps/webapps/*-rf

 

放置jenkins.war/home/vekergu/jenkins/webapps

mv  jenkins.war /home/vekergu/jenkins/webapps

 

重点:

更改/home/vekergu目录所有者为vekergu

使用root账户执行:

chown -R  vekrgu:vekrgu /home/vekergu

 

启动tomcat即可

 

访问路径http://host_id:8080

 

 

 

作者简化了很多的操作,因为jenkins主要是放在内网使用,所以对齐部署要求不太严格,如果在外网环境部署,小伙伴们最好还是先有点tomcat的部署经验再动手。

 

三、使用jenkins

a、页面介绍

wKioL1UeEVPy6q3OAAFY59OSOlA861.jpg

b、新建项目

wKiom1UeEQOgeS3IAAO9GjaHkrA791.jpg

wKiom1UeFTqTYv3ZAAN2cvoS2gU435.jpg

需要注意的地方:

1.jenkins部署在vekergu用户目录下,已经将jenkins项目的属主改为vekergu,所以脚本只有vekergu用户的权限,如果有权限冲突,可以考虑使用sodu解决。

2.脚本可以根据后面的参数反复应用于不同的场景

 

c、新建用户

wKioL1UeFxbxTqY7AARhYehzINo313.jpg

wKiom1UeFWmzxce-AAMTR_IKw7I382.jpg



需要注意的是:

1. Allow users to signup 选项必须选上,不然无法注册用户

2. Anyone can do anything   必须先选用这个,不然你还没注册用户就使用账户密码验证,很可能就登录不了(作者就踩过这个坑),而且你会发现及时重新部署,还是登录不了

       需要说明的是,jenkins保存的所有文件信息都在/home/vekergu目录下的.jenkins目录,需要把这个目录删除干净才行。

 

wKiom1UeFhGTCi06AAGW1nB3hCs577.jpg

 

 

 

d、用户授权

wKiom1UeFO2RcTJdAALTAG9AgL8838.jpg

wKiom1UeEjfzmz62AAMl1TM9Yoo331.jpg

 

e、总结

         作者使用到jenkins功能能少,其他功能都未使用,以后什么很好用的功能,再分享给大家把~~