码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • gitLab更新11.11.3->16.1.5


    gitlab当前版本11.11.3   postgreSQL当前版本 9.6.11

    gitlab升级顺序

    11.11.3 -》 12.0.12 -》 12.10.14 -》13.0.14 -》 13.1.11 -》13.8.8 -》13.12.15
    -》14.0.12 —》 14.3.6 -》 14.9.5 -》 14.10.5 -》 15.0.5 -》 15.1.6 -》 15.4.6
    -》 15.11.13 -》 16.0.X —》 16.1 -》 16.2.X -》 16.3 -》 16.Y.Z

    可以参照官方顺序Upgrading GitLab | GitLab

    理解:每次更新都是按照每个版本中最大的版本去更新。例如:12.0.12就是12.0.X中最大的版本、12.10.14是12.10.X中最大的版本

    注意事项

    1.在升级到GitLab 14.0之前(即在13.12.15时完成升级到12),必须升级到PostgreSQL 12。(实际升级过程,PostgreSQL自动升级了,没有去额外的去操作)

    2.所以我们需要在13.X的最后一个版本,当前13系列最后一个版本为:13.12.15 ,将传统存储转换为哈希存储(本人并未去处理哈希存储,依旧更新成功)

    如出现该问题可以参考:哈希存储转换问题
    https://blog.csdn.net/wjplj/article/details/125908203

    每次升级前的准备工作

    1.关闭防火墙 systemctl status firewalld.service(查看防火墙状态命令)

    2.验证通用配置  sudo gitlab-rake gitlab:check(这一步很重要可以避免很多问题)

    3.GitLab网页验证

    4.执行备份操作   --保存的tar文件 在 /var/opt/gitlab/backups

       4.1备份命令:(本人并未去备份,因为发现在更新版本时会自己备份数据)

                          GitLab 12.2以后:gitlab-backup create  GitLab   
                          12.1及以前:gitlab-rake gitlab:backup:create

       4.2手工备份的文件:(该操作很重要,如果更新出现问题,需要版本回退并恢复数据时,这两个文件必不可少。)

                          /etc/gitlab/gitlab-secrets.json
                          /etc/gitlab/gitlab.rb

        4.3恢复操作(备份和恢复需要相同的GitLab版本):

                            1.关闭数据库连接服务 gitlab-ctl stop unicorn/puma && gitlab-ctl stop sidekiq (注意gitlab在某个版本之后就不再使用unicorn,而是使用puma)

                            2.手工恢复gitlab-secrets.json文件与gitlab.rb

                            3.cd /var/opt/gitlab/backups(进入备份的文件目录下)

                            4.执行备份命令gitlab-rake gitlab:backup:restore BACKUP=?(?代表备份的文件名,但是只要前面时间戳+版本号那一段)

    5.下载目标版本的RPM包

            法一:输入命令:wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/?(本人未尝试)

            法二:直接去Index of /gitlab-ce/yum/el7/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror下载。然后上传到服务器。

    升级gitlab

    1.gitlab-ctl stop unicorn/puma
    2.gitlab-ctl stop sidekiq
    3.gitlab-ctl stop nginx

    开始升级:
    4.rpm -Uvh gitlab-ce-12.1.17-ce.0.el7.x86_64.rpm   (执行该命令需要在放RPM包的目录下)
    5.gitlab-ctl reconfigure
    6.gitlab-ctl restart

    查看版本

    查看postgreSQL版本:/opt/gitlab/embedded/bin/psql --version

    查看gitlab版本:cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

    版本回退

    1.停止服务  gitlab-ctl stop

    2.卸载当前版本  

                   gitlab-ctl uninstall
                   yum remove gitlab-ce

    3.安装旧版本  rpm -ivh gitlab-ce-15.4.5-ce.0.el7.x86_64.rpm(rpm -ivh表示安装 rpm -Uvh表示更新版本)

    4.恢复数据  (若需要可以使用一下恢复数据,具体看上面提及的恢复操作)
      gitlab-rake gitlab:backup:restore BACKUP=1234567890_2020_11_20_15.4.5

    gitlab管理员密码修改

    Step 1: 停止GitLab的Web服务

    使用以下命令停止GitLab的Web服务:

    sudo gitlab-ctl stop unicorn/puma (有些版本使用的是unicorn/有些使用的是puma)
    sudo gitlab-ctl stop sidekiq

    Step 2: 重置管理员密码

    使用以下命令重置管理员密码:

    sudo gitlab-rake gitlab:password:reset USERNAME=root

    请注意,该命令中的USERNAME参数应替换为您的管理员账号名称。当系统提示您输入新密码时,请输入新的管理员密码。

    Step 3: 启动GitLab的Web服务

    使用以下命令启动GitLab的Web服务:

    sudo gitlab-ctl start unicorn/puma
    sudo gitlab-ctl start sidekiq

    更新过程中出现的数据迁移问题

    本人直接版本回退,重新更新。(所以出现该问题可能原因是操作失误)

    参考

    1.Gitlab升级报错一:rails_migration[gitlab-rails] (gitlab::database_migrations line 51)_gitlab升级失败-CSDN博客

    2.数据迁移问题-WinFrom控件库|.net开源控件库|HZHControls官网

    参考文献:

    1.gitlab从11.11.3升级至13.4.2_gitlab-ctl pg-upgrade -v-CSDN博客

    2.GitLab中的备份 - Go语言中文社区

    3.Gitlab运维(初级)之Gitlab安装_小仲码还是要敲代码的博客-CSDN博客

    4.Linux安装gitlab(yum方式、rpm方式)_旧城ck的博客-CSDN博客

    5.Gitlab升级_勇敢的打工人.的博客-CSDN博客

    6.gitlab升级_gitlab升级路径_wskr~的博客-CSDN博客

    7.从gitlab12.6.4升级到gitlab15.11.7_gitlab版本-CSDN博客

    8.GitLab基础:备份与恢复指南_gitlab 恢复备份-CSDN博客

    9.gitlab备份与还原:配置文件解读、定时备份、云备份_/etc/gitlab/gitlab.rb_学亮编程手记的博客-CSDN博客10.gitlab 13.x 升级至 14.x 哈希存储转换问题_gitlab-rake gitlab:storage:legacy_projects * found_wjplj的博客-CSDN博客

  • 相关阅读:
    mac的node版本安装及升降级
    HAProxy 1-9-0-porting-guide
    面试官:深度不够,建议回去深挖
    客户端负载均衡_什么是负载均衡
    SimpleITK使用——4. 奇怪的问题
    PlantUML基础使用教程
    Swift开发学习
    YOLOv8轻量化模型:BiLevelRoutingAttention 结合C2f | CVPR2023
    (四)Redis 缓存应用、淘汰机制
    DolphinScheduler——介绍及架构设计
  • 原文地址:https://blog.csdn.net/weixin_54401017/article/details/133887589
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号