标签:管理员 from lis 远程 evel pen add 提高 分发
一、Jenkins概述持续集成:将不同的模块或者开发人员开发的功能进行整合;
持续交付:可以重复性更新程序或者软件项目;
持续部署:自动化部署软件项目,定期备份,部署项目异常回滚;
开发人员:编写好的代码不需要手动编译打包工作,直接将代码提交到SVN或者git中保存;
运维人员:减轻管理员工作量,避免人工干预,减少错误率;
测试人员:方便进行简单的代码测试,避免出现程序逻辑错误;
Jenkins使用JAVA语言编写的程序;
开源自动化运维工具;
提供开放的简单易用交付平台;
方便用户安装和配置软件开发项目;
提高软件开发效率,保证软件开发质量;
方便用户持续部署项目和测试项目;
自动构建软件或者程序运行过程:自动编译源代码程序分发编译的程序到服务器、部署程序到服务器、测试部署服务;
代码存储库:存储用户开发的程序,控制程序的版本,使用SVN或者git;
持续集成服务:使用Jenkins持续部署开发的项目,对项目进行备份,发现项目异常进行回滚;
开源的Java语言开发持续继承工具,支持持续继承,持续部署;
易于安装部署配置:可通过yum安装,下载war包以及通过docker容器等快速实现安装部署,使用web界面配置管理;
消息通知及测试报告:集成RSS、E-mail通过RSS发布构建结果或者当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告;
分布式构建:Jenkins可以让多台计算机一起构建/测试(主从构建);
文件识别:Jenkins可以跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等;
<!--此案例环境是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
[root@centos01 ~]# less /var/log/jenkins/jenkins.log
[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重新访问-->
<!--需要再开一台服务器(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 <!---->
[root@centos01 ~]# cat .ssh/id_rsa
[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
[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
————————————本文到此结束,感谢观看——————————————
标签:管理员 from lis 远程 evel pen add 提高 分发
原文地址:https://blog.51cto.com/14156658/2502451