gitlab从11.11.3升级至13.4.2

    科技2022-07-13  128

    参考博客及官方建议,升级顺序为 11.11.3-》12.0.12-》12.10.14-》13.0.10-》13.4.2

    升级前如需要备份,使用命令在/var/opt/gitlab/backups/目录下生成备份文件 $ gitlab-rake gitlab:backup:create

    按照版本重复以下步骤:

    (1)下载目标版本的RPM包 查看所有可用RPM包

    https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

    通过清华开源镜像站(推荐)

    $ wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.0.12-ce.0.el7.x86_64.rpm

    或官方

    $ wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-12.0.12-ce.0.el7.x86_64.rpm

    (2)升级gitlab

    $ gitlab-ctl stop unicorn $ gitlab-ctl stop sidekiq $ gitlab-ctl stop nginx $ rpm -Uvh gitlab-ce-12.0.12-ce.0.el7.x86_64.rpm $ gitlab-ctl reconfigure $ gitlab-ctl restart

    注意: 升级gitlab命令会自动备份,可以参考给出的提示命令,关闭自动备份功能

    PostgreSQL数据库升级 从gitlab12.10.x版本开始,缺省使用PostgreSQL 11.x,在升级过程中需要单独升级数据库 参考

    https://docs.gitlab.com/omnibus/settings/database.html#upgrade-packaged-postgresql-server

    要升级PostgreSQL版本,请确保:

    您正在运行最新版本的GitLab,它正在运行。 如果您最近进行了升级,则sudo gitlab-ctl reconfigure在继续之前可以成功运行。 您有足够的磁盘空间来存储数据库的两个副本。 除非您有足够的可用空间,否则请勿尝试升级。

    使用检查数据库大小sudo du -sh /var/opt/gitlab/postgresql/data(或更新到数据库路径)。 使用检查空间sudo df -h。如果数据库所在的分区没有足够的空间,则可以将参数传递–tmp-dir $DIR给命令。GitLab 13.3包括对可用磁盘空间的自动检查,如果不满足要求,则中止升级。 在确认满足以上清单之后,您可以继续升级:

    sudo gitlab-ctl pg-upgrade

    在升级gitlab13.4.2之后,可以升级PostgreSQL数据库至12.x版本

    sudo gitlab-ctl pg-upgrade -V 12

    在升级数据库成功之后,会有清除旧版数据库及数据的命令提示

    sudo rm -rf /var/opt/gitlab/postgresql/data.<old_version> sudo rm -f /var/opt/gitlab/postgresql-version.old

    数据库升级完成之后,重启gitlab

    gitlab-ctl restart
    Processed: 0.012, SQL: 8