Linux环境搭建记录——Jenkins安装

Jenkins安装


更多Jenkins详细信息请参考:Jenkins官方文档

分步指南

  1. 获取Jenkins资源
    可以访问 https://jenkins.io/zh/download/ 下载获取
    可以访问http://mirrors.jenkins-ci.org/redhat/下载获取

    ps:安装jenkins之前,请预先安装java环境(且应为jdk8或jdk11,注意版本),可以参考Linux环境搭建记录——JDK安装

  2. 上传资源到服务器

    创建jenkins文件夹,上传资源文件

    mkdir /home/admin/download/jenkins && cd /home/admin/download/jenkins
    

    执行前置依赖插件安装命令

    yum -y install epel-release
    yum -y install daemonize
    

    执行rpm安装命令

    rpm -ivh jenkins-2.332-1.1.noarch.rpm
    
  3. 修改jenkins运行配置

    修运行jenkins所使用的用户及运行端口:

    vim /etc/sysconfig/jenkins
    

    找到内容并修改为

    #默认填写用户为jenkins,需要根据现有用户修改
    #JENKINS_USER="jenkins"
    JENKINS_USER="root"
    #默认运行端口为8080
    #JENKINS_PORT=""
    JENKINS_PORT="8888"
    

    修运行jenkins所使用的JDK版本:

    vim /etc/init.d/jenkins
    

    找到内容 candidates 并添加 JDK 路径

    #这里指定JDK安装的文件路径
    #我们添加的路径为/home/admin/java/jdk1.8.0_321/bin/java
    #增加在第一行
    candidates="
    /home/admin/java/jdk1.8.0_321/bin/java
    /etc/alternatives/java
    /usr/lib/jvm/java-1.8.0/bin/java
    /usr/lib/jvm/jre-1.8.0/bin/java
    /usr/lib/jvm/java-11.0/bin/java
    /usr/lib/jvm/jre-11.0/bin/java
    /usr/lib/jvm/java-11-openjdk-amd64
    /usr/bin/java
    "
    

    由于墙的原因导致的网络问题,原有配置的插件镜像地址无法获取资源所以还需要进行地址修改

    vim /var/lib/jenkins/hudson.model.UpdateCenter.xml
    

    把url修改为

    <?xml version='1.1' encoding='UTF-8'?>
    <sites>
      <site>
        <id>default</id>
        <url>http://mirror.xmission.com/jenkins/updates/update-center.json</url>
      </site>
    </sites>
    

    对于jenkins有几个默认的重要位置需要记录
    1)war包: /usr/lib/jenkins/jenkins.war
    2)配置文件:/etc/sysconfig/jenkins
    3)默认的JENKINS_HOME目录:/var/lib/jenkins/
    4)Jenkins日志文件地址:/var/log/jenkins/
    5)服务启动文件:/etc/init.d/jenkins

  4. 注册服务,启动服务

    #重新加载 systemctl 服务
    systemctl daemon-reload
    #此时已经可以启动jenkins服务
    systemctl start jenkins
    #停止jenkins服务
    systemctl stop jenkins
    #重启jenkins服务
    systemctl restart jenkins
    #查看jenkins服务状态
    systemctl status jenkins
    
  5. 开启防火墙端口策略

    #查看防火墙全部设置
    firewall-cmd --list-all
    #若防火墙服务未启动可执行
    systemctl start firewalld
    #设置nexus服务端口防火墙可访问
    firewall-cmd --zone=public --add-port=8888/tcp --permanent
    #重新加载防火墙设置
    firewall-cmd --reload
    #重新查看防火墙全部设置确认添加成功
    firewall-cmd --list-all
    

    此时就能通过浏览器访问了
    依照安装提示进行操作

    首次访问界面展示效果
    根据提示在 /var/lib/jenkins/secrets/initialAdminPassword 找到密码并粘贴到输入框

    #显示初始密码
    cat /var/lib/jenkins/secrets/initialAdminPassword
    

    离线安装操作界面
    输入密码后进入界面,由于没有网络所以这里显示的是离线操作,有网络的状态可以直接选择需要的插件进行安装,我们这里选择跳过插件安装,后续进行插件补充。

    创建管理员账户界面

    设置管理员账号后,点击保存并完成,之后按顺序保存开始使用即可。

    在这里插入图片描述

Jenkins升级


  1. 获取需要更新的Jenkins资源
    可以访问 https://jenkins.io/zh/download/ 下载获取
    可以访问http://mirrors.jenkins-ci.org/redhat/下载获取

    ps:更新jenkins之前,请检查对应的jdk依赖版本是否符合,否则会导致升级失败

  2. 查看 war 包所在目录

    # war 包默认在	 /usr/lib/jenkins/jenkins.war 路径上,但也可以自定义设置
    rpm -ql jenkins
    # 如下为执行展示结果
    #jenkins的启动文件
    /etc/init.d/jenkins
    #日志切割
    /etc/logrotate.d/jenkins
    #jenkins的配置文件
    /etc/sysconfig/jenkins
    #jenkins的依赖
    /usr/lib/jenkins
    #jenkins的程序war包
    /usr/lib/jenkins/jenkins.war
    #jenkins的为二进制文件
    /usr/sbin/rcjenkins
    #jenkins的程序文件,运行程序解压出来的
    /var/cache/jenkins
    #jenkins的主目录
    /var/lib/jenkins
    #jenkins的日志文件
    /var/log/jenkins
    
  3. 停止 jenkins 服务

    #停止jenkins服务
    systemctl stop jenkins
    
  4. 替换 war 包

    cd /usr/lib/jenkins/
    mkdir backup
    mv jenkins.war backup/jenkins-$version.war
    #然后将新获取的 war 包上传到该路径下
    
  5. 启动 jenkins 服务

    #启动jenkins服务
    systemctl start jenkins
    

Jenkins插件离线安装


  1. 获取Jenkins资源
    可以访问 https://plugins.jenkins.io/ 下载获取

  2. 搜索对应插件名称,获取资源文件
    以 Publish Over SSH 为例,搜索获取 publish-over-ssh.hpi 资源文件
    Jenkins插件搜索界面展示
    Jenkins插件下载链接展示
    如果需要进行汉化则搜索 Simplified Chinese Plugin 插件进行安装。

  3. 插件生效

    	#此为正常安装环境下的插件包管理路径
    	#将下载的离线插件包传入该路径下
    	cd /var/lib/jenkins/plugins
    	#将需要的插件上传完毕后进行服务重启使插件生效
    	#由于离线操作很多插件依赖会缺失,下载插件时需要对比清楚插件依赖进行选择
    	#此外如果不符合要求,插件管理菜单中也会有相应的版本提示,按照版本要求安装对应插件即可
    	systemctl restart jenkins
    

    插件管理菜单界面展示

配置使用Private_Key免密登录服务器


Linux环境下,经常通过SSH从一台服务器登录到另一台服务器,并且登录身份可能不是root账号,每次都要输入密码挺麻烦且有暴露密码的不安全性,所以需要配置非root账号的免密码登录;

我们以Jenkins服务器为中心,访问各应用服务器需要保证服务器间的22端口通信,在应用服务器上生成RSA非对称密钥,并将私钥传输到Jenkins服务器中。

  1. 生成密钥
    在应用服务器上执行
ssh-keygen -t rsa

会在目录/root/.ssh或对应用户目录~/.ssh(例如 /home/admin/.ssh)生成id_rsa私钥、id_rsa.pub公钥,将公钥的内容写入到同目录下的authorized_keys文件(jenkins连接多台服务器,将公钥写入到相应服务器的authorized_keys文件即可)

在 ~/.ssh 下创建一个 authorized_keys

touch authorized_keys

将 id_rsa.pub 文件的内容输出到 authorized_keys

cat id_rsa.pub >> authorized_keys

如果是非root账户操作需要调整文件夹及文件权限

chmod 700  ~/.ssh
chmod 600  ~/.ssh/authorized_keys

2.下载 id_rsa 私钥
上传至Jenkins服务器指定目录下,并根据需求重命名
例如上传文件至:
/home/admin/ssh_key/id_rsa_192.168.0.X

3.进行系统全局配置
系统管理->系统配置->SSH Servers->新增
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试成功会返回Success。

也可以在Jenkins服务器上的 id_rsa 的目录下执行测试验证成功后会使用指定用户登录目标服务器

ssh -i id_rsa -o StrictHostKeyChecking=no root@192.168.0.x
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绯色灬观月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值