LinuxパッケージからHelm Chartへの移行
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed
このガイドは、パッケージベースのGitLabのインストールからHelm Chartへの移行に役立ちます。
前提要件
移行を行う前に、いくつかの前提条件を満たす必要があります:
- パッケージベースのGitLabインスタンスが起動し、実行されている必要があります。
gitlab-ctl statusを実行して、サービスがdown状態をレポートしていないことを確認します。 - 移行の前に、Gitリポジトリの整合性を確認することをお勧めします。
- パッケージベースのインストールと同じGitLabのバージョンを実行しているHelm Chartベースのデプロイが必要です。
- Helm Chartベースのデプロイで使用するオブジェクトストレージを設定する必要があります。本番環境で使用する場合は、外部オブジェクトストレージを使用し、アクセスするための認証情報を準備しておくことをお勧めします。組み込みのMinIOサービスを使用している場合は、それから認証情報を取得する方法について、ドキュメントをお読みください。
移行手順
パッケージベースのインストールからオブジェクトストレージに既存のデータを移行します:
Object storageに移行する。
パッケージベースのGitLabインスタンスにアクセスし、移行されたデータが利用可能であることを確認します。たとえば、ユーザー、グループ、プロジェクトのアバターが正常にレンダリングされているか、イシューに追加された画像やその他のファイルが正しく読み込まれるかなどを確認します。
バックアップtarballを作成し、すでに移行されたディレクトリをすべて除外する。
ローカルバックアップ(デフォルト)の場合、明示的に場所を変更しない限り、バックアップファイルは
/var/opt/gitlab/backupsに保存されます。リモートストレージバックアップの場合、バックアップファイルは設定されたバケットに保存されます。パッケージベースのインストールから復元する。シークレットから開始して、Helm Chartに復元する。
/etc/gitlab/gitlab-secrets.jsonの値を、Helmで使用されるYAMLファイルに移行する必要があります。すべてのポッドを再起動して、変更が適用されていることを確認します:
kubectl delete pods -lrelease=<helm release name>Helmベースのデプロイにアクセスし、パッケージベースのインストールに存在していたプロジェクト、グループ、ユーザー、イシューなどが復元されていることを確認します。また、(アバター、イシューにアップロードされたファイルなど)アップロードされたファイルが正常に読み込まれるかどうかを確認します。