当前位置: 首页 > news >正文

k8s部署jenkins集群时,使用ThinBackup进行定期备份

一、背景

使用k8s部署jenkins集群的时候,一般会把$JENKSIN_HOME(默认是/var/jenkins_home)进行持久化。

          volumeMounts:- name: jenkins-homemountPath: /var/jenkins_home

这样,机器重启,保证不会丢失文件。

本文要讲述的是如何及时对Jenkins进行备份,也存放在$JENKSIN_HOME目录下。

分为三部分讲述:

  • 安装ThinBackup插件
  • 配置ThinBackup
  • 查看备份

二、安装ThinBackup插件

在这里插入图片描述
在系统配置–》插件管理,搜索并安装ThinBackup
在这里插入图片描述

当安装完成ThinBackup插件后,下拉至系统管理的底部,找到ThinBackup的管理菜单。

三、配置备份策略

在这里插入图片描述

在这里插入图片描述

填写备份文件存放的路径,这里填写的是/var/jenkins_home/backup,其中/var/jenkins_home是Jenkins的工作空间。
在这里插入图片描述

查看系统信息之环境变量

在这里插入图片描述

在这里插入图片描述

四、查看备份

找到/var/jenkins_home持久化的目录所在。

/mnt/nfs/kubernetes-plugin-jenkins-home-jenkins-0-pvc-40c00e02-5a14-4f50-8c41-55c9a1ffc49c

在这里插入图片描述
进入查看备份文件:
在这里插入图片描述

root@dev-vm-k8s-master:/mnt/nfs/kubernetes-plugin-jenkins-home-jenkins-0-pvc-40c00e02-5a14-4f50-8c41-55c9a1ffc49c/backup# ll -h
total 959M
drwxr-xr-x  3 ubuntu ubuntu  215 Sep 20 05:46 ./
drwxrwxrwx 22 root   root   8.0K Sep 20 06:02 ../
-rw-r--r--  1 ubuntu ubuntu 240M Sep 16 14:47 BACKUPSET_2024-09-14_23-00_.zip
-rw-r--r--  1 ubuntu ubuntu 240M Sep 17 14:47 BACKUPSET_2024-09-16_23-00_.zip
-rw-r--r--  1 ubuntu ubuntu 240M Sep 18 14:47 BACKUPSET_2024-09-17_23-00_.zip
-rw-r--r--  1 ubuntu ubuntu 240M Sep 19 14:46 BACKUPSET_2024-09-18_23-00_.zip
drwxr-xr-x  6 ubuntu ubuntu 8.0K Sep 19 14:45 FULL-2024-09-19_23-00/

ThinBackup备份策略填写的是保留5个备份。

上面的备份列表缺少2024-09-15日的备份,是因为k8s证书过期而导致jenkins集群故障,最终ThinBackup备份失败。

五、还原备份

1、整理Job

删除其他的Job,只保留以下job。
在这里插入图片描述
现在,需要通过备份,恢复删掉的Job。

2、选择要恢复的备份

在这里插入图片描述
在这里插入图片描述

3、重启jenkins

在没有重启Jenkins前,备份的恢复效果是看不出来的。

4、恢复备份后

恢复的备份,这些job是没有构建历史的,所以他们的图标都是灰色的。而之前保留的job,则是蓝色的,且有构建历史记录。
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Mybatis Plus分页查询返回total为0问题
  • prometheus通过nginx-vts-exporter监控nginx
  • Android APN type 配置和问题
  • 数据结构之线性表(python)
  • 【数据结构】数据结构系列学习笔记——导航篇
  • 动规part 05
  • 设计模式 组合模式(Composite Pattern)
  • 基于单片机的无线宠物自动喂食系统设计
  • 什么是L2范数
  • 用户态缓存:环形缓冲区(Ring Buffer)
  • 电力施工作业安全行为检测图像数据集
  • JavaWeb--纯小白笔记06:使用Idea创建Web项目,Servlet生命周期,注解,中文乱码解决
  • 硬件工程师笔试面试——晶振
  • 思通数科开源产品:免费的AI视频监控卫士安装指南
  • git reflog 和 git log 的详解和区别
  • 《剑指offer》分解让复杂问题更简单
  • 4. 路由到控制器 - Laravel从零开始教程
  • CSS3 变换
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • HomeBrew常规使用教程
  • Javascript弹出层-初探
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • ng6--错误信息小结(持续更新)
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 产品三维模型在线预览
  • 从PHP迁移至Golang - 基础篇
  • 前端_面试
  • 嵌入式文件系统
  • 如何编写一个可升级的智能合约
  • 设计模式 开闭原则
  • 小程序 setData 学问多
  • 函数计算新功能-----支持C#函数
  • #define,static,const,三种常量的区别
  • #pragma 指令
  • (1)Android开发优化---------UI优化
  • (ros//EnvironmentVariables)ros环境变量
  • (二)丶RabbitMQ的六大核心
  • (分享)一个图片添加水印的小demo的页面,可自定义样式
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (南京观海微电子)——COF介绍
  • (排序详解之 堆排序)
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (算法)前K大的和
  • (算法)硬币问题
  • .form文件_一篇文章学会文件上传
  • .mysql secret在哪_MySQL如何使用索引
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化
  • @JsonSerialize注解的使用
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [20190401]关于semtimedop函数调用.txt