ToB企服应用市场:ToB评测及商务社交产业平台

标题: CentOS7下,Jenkins完备安装、配置和备注 [打印本页]

作者: 九天猎人    时间: 2024-8-24 12:15
标题: CentOS7下,Jenkins完备安装、配置和备注
前言

官网

https://www.jenkins.io/zh/
提前避坑

1.最新Jenkins依靠jdk-11,因此建议利用相应工具启动。固然jdk8(2022/09/01前)也支持,但是版本过老可能会导致不须要问题。
   You are running Jenkins on Java 1.8, support for which will end on or after September 1, 2022.
  2.Jenkins默认端口为8080,如果有防火墙需要放开这个端口。同理,如果是阿里云服务器,还要放开安全组(自行百度)。
3.截止当前完稿,很多插件要求Jenkins版本至少是2.387.3,请在最稳定情况下只管安装最新,否则部门插件可能无法安装利用。

本次工具

1.jenkins.war包2.387.3版本:jenkins.war
2.jdk-11.0.3(jdk-11.0.3_linux-x64_bin.tar.gz):jdk-11.0.3_linux-x64_bin.tar.gz
   如下载慢或失败,可公众号【白鸽子】回复【001001】获取国内网盘下载所在,下载包含免费版的XShell、Xftp。
  安装及运行Jenkins

安装JDK

1.用Xftp等工具,将war包和jdk上传到服务器安装目录,工具自定,位置自定,这里演示以是放在了/usr/local/demo下:

用Xshell等工具,连上(过程略)服务器后开始操作:
2.解压jdk-11.0.3
  1. [root@SERVER108 ~]# cd /usr/local/demo
  2. [root@SERVER108 demo]# tar -zxvf jdk-11.0.3_linux-x64_bin.tar.gz
  3. jdk-11.0.3/README.html
  4. jdk-11.0.3/bin/jaotc
  5. ……
  6. jdk-11.0.3/lib/src.zip
  7. jdk-11.0.3/lib/tzdb.dat
  8. jdk-11.0.3/release
  9. [root@SERVER108 demo]# ls
  10. jdk-11.0.3  jdk-11.0.3_linux-x64_bin.tar.gz  jenkins.war
复制代码
到这一步实在就可以了,不消再配置情况变量,指定全路径就可以直接利用jdk11。对于情况jdk版本还是jdk8的朋友来说,尤其友爱,不消思量配置辩论等问题。
3.配置情况jdk(可略过)
3.1.进入配置文件
  1. #如果没有安装vim,请先运行命令sudo yum install -y vim
  2. [root@SERVER108 demo]# vim /etc/profile
复制代码
3.2.键盘点【i】键进入编辑模式
3.3.在文件中添加如下内容(放心添加,不会跟你现有配置辩论)
  1. export JAVA_HOME=/usr/local/software/jdk1.8.0_351                #这是你jdk的具体目录(根据实际填写)
  2. export PATH=$PATH:${JAVA_HOME}/bin                #这个设置是固定的,它会根据上面jdk目录找到bin目录
复制代码
3.4.按【Esc】退出编辑模式
3.5.输入【:wq】再按【Enter】,保存设置并退出
3.6.更新配置
  1. [root@SERVER108 demo]# source /etc/profile
复制代码
上面一步,是为了让系统知道你默认利用哪个jdk版本,当你执行java -version就会体现版本信息:
  1. [root@SERVER108 demo]# java -version
  2. java version "1.8.0_351"
  3. Java(TM) SE Runtime Environment (build 1.8.0_351-b10)
  4. Java HotSpot(TM) 64-Bit Server VM (build 25.351-b10, mixed mode
复制代码
你也可以指定具体的jdk全路径目录来操作指令:
  1. [root@SERVER108 demo]# /usr/local/demo/jdk-11.0.3/bin/java -version
  2. java version "11.0.3" 2019-04-16 LTS
  3. Java(TM) SE Runtime Environment 18.9 (build 11.0.3+12-LTS)
  4. Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.3+12-LTS, mixed mode)
复制代码
配置防火墙

1.查抄firewall是否运行,之后关闭,大概在firewall中放开8080端口
1.1.查抄是否安装防火墙
  1. [root@SERVER108 demo]# rpm -q firewalld                #有安装会输出版本信息(如下),没安装没有任何输出
  2. firewalld-0.6.3-13.el7_9.noarch
复制代码
1.2.查抄firewall运行状态
  1. [root@SERVER108 demo]# systemctl status firewalld
  2. ● firewalld.service - firewalld - dynamic firewall daemon
  3. Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
  4. Active: active (running) since 五 2024-05-31 13:30:16 CST; 3 weeks 1 days ago
  5. Docs: man:firewalld(1)
  6. ……
复制代码
此中【Active: active (running)】就体现防火墙正在运行。
1.3.关闭防火墙(不推荐)
  1. [root@SERVER108 demo]# systemctl stop firewalld                #关闭防火墙
  2. [root@SERVER108 demo]# systemctl disable firewalld                #禁止防火墙开机自启动
  3. [root@SERVER108 demo]# systemctl status firewalld
  4. ● firewalld.service - firewalld - dynamic firewall daemon
  5. Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
  6. Active: inactive (dead) since 六 2024-06-22 14:15:14 CST; 3s ago
  7. Docs: man:firewalld(1)
  8. ……
复制代码
【Active: inactive (dead)】体现防火墙已关闭。
1.4.防火墙开放8080端口(推荐)
  1. [root@SERVER108 demo]# firewall-cmd --permanent --zone=public --add-port=8080/tcp                #添加规则 开启8080端口
  2. success
  3. [root@SERVER108 demo]# firewall-cmd --reload                #重载配置,使新配置生效
  4. success
  5. [root@SERVER108 demo]# firewall-cmd --list-ports                #列举已开放端口
  6. 8080/tcp
复制代码
启动Jenkins

1.创建一个jenkins目录,用于统一管理Jenkins相干内容,并把jenkins.war移进去
  1. [root@SERVER108 demo]# mkdir jenkins && mv jenkins.war jenkins
复制代码
2.用jdk-11.0.3运行jenkins.war
2.1.为了使输出日记生成在jenkins目录下,先辈入再运行
  1. [root@SERVER108 demo]# cd jenkins/
  2. [root@SERVER108 jenkins]# nohup /usr/local/demo/jdk-11.0.3/bin/java -jar jenkins.war &
  3. [1] 55804
  4. [root@SERVER108 jenkins]# nohup: 忽略输入并把输出追加到"nohup.out"
复制代码
有上面的输出后,按【Ctrl+C】回到下令界面。
2.2.查抄是否运行成功
用netstat工具查抄8080端口,输出如下则体现Jenkins运行成功:
  1. [root@SERVER108 jenkins]# netstat -lnp|grep 8080
  2. tcp6       0      0 :::8080                 :::*                    LISTEN      52775/../jdk-11/bin
复制代码
也可以直接查抄输出日记文件:
  1. [root@SERVER108 jenkins]# ls
  2. jenkins.war  nohup.out
  3. [root@SERVER108 jenkins]# cat nohup.out
  4. ……
  5. *************************************************************
  6. *************************************************************
  7. *************************************************************
  8. Jenkins initial setup is required. An admin user has been created and a password generated.
  9. Please use the following password to proceed to installation:
  10. 2d5d675e8af74e439f075b7d6d49daa2
  11. This may also be found at: /root/.jenkins/secrets/initialAdminPassword
  12. *************************************************************
  13. *************************************************************
  14. *************************************************************
  15. ……
复制代码
【Jenkins initial setup is required.】体现Jenkins初始化运行成功,但需要进行配置。
同时,【2d5d675e8af74e439f075b7d6d49daa2】是初始管理员密码。
配置Jenkins

1.浏览器访问[服务器ip]:8080,如192.160.50.88:8080,进入Jenkins初始配置界面:

根据页面提示,管理员密码设置在【/root/.jenkins/secrets/initialAdminPassword】,利用cat下令查看:
  1. [root@SERVER108 jenkins]# cat /root/.jenkins/secrets/initialAdminPassword
  2. 2d5d675e8af74e439f075b7d6d49daa2
复制代码
这个密码实在就是我们刚刚查看日记时体现的谁人管理员密码。
注:XShell复制操作是【Ctrl+Insert】,粘贴是【Shift+Insert】。
2.将密码粘贴到页面上,解锁Jenkins,并进入插件配置页面:

左下角体现Jenkins的版本。这里建议,如果是2.387.3以上的,直接选【安装推荐的插件】。如果版本较低、网络不佳,大概暂时不想安装的,也可以点击【选择插件来安装】,进入插件选择页面:

左边是插件的分类,有【构造和管理(Organization and Administration)】、【构建工具(Build Tools)】、【语言(Languages)】等等。
在这里重要是有【无】这个选项,想跳过插件安装的,可以点击【无】以设置不安装任何插件,直接点【安装】就可以跳过这一步。
我们回到上一步安装推荐的插件,每一个绿色的√都体现该插件安装成功:

3.创建第一个管理员用户
每一个设置都可以自界说,输入完后就可以点击【保存并完成】。

4.实例配置
重要就是配置URL,没有特别要求的,就直接按照默认的[服务器ip]:8080吧,输入完后就可以点击【保存并完成】。

以上,Jenkins就已经安装完成了。

Jenkins首页是如许子的:

Jenkins重要内容介绍

1.警告简析

刚安装完Jenkins,最引人注目的,大概就是右上角的黄色和赤色警告了。
1.1.这里的黄色警告,提示你有新版本的Jenkins可用。

1.2.这里的赤色警告,提示你有些插件有安全问题。

秉承着“能用不懂就不要瞎动”的原则,以上警告能忽略就忽略吧,除非你确实需要办理某个问题。
2.Manage Jenkins介绍

这个页面有很多内容我们需要认识。
2.1.System Configuration

2.1.1.Configure System(配置系统)

这里是Jenkins本身的一些系统设置,简朴介绍如下:
主目录/root/.jenkins是Jenkins配置保存的地方,删除将清理点当前Jenkins及其所有配置。系统消息可向其它共用Jenkins的用户发送消息。执行器数目设置Jenkins每次可执行多少个任务,数目越大意味着可执行的任务越多,但CPU和内存的压力也越大,可能导致死机。Jenkins URLJenkins所在系统管理员邮件所在用于接收消息的管理员邮箱。Resource Root URL资源根目录Environment variables情况变量设置GitHubGithub配置Git pluginGit插件配置ShellShell配置 2.1.2.Global Tool Configuration(全局工具配置)

常见或已安装的插件配置位置
MavenJDKGit installationsGradleAntMaven 2.1.3.Manage plugins(插件管理)

在这里可以安装或更新需要的插件。
2.1.4.Configure Global Security(配置全局安全性)

在这里可以配置授权、代理、跨域等内容。
2.1.5.Credentials(凭据)

在这里可以管理用户凭据信息,如Git账号密码等。
2.1.6.Manage Users(管理用户)

在这里可以管理所有的Jenkins用户。
2.1.7.System Log(系统日记)

在这里可以查看所有的系统日记。
备注

Jenkins相干

1.Jenkins的默认输出日记为nohup.out,可查看运行情况。
  1. [root@SERVER108 jenkins]# cat nohup.out
  2. Running from: /usr/local/demo/jenkins/jenkins.war
  3. webroot: /root/.jenkins/war
  4. 2024-06-22 06:37:48.360+0000 [id=1]        INFO        winstone.Logger#logInternal: Beginning extraction from war file
  5. 2024-06-22 06:37:48.443+0000 [id=1]        WARNING        o.e.j.s.handler.ContextHandler#setContextPath: Empty contextPath
  6. 2024-06-22 06:37:48.522+0000 [id=1]        INFO        org.eclipse.jetty.server.Server#doStart: jetty-10.0.13; built: 2022-12-07T20:13:20.134Z; git: 1c2636ea05c0ca8de1ffd6ca7f3a98ac084c766d; jvm 11.0.3+12-LTS
  7. 2024-06-22 06:37:48.824+0000 [id=1]        INFO        o.e.j.w.StandardDescriptorProcessor#visitServlet: NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet
  8. 2024-06-22 06:37:48.886+0000 [id=1]        INFO        o.e.j.s.s.DefaultSessionIdManager#doStart: Session workerName=node0
复制代码
2.Jenkins的默认配置、数据信息目录是用户目录下的.jenkins,利用ls -lA可以看到。删除这个目录,则完备删除Jenkins。
  1. [root@SERVER108 jenkins]# cd /root/
  2. [root@SERVER108 ~]# ls -lA
  3. 总用量 44
  4. -rw-------.  1 root root 1392 5月  29 18:52 anaconda-ks.cfg
  5. -rw-------.  1 root root 4908 6月  22 13:51 .bash_history
  6. -rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
  7. -rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
  8. -rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
  9. drwxr-xr-x.  4 root root   29 6月  17 14:21 .cache
  10. drwxr-xr-x.  3 root root   18 5月  29 19:47 .config
  11. -rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
  12. drwxr-xr-x.  3 root root   20 6月  22 15:03 .groovy
  13. drwxr-xr-x.  3 root root   19 6月  17 14:17 .java
  14. drwxr-xr-x. 11 root root 4096 6月  22 15:21 .jenkins
  15. drwxr-xr-x.  3 root root   19 6月  21 18:52 .npm
  16. -rw-------.  1 root root   64 6月  21 18:52 .npmrc
  17. drwxr-----.  3 root root   19 6月  17 16:11 .pki
  18. -rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
  19. -rw-------.  1 root root  861 6月  22 13:50 .viminfo
复制代码
3.Jenkins在运行过程中,尤其是安装插件,可能需要多次重启,可以在浏览器键入以下所在:
   http://[服务器IP]:8080/restart/
  同样,插件管理,一般用于安装更新插件:
   http://[服务器IP]:8080/pluginManager/
  还有,全局工具管理,一般配置Git、Maven等:
   http://[服务器IP]:8080/manage/configureTools/
  服务器相干

Jenkins是一个比较占用服务器资源的工具,在利用过程中可能会出现一些不可遇见的问题,以下下令可能会帮助到我们进行分析。
1.top,实时监控系统历程运动和系统负载的实用工具。
  1. [root@SERVER108 ~]# top
  2. top - 15:48:27 up 22 days,  2:01,  1 user,  load average: 1.00, 0.94, 0.62
  3. Tasks: 197 total,   1 running, 191 sleeping,   5 stopped,   0 zombie
  4. %Cpu(s): 10.1 us,  0.0 sy,  0.0 ni, 89.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  5. KiB Mem : 16257428 total,   200836 free, 15142524 used,   914068 buff/cache
  6. KiB Swap:  8257532 total,  7945200 free,   312332 used.   820932 avail Mem
  7. PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                
  8. 55844 root      20   0   10.7g   2.2g  17128 S 100.7 14.4  17:00.23 java                                   
  9. 56341 root      20   0  162100   2332   1588 R   0.3  0.0   0:00.02 top                                    
  10. 1 root      20   0  193788   3696   2176 S   0.0  0.0   0:42.40 systemd      
复制代码
2.df -h,查看磁盘空间利用情况。
  1. [root@SERVER108 ~]# df -h
  2. 文件系统                           容量  已用  可用 已用% 挂载点
  3. devtmpfs                           7.8G     0  7.8G    0% /dev
  4. tmpfs                              7.8G     0  7.8G    0% /dev/shm
  5. tmpfs                              7.8G   25M  7.8G    1% /run
  6. tmpfs                              7.8G     0  7.8G    0% /sys/fs/cgroup
  7. /dev/mapper/centos_server108-root   50G  4.3G   46G    9% /
  8. /dev/sda1                         1014M  155M  860M   16% /boot
  9. /dev/mapper/centos_server108-home  471G  145M  471G    1% /home
  10. tmpfs                              1.6G     0  1.6G    0% /run/user/0
复制代码
3.netstat -lnp | grep [port],查看具体端口的历程信息;kill -9 [pid]欺压杀掉历程id为pid的历程。以下下令组合,欺压关闭当前正在运行的Jenkins:
  1. [root@SERVER108 ~]# netstat -lnp|grep 8080
  2. tcp6       0      0 :::8080                 :::*                    LISTEN      55844/java         
  3. [root@SERVER108 ~]# kill -9 55844
复制代码
以上,由【白鸽子中文网】提供,感谢观看。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4