centos7环境下Jenkins的安装

2019-06-23  本文已影响0人  jeffrey_hjf

背景

手贱又上百度查 centos7安装jenkins,五花八门好吧。看着官方文档开搞吧,记录遇到的一些小坑

安装java环境

1.查看服务器版本

centos7,继续。

cat /etc/redhat-release

CentOS Linux release 7.2.1511 (Core)

2.安装java

yum install java

但对于centos有个问题,不可以安装成gcj(GNU Compiler for the Java Programing Language),导致jenkins不工作,如果查看java版本类似如下,需要卸载,安装其他版本

java -version
java version "1.5.0"
gij (GNU libgcj) version 4.4.6 20110731 (Red Hat 4.4.6-3)

3.卸载异常版本:

yum remove java

4.搜索openJDK版本

yum search openjdk

#java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
#java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
#java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
...

5.安装openJDK

#安装`1.8.0`的
yum install java-1.8.0-openjdk

6.查看java版本

java -version

openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)

安装jenkins

可以选择安装LTS Release版本,好像每半年迭代一次。或者Weekly Release,每一周或者两周更新一次。
最近的版本2.24隔了两个礼拜,估计10月9号会发布最新为2.25,每个版本会有一些enhancement & bug fix。

1.拉取库的配置到本地对应文件

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

jenkins.repo内容是这样:

[jenkins]
name=Jenkins-stable
baseurl=http://pkg.jenkins.io/redhat-stable
gpgcheck=1

2.导入公钥

sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

3.安装jenkins

#`-y`参数:回答全部问题为是
sudo yum -y install jenkins

基本安装完成。
顺便贴一下LTS安装指令,只是稍有不同:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins

4.更新jenkins

yum update jenkins

熟悉jenkins配置

1.系统配置文件

vi /etc/sysconfig/jenkins

可以获得几个重要配置项目信息

2.配置文件夹

这个位置挺重要

ls /var/lib/jenkins

jobslogsplugins等文件夹及文件若干。勿乱删
这次主要看了看plugins文件夹,所有插件都在里面,如插件ssh-slaves,会有一个ssh-slaves文件夹及ssh-slaves.jpi
当某个插件未安装成功时,会有一个以.tmp结尾的文件

3.日志

logs相关两个位置:

4.修改Jenkins相关文件夹用户权限

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

启动&配置

1.启动服务&重启服务

service jenkins start
# 重启Jenkins(若是其他方式安装的jenkins则重启方式略不同)
service jenkins restart
# 查看Jenkins进程所属用户
ps -ef | grep jenkins
# 若显示为root用户,则表示修改完成

2.浏览器访问

IP地址:8080

3.获取管理员密码

按提示,去/var/lib/jenkins/secrets/initialAdminPassword,复制贴进去,continue

cat /var/lib/jenkins/secrets/initialAdminPassword

4.选择安装方式

默认推荐吧,左边的。第二个自定义插件,如果知道需要什么插件,插件都是干嘛的,再选custom吧

5.等待插件安装

如果正常,没啥说的。如果像这样,一些插件失败了,刷新页面,下一步。失败的插件后来再装。

image.png

6.插件安装失败分析

这里贴一个相似的ISSUE,unsolved,就我个人遇到的可能有网络的原因
查看jenkins.log,搜索failed关键字,一些插件依赖credentials,因为网络原因没安装成功credentials,导致好几个没安装成功。
去jenkins管理界面手动安装吧

Caused by: java.io.IOException: Plain Credentials Plugin v1.3 failed to load.
 - credentials v2.1.5 is missing. To fix, install v2.1.5 or later.

7.手动安装异常插件

系统管理 -> 管理插件 -> 可选插件,表格右上异步过滤,插件打勾,直接安装。安装插件就在这里安装。

[图片上传失败...(image-83ee3c-1561234674809)]

注意
异常插件处理的时候,这里需要注意插件之间的依赖关系,A插件依赖的B插件没安装成功,安装A之前先安装B,管理插件里的异常列表写的很清楚。

8.卸载jenkins

在某次自动安装插件时异常了一大片,刷新也没出现下一步,等待许久无果,删了重装

1.rpm -e jenkins
2.会有一些残留的文件分散在各地

find / -iname jenkins | xargs -n 1000 rm -rf

安装遇到的问题

[root@localhost jenkins]# service jenkins start
Starting jenkins (via systemctl):  Job for jenkins.service failed because the control process exited with error code. See "systemctl status jenkins.service" and "journalctl -xe" for details.
                                                           [失败]
[root@localhost jenkins]# systemctl status jenkins.service
● jenkins.service - LSB: Jenkins Automation Server
   Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since 一 2019-07-08 22:59:44 CST; 16s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4738 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=1/FAILURE)

7月 08 22:59:44 localhost.localdomain systemd[1]: Starting LSB: Jenkins Automation Server...
7月 08 22:59:44 localhost.localdomain runuser[4743]: pam_unix(runuser:session): session opened for user jenkins by (uid=0)
7月 08 22:59:44 localhost.localdomain jenkins[4738]: Starting Jenkins bash: /usr/java/jdk1.8.0_211/bin/java: 没有那个文件或目录
7月 08 22:59:44 localhost.localdomain runuser[4743]: pam_unix(runuser:session): session closed for user jenkins
7月 08 22:59:44 localhost.localdomain jenkins[4738]: [失败]
7月 08 22:59:44 localhost.localdomain systemd[1]: jenkins.service: control process exited, code=exited status=1
7月 08 22:59:44 localhost.localdomain systemd[1]: Failed to start LSB: Jenkins Automation Server.
7月 08 22:59:44 localhost.localdomain systemd[1]: Unit jenkins.service entered failed state.
7月 08 22:59:44 localhost.localdomain systemd[1]: jenkins.service failed.

解决方案:
注意划线的那句话,把java路径找不到,所以先找到java的安装路径,可以用whereis java来找路径,比如java路径是
/usr/local/jdk1.8/bin/java ,按照下面的进行配置即可

vim /etc/rc.d/init.d/jenkins
candidates="

************

************

/usr/local/jdk1.8/bin/java "

9.彻底卸载jenkins

service jenkins stop
yum clean all
yum -y remove jenkins
rm -rf /var/cache/jenkins
rm -rf /var/lib/jenkins/

或者

yum remove jenkins

完。

参考链接:

上一篇下一篇

猜你喜欢

热点阅读