gitlab-ce 大版本升级方式 | 13.xx.xx升级到1
2021-09-20 本文已影响0人
视频怪物
今天升级了一下Gitlab, 从13.12.11想升级到14.2.4, 过程中发现了几个问题, 在此记录一下, 其实版本升级按照步骤来还是非常简单方便的, 如果有遇到类似问题的朋友可以参考第二段的一些解决分析过程.
大版本升级方式:
升级路径: 13.12.11 -> 14.0.10 -> 14.2.4
参考:
总结:
- 一定需要备份一下当前正常运行的版本
- 每次版本install完成后, 一定要执行reconfigure和restart, 等到页面正常出来后再继续升级
- 不要直接stop整个gitlab, 只需要停止几个通信服务(不停止也可以, 只需要保证当前无人使用)
-
备份过程中可能会出现如下的字样, 表示 gitlab.rb 和 gitlab-secrets.json 两个文件包含敏感信息, 未被备份到备份文件中, 这两个文件需要手动备份.
备份警告
从13.xx.xx升级到14.xx.xx注意事项
- 主版本升级需要从13先升级到14.0.xx最高版本, 也就是第一步需要升级到14.0.10, gitlab版本仓库: gitlab/gitlab-ce - Packages · packages.gitlab.com
gitlab版本仓库
- 从13升级到14, 原本配置文件中的unicorn相关配置需要更改为puma
报错信息
相对应的puma配置变更方式见官方文档:
Puma | GitLab
变更方式
-
puma['per_worker_max_memory_mb']
内存设置需要是数字, 计算规则为: 0.98 * ( 800 + ( worker_processes * 1024MB ) ), 网络上会有一些内存优化的文章设置的是unicorn的方式, 支持字符串, 但是在puma是不可以的
- 升级过程中, 当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"]]']
升级完成
