码迷,mamicode.com
首页 > 其他好文 > 详细

安装Jenkins持续集成服务

时间:2020-06-08 17:41:28      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:管理员   from   lis   远程   evel   pen   add   提高   分发   

一、Jenkins概述

1、Jenkins的作用和用户类型

1)Jenkins的作用

持续集成:将不同的模块或者开发人员开发的功能进行整合;
持续交付:可以重复性更新程序或者软件项目;
持续部署:自动化部署软件项目,定期备份,部署项目异常回滚;

2)Jenkins使用的用户

开发人员:编写好的代码不需要手动编译打包工作,直接将代码提交到SVN或者git中保存;
运维人员:减轻管理员工作量,避免人工干预,减少错误率;
测试人员:方便进行简单的代码测试,避免出现程序逻辑错误;

2、Jenkins的特点和Jenkins的组件

1)Jenkins的特点

Jenkins使用JAVA语言编写的程序;
开源自动化运维工具;
提供开放的简单易用交付平台;
方便用户安装和配置软件开发项目;
提高软件开发效率,保证软件开发质量;
方便用户持续部署项目和测试项目;

2)Jenkins需要的组件

自动构建软件或者程序运行过程:自动编译源代码程序分发编译的程序到服务器、部署程序到服务器、测试部署服务;

代码存储库:存储用户开发的程序,控制程序的版本,使用SVN或者git;

持续集成服务:使用Jenkins持续部署开发的项目,对项目进行备份,发现项目异常进行回滚;

3、Jenkins的特征:

  • 开源的Java语言开发持续继承工具,支持持续继承,持续部署;

  • 易于安装部署配置:可通过yum安装,下载war包以及通过docker容器等快速实现安装部署,使用web界面配置管理;

  • 消息通知及测试报告:集成RSS、E-mail通过RSS发布构建结果或者当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告;

  • 分布式构建:Jenkins可以让多台计算机一起构建/测试(主从构建);

  • 文件识别:Jenkins可以跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等;

  • 丰富的插件支持:1000+插件;

二、安装配置Jenkins

1、安装Jenkins

<!--此案例环境是Docker环境,连接公网,内存4GB,CPU2个-->
[root@centos01 ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo   
<!--下载Jenkins源-->
[root@centos01 ~]# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key   <!--导入jenkins公钥-->
[root@centos01 ~]# yum -y install java-1.8.0-openjdk-devel java-1.8.0-openjdk  <!--安装JDK-->
[root@centos01 ~]# yum -y install jenkins   <!--安装Jenkins-->
<!--网速慢的换需要等待很长时间-->
<!--或者通过离线包安装Jenkins,访问清华大学源网站,下载相应的Jenkins版本包,上传到服务器进行安装-->
<!--清华大学源网站:https://mirror.tuna.tsinghua.edu.cn/jenkins/-->
[root@centos01 ~]# ls
jenkins-2.238-1.1.noarch.rpm   <!--上传离线rmp包安装jenkins-->
[root@centos01 ~]# rpm -ivh jenkins-2.238-1.1.noarch.rpm <!--通过离线包安装Jenkins-->
[root@centos01 ~]# systemctl start jenkins;systemctl enable jenkins  
<!--启动Jenkins服务,设置开机自动启动-->
<!--或者-->
[root@centos01 ~]# /etc/init.d/jenkins start  <!--启动jenkins-->
[root@centos01 ~]# /etc/init.d/jenkins restart  <!--重新启动jenkins-->
[root@centos01 ~]# netstat -anptu |grep 8080  <!--监听tomcat端口是否启动-->
tcp6       0      0 :::8080                 :::*                    LISTEN      6504/java

2、初始化Jenkins

1)访问Jenkins的web管理页面http://192.168.100.10:8080

技术图片

2)获取管理员密码,也可以查看jenkins日志获取密码

[root@centos01 ~]# less /var/log/jenkins/jenkins.log

技术图片

3)将jenkins默认推荐的插件装上

技术图片

4)等待推荐插件安装完成

技术图片

5)典型的各别插件安装失败,点击重试重新安装即可

技术图片

6)新创建一个管理用户或者继续使用admin

技术图片

7)访问Jenkins的URL

技术图片

8)Jenkins插件安装完成

技术图片

9)修改Jenkins主配置文件

[root@centos01 ~]# vim /etc/sysconfig/jenkins
10 JENKINS_HOME="/var/lib/jenkins"
29 JENKINS_USER="jenkins"
56 JENKINS_PORT="8080"
65 JENKINS_LISTEN_ADDRESS="192.168.100.10"
150 JENKINS_HANDLER_MAX="100"
[root@centos01 ~]# systemctl restart jenkins  <!--重新启动Jenkins重新访问-->

3、安装publish over ssh插件

1)管理Jenkins插件

技术图片

2)点击可选插件,搜索publish over ssh并直接安装

技术图片

3)静静的等待他安装完成

技术图片

4)下载完成自动重启Jenkins

技术图片

5)重启完成后登录Jenkins,去已安装插件中验证publish over ssh是否安装成功

技术图片

4、配置SSH

<!--需要再开一台服务器(100.20)-->
[root@centos01 ~]# ssh-keygen -t rsa  <!--Jenkins服务器生成ssh密钥-->
[root@centos01 ~]# cat /etc/ssh/sshd_config | grep AuthorizedKeysFile  
    <!--查看Jenkins服务器自己公钥保存位置-->
AuthorizedKeysFile      .ssh/authorized_keys
[root@centos01 ~]# cat .ssh/id_rsa.pub >> .ssh/authorized_keys 
   <!--将Jenkins自己的公钥输入到公钥配置文件中保存-->
[root@centos01 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.100.20 
    <!--将Jenkins的ssh公钥拷贝到100.20服务器-->
[root@centos01 ~]# ssh root@192.168.100.20 <!--Jenkins服务器测试免密远程100.20-->
Last login: Mon Jun  1 16:10:06 2020 from 192.168.100.252
[root@centos02 ~]# exit  <!---->

5、配置Jenkins系统

1)设置系统配置

技术图片

2)Jenkins获取自动的私有并复制

[root@centos01 ~]# cat .ssh/id_rsa

3)添加Jenkins服务器的私钥

技术图片

4)添加想要远程管理的客户端

技术图片

5、Jenkins创建新任务

1)Jenkins创建新任务

技术图片

2)编辑任务名称

技术图片

3)编辑通过什么源码下载pipework网络管理工具

技术图片

4)配置构建后的操作步骤

技术图片

5)将Jenkins服务器自己和100.20客户端都添加进来并进行配置

技术图片

技术图片

6)查看是否构建成功

技术图片

7)Jenkins服务器验证pipework网络管理工具是否下载成功

[root@centos01 ~]# cd /tmp/
[root@centos01 tmp]# ls
accp
akuma6688894331215680472jar
hsperfdata_jenkins
hsperfdata_root
jetty-0_0_0_0-8080-war-_-any-4925329859175627632.dir
jetty-0_0_0_0-8080-war-_-any-6066713579825404153.dir
jna21252815367201186jar
lua_SQXqZm
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-chronyd.service-vFbZSP
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-cups.service-AHVikS
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-vgauthd.service-75jObR
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-vmtoolsd.service-PBFEqQ
tmp.W114IMXVc4
winstone1052959205009407779.jar
winstone4171593767117190229.jar
[root@centos01 tmp]# ls accp/          <!--查看pipework工具是否下载成功-->
docker-compose.yml  doctoc  LICENSE  pipework  pipework.spec  README.md

8)100.20客户端查看pipework网络管理工具是否下载成功

[root@centos02 ~]# cd /tmp/
[root@centos02 tmp]# ls
benet
systemd-private-4156eeb648fe41a4bcd4092c5d684853-chronyd.service-YBc3RX
systemd-private-4156eeb648fe41a4bcd4092c5d684853-cups.service-X7gmHo
systemd-private-4156eeb648fe41a4bcd4092c5d684853-vgauthd.service-BesDwC
systemd-private-4156eeb648fe41a4bcd4092c5d684853-vmtoolsd.service-tzaBYh
[root@centos02 tmp]# ls benet/      <!--查看pipework工具是否下载成功-->
docker-compose.yml  doctoc  LICENSE  pipework  pipework.spec  README.md

9)可以将下载好的pipework网络管理工具打包下载到宿主机

技术图片

10)删除pipework任务,以后不再自动更新下载pipework

技术图片

————————————本文到此结束,感谢观看——————————————

安装Jenkins持续集成服务

标签:管理员   from   lis   远程   evel   pen   add   提高   分发   

原文地址:https://blog.51cto.com/14156658/2502451

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!