gitlab-ce 大版本升级方式 | 13.xx.xx升级到14.xx.xx注意事项

今天升级了一下Gitlab, 从13.12.11想升级到14.2.4, 过程中发现了几个问题, 在此记录一下, 其实版本升级按照步骤来还是非常简单方便的, 如果有遇到类似问题的朋友可以参考第二段的一些解决分析过程.

大版本升级方式:

升级路径: 13.12.11 -> 14.0.10 -> 14.2.4

参考:

  1. 【Linux】【gitlab】gitlab安装、备份、恢复、升级、内存消耗问题 - 尽 - 博客园 (cnblogs.com)
  2. GitLab版本升级跨大版本 - 知乎 (zhihu.com)

总结:

  1. 一定需要备份一下当前正常运行的版本
  2. 每次版本install完成后, 一定要执行reconfigure和restart, 等到页面正常出来后再继续升级
  3. 不要直接stop整个gitlab, 只需要停止几个通信服务(不停止也可以, 只需要保证当前无人使用)
  4. 备份过程中可能会出现如下的字样, 表示 gitlab.rb 和 gitlab-secrets.json 两个文件包含敏感信息, 未被备份到备份文件中, 这两个文件需要手动备份.


    备份警告

从13.xx.xx升级到14.xx.xx注意事项

  1. 主版本升级需要从13先升级到14.0.xx最高版本, 也就是第一步需要升级到14.0.10, gitlab版本仓库: gitlab/gitlab-ce - Packages · packages.gitlab.com
    gitlab版本仓库
  2. 从13升级到14, 原本配置文件中的unicorn相关配置需要更改为puma
    报错信息

    相对应的puma配置变更方式见官方文档:
    Puma | GitLab
    变更方式
  • puma['per_worker_max_memory_mb']内存设置需要是数字, 计算规则为: 0.98 * ( 800 + ( worker_processes * 1024MB ) ), 网络上会有一些内存优化的文章设置的是unicorn的方式, 支持字符串, 但是在puma是不可以的
  1. 升级过程中, 当install完成14.2.4版本的rpm包后, 执行gitlab-ctl reconfigure后, 会出现几个数据库相关的更新问题, 整理如下:
  • 14.x版本的gitlab对postgresql执行了更新, 所以需要在执行reconfigure之前, 执行: gitlab-ctl restart postgresql 重启一下postgresql, 以启用新的数据库.
  • 出现报错, 如图所示

    解决方式: 执行 sudo gitlab-rake gitlab:background_migrations:finalize[CopyColumnUsingBackgroundMigrationJob,ci_stages,id,'[["id"]\, ["id_convert_to_bigint"]]']
  • 出现报错, 如图所示

    解决方式: 执行 sudo gitlab-rake gitlab:background_migrations:finalize[CopyColumnUsingBackgroundMigrationJob,push_event_payloads,event_id,'[["event_id"]\, ["event_id_convert_to_bigint"]]']

升级完成

14.2.4

你可能感兴趣的:(gitlab-ce 大版本升级方式 | 13.xx.xx升级到14.xx.xx注意事项)