jenkins实现自动化部署及服务重启-初级
一、说明
部署jenkins 主要用于web界面化的代码上传、生产服务重启。还未涉及到svn中的代码打包,后期会配合开发同事一起完成此功能。使用jenkins而不是脚本执行主要作用是为了方便版本控制、减少人为失误导致。而jenkins主要是作为可视化的一个框架使用,核心还是各类脚本的执行。而此篇内容主要是讲解如果搭建jenkins,脚本内容将在后续逐个展示,因为作者运用jenkins比较粗浅,也在不断摸索中,此篇文章也是为菜鸟朋友们准备的,希望借鉴此篇文章,少走些弯路。
作者只是展示了少许的使用演示,更精细化的设置于相关只是,可以看这位兄台写的东西:
http://www.cnblogs.com/zz0412/p/jenkins01.html
二、界面展示
图一:jenkins主界面,jenkins使用非常简单,实现编写好脚本,点选执行按钮,相当于执行脚本。
图二:查看脚本在执行过程中的输出信息,这些输出信息需要在脚本里使用输出重定向,与在shell中执行脚本输出信息类似。
图三:可以看到详细的输出信息,比在linux下看输出信息更加的方便。
图四:jenkins可以可视化查看各个构建执行的时间节点,成功与否。
三、部署jenkins
a、部署JDK和tomcat
为了方便管理调试,作者是将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、页面介绍
b、新建项目
需要注意的地方:
1.jenkins部署在vekergu用户目录下,已经将jenkins项目的属主改为vekergu,所以脚本只有vekergu用户的权限,如果有权限冲突,可以考虑使用sodu解决。
2.脚本可以根据后面的参数反复应用于不同的场景
c、新建用户
需要注意的是:
1. Allow users to signup 选项必须选上,不然无法注册用户
2. Anyone can do anything 必须先选用这个,不然你还没注册用户就使用账户密码验证,很可能就登录不了(作者就踩过这个坑),而且你会发现及时重新部署,还是登录不了
需要说明的是,jenkins保存的所有文件信息都在/home/vekergu目录下的.jenkins目录,需要把这个目录删除干净才行。
d、用户授权
e、总结
作者使用到jenkins功能能少,其他功能都未使用,以后什么很好用的功能,再分享给大家把~~