安装部署
MacOS安装RabbitMQ
API网关部署
Centos安装Chrome浏览器
gitlab
gitlab-cicd
gitlab-runner安装配置
Gitlab-CICD实践篇
gitlab维护
gitlab备份-异地恢复-升级
gitlab从13.10.2升级至14.4.1出现的问题
Let's Encrypt
Let's Encrypt 申请证书
certbot发起web认证请求流程
安装CMDBUILD
vim配置
keepalived
配置样例
wine tips
supervisord
kafka
zookeeper
minio
django
jupyter
supervisor管理的kafka zookeeper集群部署
dnsmasq
apisix
APISIX结合skywalking对各个服务的访问情况进行监控
APISIX通过consul动态发现服务
Grafana Labs
Loki(stack)
etcd
redis
mongodb
mongodb添加仲裁节点
consul
sqlite更新升級
openssl安裝升級
emby
inotify-tools
caddy
caddy规则
ohmyzsh tips
debian-nvidia-container-runtime
openwrt+802.1x+freeradius+casdoor
本文档使用 MrDoc 发布
-
+
首页
gitlab备份-异地恢复-升级
# gitlab备份-异地恢复-升级 ## 说明 由于gitlab 13.6以后的版本不再继续支持CentOS6.5,所以本次安全漏洞涉及到13.8 以下的版本, 所以需要备份所有gitlab数据并迁移至新的服务器后再进行升级操作 ### 发行版本说明 - gitlab-ce 社区版 - gitlab-ee 商业版 安装时注意版本 ## 升级步骤: 1. 备份gitlab数据 2. 准备新的gitlab服务器,恢复数据 3. 升级gitlab ## 操作 ## 1. 备份gitlab数据 ```shell # gitlab备份 gitlab-rake gitlab:backup:create # 备份数据成功后会提示 gitlab.rb 与gitlab-secret。conf包含敏感信息,需要单独备份配置文件,所以打包配置文件。 tar czf /tmp/gitlab-bak.tar.gz /etc/gitlab/gitlab.rb /etc/gitlab/gitlab-secret.conf ``` ## 2. 准备新的gitlab服务器,恢复数据 - 恢复数据需要版本与备份数据的版本相同所以,要安装旧版的gitlab恢复数据后再进行升级操作。 - 全新安装最新版文档 https://about.gitlab.com/install/?version=ce#centos-8 - 手动下载安装包的地址 https://packages.gitlab.com/gitlab/gitlab-ce ```shell # 获取gitlab版本 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 13.5.2 # 我们新的服务器是centos8 所以选择版本为13.5.2的el8安装包 wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/8/gitlab-ce-13.5.2-ce.0.el8.x86_64.rpm/download.rpm rpm -ivh gitlab-ce_13.10.0-ce.0_amd64.rpm dnf install -y postfix systemctl enable postfix systemctl start postfix # 上述安装完成后,恢复配置文件然后,初始化gitlab环境 \cp -f /tmp/gitlab/gitlab.rb /tmp/gitlab/gitlab-secret.conf /etc/gitlab/ gitlab-ctl reconfigure mv /tmp/1616623282_2021_03_25_13.5.2_gitlab_backup.tar /var/opt/gitlab/backups chown git:root /var/opt/gitlab/backup/1616623282_2021_03_25_13.5.2_gitlab_backup.tar # 停止puma 与sidekiq 这两个会操作数据库的服务 gitlab-ctl stop puma gitlab-ctl stop sidekiq # 检查服务状态 gitlab-ctl status # 确认服务已经关闭后可以开始恢复文件 gitlab-rake gitlab:backup:restore BACKUP 1616623282_2021_03_25_13.5.2_gitlab_backup.tar # 中间会有数据库的报错,官方说可以忽略因为git用户没有读写改表的权限。 # 经过两次确认要恢复文件后,已经恢复了所有的数据。 # 启动业务确认系统状态 gitlab-ctl start # 经过确认可以访问到gitlab,并且没有报错后,关闭旧服务器修改新服务器的ip为旧服务器ip # 修改IP后再次确认,gitlab-runner 的token是否有改变,gitlab-runner是否有重新连接gitlab # 确认token未改变,并且可以连接到gitlab同时可以成功触发cicd流水线 # TIPS:如果token改变了,可以通过该文档重置token https://docs.gitlab.com/ee/raketasks/backup_restore.html#reset-cicd-variables ``` ## 3. 升级gitlab 升级就很简单了 ```shell # 按照安装文档安装源镜像 curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash # 安装/升级 dnf install -y gitlab-ce # 执行升级后的迁移,执行成功后所有服务都会自动启动。 gitlab-ctl upgrade ``` 升级完成。 - CentOS 6.5 --> CentOS8.2 - gitlab-13.5.2 --> 13.10.0 Enjoy~~ ### 附:备选方案 - 升级操作系统6.5至7.2,centos7提供了升级工具但仅支持版本>6.5,升级至7.2,然后升级gitlab - 在CentOS6.5的基础上升级所有依赖,工作量较大,pass
zhangky
2021年5月16日 11:08
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码