sameersbn/gitlab迁移gitlab-ce升级

区别

sameersbn和gitlab-ce相比 sameersbn是为docker打造的,并且没有集成redis等组件 理论性能更佳

参考文档

升级文档

https://docs.gitlab.com/ee/update/

版本升级

https://github.com/sameersbn/docker-gitlab#upgrading

修复文档

https://docs.gitlab.com/ee/raketasks/backup_restore.html#reset-runner-registration-tokens

版本对照

https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations

目录

参考文档

升级文档

版本升级

修复文档

版本对照

版本

升级顺序

开始操作

还原备份(sameersbn )

重置更新数据库(sameersbn )

特殊情况使用(gitlab-ce/sameersbn)

检查环境和配置是否正确

升级数据库

清除缓存

查看数据库

应用从新配置

重置操作(根据自己的需要)

进入控制台

禁用用户两因素身份验证

重置 CI/CD 变量

检查表

删除表

重制runner registration tokens

清除项目、组和整个实例的所有令牌:

重置挂起的管道作业

阻断表修复集成项目

k8s健康检测


版本

        git 13.7.1

        PostgreSQL 12.3 直接升到最新就OK了

        官方要求对应关系

        GitLab version Minimum PostgreSQL version

        10.0                                 9.6

        13.0                                 11

        14.0                                 12

升级顺序

官方推荐顺序13.12.Z->最新14.0.Z-> 14.1.Z->最新14.Y.Z

我的升级顺序  13.9.2 -> 13.12.9 -> 14.0.7 -> 14.1.2

#推荐先升到当前大版本的最高小版本再升到下个大版本的第一个小版本

开始操作

还原备份(sameersbn )

 2.entrypoint.sh app:rake gitlab:backup:restore BACKUP=1628614836_2021_08_10_13.7.1

重置更新数据库(sameersbn )

1.entrypoint.sh app:rake db:setup

3.entrypoint.sh app:rake db:migrate

特殊情况使用(gitlab-ce/sameersbn)

检查环境和配置是否正确

gitlab-rake gitlab:env:info

entrypoint.sh app:rake gitlab:env:info

#检查,检查结果会告诉你如何纠正错误。 gitlab-rake gitlab:check

entrypoint.sh app:rake gitlab:check

升级数据库

gitlab-rake db:migrate

entrypoint.sh app:rake db:migrate

清除缓存

gitlab-rake cache:clear

entrypoint.sh app:rake cache:clear

查看数据库

gitlab-rake db:migrate:status

entrypoint.sh app:rake db:migrate:status

应用从新配置

sudo gitlab-ctl reconfigure

检查有没有不能解密的

rake gitlab:doctor:secrets RAILS_ENV=production

重置操作(根据自己的需要)

进入控制台

        gitlab-rails dbconsole

        ./rails dbconsole

        entrypoint.sh app:rails dbconsole -e production

禁用用户两因素身份验证

*

重置 CI/CD 变量

sudo gitlab-rails dbconsole rails dbconsole -e production

检查表

SELECT * FROM public."ci_group_variables"; SELECT * FROM public."ci_variables";

删除表

DELETE FROM ci_group_variables; DELETE FROM ci_variables;

重制runner registration tokens

进入控制台 sudo gitlab-rails dbconsole sudo -u git -H bundle exec rails dbconsole -e production

清除项目、组和整个实例的所有令牌:

-- Clear project tokens UPDATE projects SET runners_token = null, runners_token_encrypted = null; -- Clear group tokens UPDATE namespaces SET runners_token = null, runners_token_encrypted = null; -- Clear instance tokens UPDATE application_settings SET runners_registration_token_encrypted = null; -- Clear key used for JWT authentication -- This may break the $CI_JWT_TOKEN job variable: -- https://gitlab.com/gitlab-org/gitlab/-/issues/325965 UPDATE application_settings SET encrypted_ci_jwt_signing_key = null; -- Clear runner tokens UPDATE ci_runners SET token = null, token_encrypted = null;

重置挂起的管道作业

Reset pending pipeline jobs  

sudo gitlab-rails dbconsole sudo -u git -H bundle exec rails dbconsole -e production

-- Clear build tokens UPDATE ci_builds SET token = null, token_encrypted = null;

阻断表修复集成项目

TRUNCATE web_hooks CASCADE;

k8s健康检测

配置了monitoring_whitelist白名单

        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/liveness
            port: 80
            scheme: HTTP
          initialDelaySeconds: 180
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 5
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/readiness?all=1
            port: 80
            scheme: HTTP
          initialDelaySeconds: 100
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1

手动调试使用的

curl 'https://gitlab.example.com/-/liveness' curl 'http://127.0.0.1/-/liveness'

密钥文件需要一同拷贝过来 secrets.yml 

#注每升级完一个版本后 都需要上来等待 列队升级完成。

sameersbn/gitlab迁移gitlab-ce升级_第1张图片

工作繁忙暂时就先随手写这么多吧

你可能感兴趣的:(gitlab,k8s,gitlab,docker,docker-compose)