blogインタープリズム株式会社の開発者ブログです。今回、GitLabを別のサーバーに移し替えたのですが、GitLabのデータを一旦バックアップしてその後新サーバーでレストアするという手順を踏みました。それなりにハマりポイントがあったので作業ログとして残します。原則としてここの手順を元に作業しました。今回のサーバーは以下の通り。上記のページに書いてありますが、GitLabのバックアップとリストアは同じバージョンでないと失敗するということなのでインストールしてあるバージョンを調べます。サーバーの空き容量の確認ここでまずハマったのですが、GitLabのバックアップはリポジトリまるごと、LFSオブジェクトまるごと、アップロードしたファイル、DBのデータをまるっと保存して1つのtarファイルにまとめるようなのですが、その処理を1つのディレクトリで行います。厳密に計測はしませんでしたが、今存在しているデータが10GB程度だとすると空きが20GB程度ないと失敗するようです。これをやってなくて長時間待って失敗するという苦汁を舐めました。容量をチェック厳密にはどの程度必要かは分かりませんので推測するしかないです。移行先サーバーにも空き容量があるか確認リストアする際にも同様にディスク容量を必要としますので、新たに構築するのであれば予め多めのストレージにしておくか、追加マウントすると良いです。gitlab:backup:createすべてをバックアップするためか結構時間がかかります。下に1つのtarファイルが出来ているはずです。/path/to/backups/1533565433_2018_08_06_9.5.4_gitlab_backup.tarコマンドではバックアップされないファイルが2つあるので手動でバックアップします。/etc/gitlab/gitlab.rb/etc/gitlab/gitlab-secrets.jsonバックアップはこれで完了です。移行先サーバーには、移行元と同じバージョンのGitLabが必要となります。今回は新規にサーバーを構築したのでインストールしていきます。置き換える必要があるのと、リストア用にインストールする場合は別途手順が必要なのでこちらも記載します。上書きすると消えてしまうので、ここで指定する意味はあまりないかもしれません。バックアップ場所を変更している場合は、以下のどちらかの対応を行う。