02-gitlab的数据备份和恢复

一、gitlab的数据备份

        关于数据备份,咱们就不需要多说什么了,主要就是方式数据意外丢失,导致代码上线流程及数据的损坏崩溃;

        为了避免严重生产事故,进而gitlab有了数据备份与恢复的功能。

1,修改gitlab的配置文件

[root@gitlab git_student]# vim /etc/gitlab/gitlab.rb 

prometheus['enable'] = false
alertmanager['enable'] = false
node_exporter['enable'] = false
redis_exporter['enable'] = false
postgres_exporter['enable'] = false
gitlab_exporter['enable'] = false
prometheus_monitoring['enable'] = false
##################################
#备份参数设置
##################################
#备份是否打开
gitlab_rails['manage_backup_path'] = true
#备份目录地址路径
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
#备份的权限设置
gitlab_rails['backup_archive_permissions'] = 0644
#备份保存时间,超过事件覆盖掉;
gitlab_rails['backup_keep_time'] = 604800

2,重新生成各种服务的配置文件

[root@gitlab git_student]# gitlab-ctl reconfigure

3,手动创建一次备份

        主要是为了测试备份功能是否管用;

[root@gitlab backups]# gitlab-backup create

此时查看备份数据的目录,发线,多出来一个压缩包;

[root@gitlab backups]# ll
total 432
-rw-r--r-- 1 git git 440320 Mar  9 08:36 1709944584_2024_03_09_15.9.3_gitlab_backup.tar

至此,数据备份就成功了;

二、gitlab的数据恢复

        模拟,在企业当中,我们有个可爱的运维同事,将gitlab的仓库全部删除了;

1,模拟删除项目

进入项目详情-【设置】-【编辑】-【高级】-【删除项目】

2,恢复备份前,停止其他人写入

        因为恢复备份,是上一次备份的压缩包,在恢复期间,若有人写入代码,将无法保存,所以,安全起见,恢复备份期间,需要停止写入;

[root@gitlab backups]# gitlab-ctl stop unicorn
[root@gitlab backups]# gitlab-ctl stop sidekiq

3,恢复备份

[root@gitlab backups]# gitlab-backup restore BACKUP=1709944584_2024_03_09_15.9.3

此时就已经回复成功了;

4,开启gitlab

[root@gitlab backups]# gitlab-ctl start

数据恢复成功,至此,gitlab的数据备份、恢复就学习完毕了;

三、拓展:gitlab配置https和email通知

#1.gitlab配置https(请先做个快照.)
[root@gitlab ~]# vim /etc/gitlab/gitlab.rb
external_url 'https://gitlab.xinjizhiwa.cn'
nginx[' enable' ] = true
nginx['client_max_body_size' ]= '250m '
nginx['redirect_http_to_https' ]= true
nginx[' redirect_http_to_https _port' ] = 443
nginx['ssl_certificate' ] = "path/ key.crt"
nginx['ssl_certificate_key'] = "path/ key.key"
nginx['ssl_ciphers' ] ="ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256"
nginx['ssl_prefer_server_ciphers']= "on"
nginx['ssl_protocols']= "TLSv1.2"

# nginx['ssl_certificate' ] =用于指定证书 .crt .pem
# nginx['ssl_certificate_key']  = 用于指定私钥 .key

#2,gitlab配置邮箱
注册的时候 Gitlab 服务器,给用户发送邮件,激活 或者找回密码
用户提交合并请求的时候,负责人可以收到邮件通知

配置发件人
51 ### Email Settings
52 gitlab_rails['gitlab_email_enabled'] = true
53 gitlab_rails['gitlab_email_from'] = '626080079@qq.com'
54 gitlab_rails['gitlab_email_display_name'] = 'gitlab_manages'

配置详细发件人信息
513 ### GitLab email server settings
514 ###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
515 ###! **Use smtp instead of sendmail/postfix.**
516
517 gitlab_rails['smtp_enable'] = true
518 gitlab_rails['smtp_address'] = "smtp.qq.com"
519 gitlab_rails['smtp_port'] = 465
520 gitlab_rails['smtp_user_name'] = "626080079@qq.com"
521 gitlab_rails['smtp_password'] = "????授权码"
522 gitlab_rails['smtp_domain'] = "163.com"
523 gitlab_rails['smtp_authentication'] = "login"
524 gitlab_rails['smtp_enable_starttls_auto'] = true
525 gitlab_rails['smtp_tls'] = true

#重启配置gitlab
[root@gitlab ~]# gitlab-ctl reconfigure 
[root@gitlab ~]# gitlab-ctl restart

#3,测试发送邮件
[root@gitlab ~]# gitlab-rails console 回车
Notify.test_email('收件人','主题','内容').diliver_now
Notify.test_email('youjiu_linux@qq.com','Gitlab-test','测试').diliver_now

[root@gitlab ~]# gitlab-rails c

至此,gitlab阶段学习完毕;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/441914.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python淘宝网页爬虫数据保存到 csv和mysql(selenium)

数据库连接设置(表和字段要提前在数据库中建好) # 数据库中要插入的表 MYSQL_TABLE goods# MySQL 数据库连接配置,根据自己的本地数据库修改 db_config {host: localhost,port: 3306,user: root,password: ma*****6,database: may2024,charset: utf8mb…

MySQL 篇-快速了解事务、索引

🔥博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录 1.0 事务概述 1.1 事务四大特性(ACID) 2.0 索引概述 2.1 关于 “索引一定要创建在主键上?” 的问题 2.2 索引操作语法 2.3 索引结构 1.0 事务概述 事务是…

【生态适配】亚信安慧AntDB数据库与OpenCloudOS、TencentOS Server五款产品完成兼容互认

日前,亚信安慧AntDB数据库与OpenCloudOS8、OpenCloudOS9、TencentOS Server 2、TencentOS Server 3、TencentOS Server 4五款操作系统完成兼容互认。经过严格测试,亚信安慧AntDB数据库与这五款操作系统兼容良好,整体运行稳定。 图1&#xff1…

stm32普通定时器脉冲计数(发送固定脉冲个数),控制步进电机驱动器

拨码开关设置驱动器,细分 方法思路:用通用定时器TIM2,1ms产生一次中断;在中断里做IO反转; 发送10个脉冲信号

签约仪式如何策划和安排流程?如何邀约媒体现场见证报道

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 签约仪式的策划和安排流程,以及邀约媒体现场见证报道,都是确保活动成功和提升影响力的关键环节。以下是一些建议: 签约仪式的策划和安排流程 明确目标…

patreon订阅

订阅制度: 创作者可以创建一个Patreon页面,邀请粉丝成为其“赞助者”或“粉丝”。这些粉丝可以选择每月或每个创作周期为创作者提供一定数额的资金支持,形成了一种订阅模式。 奖励层次: 创作者通常会设置不同的奖励层次&#xff…

MySQL安装使用(mac)

目录 一、下载MySQL 二、环境变量 三、启动 MySql 四、初始化密码设置 一、下载MySQL 打开 MySql 官方下载页面 我是macOS12,所以选择了8.0.30 下载完成之后,打开安装,一直下一步安装完成,在最后安装完成时,会弹出…

一周学会Django5 Python Web开发-Django5内置模板引擎-模板上下文变量

锋哥原创的Python Web开发 Django5视频教程: 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计32条视频,包括:2024版 Django5 Python we…

Linux系统Docker部署DbGate并结合内网穿透实现公网管理本地数据库

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-66GkyG9g7oNq7tl8 {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

Windows®、Linux® 和 UNIX® 系统都适用的远程桌面工具 OpenText ETX

Windows、Linux 和 UNIX 系统都适用的远程桌面工具 OpenText ETX 为 Windows、Linux 和 UNIX 实施精益、经济高效的虚拟化;提供完整的远程 Windows 可用性;以类似本地的性能远程工作;安全地保护系统和知识产权(IP)&am…

k8s-生产级的k8s高可用(1) 24

高可用集群 实验至少需要三个master(控制节点),一个可以使外部可以访问到master的load balancer(负载均衡)以及一个或多个外部节点worker(也要部署高可用)。 再克隆三台主机 清理并重启 配置两…

YOLOv7原创改进:原创自研 | CVPR2024 DCNv4结合YOLOv9 SPPELAN二次创新 | 涨点小能手

💡💡💡本文独家改进: CVPR2024 DCNv4结合YOLOv9 SPPELAN二次创新,结构图如下: 改进结构图: 💡💡💡在多个私有数据集和公开数据集VisDrone2019、PASCAL VOC实现涨点 收录 YOLOv7原创自研 https://blog.csdn.net/m0_63774211/category_12511937.html 💡�…

银河麒麟服务器ky10 server wvp镜像制作

在线安装docker yum install docker -y cat >/etc/docker/daemon.json<<EOF{"registry-mirrors": ["https://registry.docker-cn.com","https://dockerhub.azk8s.cn","https://hub-mirror.c.163.com"]} EOF systemctl start …

java注释的详尽解析

一、什么是注解 (1).注解的作用 ①&#xff1a;注解一般用于对程序的说明&#xff0c;就像注释一样&#xff0c;但是区别是注释是给人看的&#xff0c;但是注解是给程序看的。 ②&#xff1a;让编译器进行编译检查的作用&#xff0c;比如下边这个Override注解是重写的意思&am…

Python 对Excel工作表中的数据进行排序

在Excel中&#xff0c;排序是整理数据的一种重要方式&#xff0c;它可以让你更好地理解数据&#xff0c;并为进一步的分析和报告做好准备。本文将介绍如何使用第三方库Spire.XLS for Python通过Python来对Excel中的数据进行排序。包含以下三种排序方法示例&#xff1a; 按数值…

@EnableWebMvc介绍和使用详细demo

EnableWebMvc是什么 EnableWebMvc 是 Spring MVC 中的一个注解&#xff0c;它用于启用 Spring MVC 框架的基本功能&#xff0c;以便你可以使用 Spring MVC 提供的特性来处理 Web 请求。 通常情况下&#xff0c;在基于 Spring Boot 的应用中&#xff0c;并不需要显式地使用 Ena…

NASA数据集——GOES-16卫星的高级图像和地球观测数据

简介 GHRSST NOAA/STAR GOES-16 ABI L2P America Region SST v2.70 dataset in GDS2 ABI_G16-STAR-L2P-v2.70是美国国家航空航天局&#xff08;NASA&#xff09;的一种卫星数据处理产品。这个产品是由GOES-16&#xff08;也称为GOES-East&#xff09;卫星的先进基线/全球地球…

IT廉连看——Uniapp——配置文件pages

IT廉连看——Uniapp——配置文件pages [IT廉连看] 本堂课主要为大家介绍pages.json这个配置文件 一、打开官网查看pages.json可以配置哪些属性。 下面边写边讲解 新建一个home页面理解一下这句话。 以下一些页面的通用配置 通用设置里我们可以对导航栏和状态栏进行一些设…

java SSM售后服务管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

源码特点 java SSM售后服务管理系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代 码和数据库&#xff0c;系统主要采用B/…

【C语言】指针相关知识点

什么是指针&#xff1f; 指针&#xff08;Pointer&#xff09;是编程语言中的一个对象&#xff0c;利用地址&#xff0c;它的值直接指向&#xff08;points to&#xff09;存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元&#xff0c;可以说&#xff0c;地…