GitLabのバージョンアップの手順、注意点、データ移行、アップグレードの方法

ITで知っておくべき知識

GitLabでバージョンアップしたので手順、注意点、データ移行、アップグレードの方法をまとめました。

スポンサーリンク

GitLabのリストアは同一バージョンで行う

GitLabで古いバージョンのバックアップ作成しました。

その後、GitLabの新しいバージョンでリストアしてみました。

 

バージョンミスマッチ。。。

調べてみるとこんな文言が見つかりました。

https://docs.gitlab.com/ee/raketasks/backup_restore.html

You can only restore a backup to exactly the same version and type (CE/EE) of GitLab on which it was created. The best way to migrate your repositories from one server to another is through backup restore.

なんと全く同じバージョンで全く同じタイプのGitLabでないとバックアップ、リストアできないらしいです。

GitLabのアップグレードパス

GitLabのバージョンアップにはアップグレードパスの順番にアップデートする必要があります。

https://docs.gitlab.com/ee/update/#upgrade-paths

 

例えば、GitLabのバージョン8.13.4をバージョン13.5.4にアップデートするには以下の順番でアップデートを行います。

8.13.4 ⇒
8.17.7 ⇒
9.5.10 ⇒
10.8.7 ⇒
11.11.8 ⇒
12.0.12 ⇒
12.1.17 ⇒
12.10.14 ⇒
13.0.14 ⇒
13.1.11 ⇒13.5.4

 

それぞれのチェックポイントのバージョンでは、インストール後のポストプロセスでデータベースやら設定なのでポストプロセスが実行されて、正しくアップグレードできるようです。

GitLabの古いバージョンをアーカイブから取得

アップグレードパスは分かりました。

そこで、アップグレードパスで必要となるGitLabの古いバージョンを取得してダウンロードしないといけません。

 

GitLab バージョン7.10.4より古いバージョンのアーカイブ

https://gitlab-com.gitlab.io/-/www-gitlab-com/-/jobs/1554152/artifacts/public/downloads/archives/index.html

 

GitLab CE バージョン7.10.4以降のアーカイブ

https://packages.gitlab.com/gitlab/gitlab-ce

 

GitLab EE バージョン7.10.4以降のアーカイブ

https://packages.gitlab.com/gitlab/gitlab-ee

 

GitLabのバージョンアップの具体的な手順

GitLab CEバージョン7.8.1 から GitLab EEバージョン13.10.2にアップグレードする場合、アップグレードパスのチェックポイントとなるgitlabのrpmも事前にアーカイブから取得しておきます。

gitlab-7.8.1_omnibus-1.el7.x86_64.rpm
gitlab-ee-8.13.4-ee.0.el7.x86_64.rpm
gitlab-ee-8.17.7-ee.0.el7.x86_64.rpm
gitlab-ee-9.5.10-ee.0.el7.x86_64.rpm
gitlab-ee-10.8.7-ee.0.el7.x86_64.rpm
gitlab-ee-11.11.8-ee.0.el7.x86_64.rpm
gitlab-ee-12.0.12-ee.0.el7.x86_64.rpm
gitlab-ee-12.1.17-ee.0.el7.x86_64.rpm
gitlab-ee-12.10.14-ee.0.el8.x86_64.rpm
gitlab-ee-13.0.14-ee.0.el8.x86_64.rpm
gitlab-ee-13.1.11-ee.0.el8.x86_64.rpm
gitlab-ee-13.10.2-ee.0.el8.x86_64.rpm

 

GitLabの7.8.1をインストールしてから、バックアップをリストアします。

 

このあと、順番にgitlabをバージョンアップします。

 

ただ、すんなりとは行かず、エラー出ます。

GitLabをアップグレード中に出たエラーと解決策

GitLabをアップグレード中に出たエラーと解決策をまとめました。

'/var/opt/gitlab' is not writable

バックアップをリストア中に出たワーニング、警告。

エラーじゃないので、スルー。

Failed asserting that mode permissions on "/var/opt/gitlab/git-data/repositories" is 2770

こんなエラーが出ました。

 

どうやら

/var/opt/gitlab/git-data/repositories の

所有権は git:git
パーミッションは 02770

である必要があるようです。

 

以下の方法で修正しておきます。

 

no privileges were granted for "public" (two occurences)

GitLab 7.8.1からGitLab 8.13.4にアップグレード中に以下のエラーが出ました。

 

データベースの権限の問題なんでしょうか。

ここに修正方法が書かれていました。

https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/472

 

cd /var/opt/gitlab/postgresql/data
Modify this file
/var/opt/gitlab/postgresql/data/postgresql.conf
find
listen_addresses = ''
Instead
listen_addresses = '*'
modify
/var/opt/gitlab/postgresql/data/pg_hba.conf
Add the most later in this file
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Restart gitlab to take effect
gitlab-ctl restart
Enter the PostgreSQL command line
cd /opt/gitlab/embedded/bin
su gitlab-psql
./psql -h 127.0.0.1 gitlabhq_production
Gitlab users to modify the implementation of super rights
ALTER USER gitlab WITH SUPERUSER;
\q

この通りやってみると、エラーは消えました。

nothing provides policycoreutils-python needed

GitLab 9.5.10からGitLab 10.8.7にアップグレード中に以下のエラーが出ました。

 

そこで以下のrpmをインストールしておきます。

 

Your version of PostgreSQL is  no longer supported

GitLab 9.5.10からGitLab 10.8.7にアップグレード中に以下のエラーが出ました。

 

PosgreSQLのバージョンが古いみたいなのでアップグレードします。

 

Detected Promethus version 1.x. Version 1.0 has been deprecated and support will removed in GitLab version 12.0

以下のエラーが出ました。

 

Promethusのバージョンが古いみたいなのでアップブレードします。

 

ITで知っておくべき知識
スポンサーリンク
スポンサーリンク
うらしたをフォローする
スポンサーリンク
urashita.com 浦下.com (ウラシタドットコム)

コメント

タイトルとURLをコピーしました