正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

Geoサイトのアップグレード

  • プラン: Premium、Ultimate
  • 提供形態: GitLab Self-Managed

Geoサイトを更新する前に、これらのセクションを注意深くお読みください。バージョン固有のアップグレード手順に従わないと、予期しないダウンタイムが発生する可能性があります。ご不明な点がございましたら、サポートにお問い合わせください。データベースのメジャーバージョンをアップグレードするには、GeoセカンダリへのPostgreSQLレプリケーションの再初期化が必要です。これは、Linuxパッケージと外部で管理されるデータベースの両方に適用されます。これにより、予想以上のダウンタイムが発生する可能性があります。

Geoサイトのアップグレードには、次の手順が必要です:

  1. アップグレード元またはアップグレード先のバージョンに応じた、バージョン固有のアップグレード手順:
  2. すべてのアップグレードに関する一般的なアップグレード手順

一般的なアップグレード手順

これらの一般的なアップグレード手順では、マルチノード構成でのダウンタイムが必要です。ダウンタイムを回避したい場合は、ゼロダウンタイムアップグレードの使用を検討してください。

新しいGitLabバージョンがリリースされたときにGeoサイトをアップグレードするには、プライマリサイトとすべてのセカンダリサイトをアップグレードします:

  1. オプション。セカンダリサイトでレプリケーションを一時停止して、セカンダリサイトのディザスターリカバリー(DR)機能を保護します。

  2. プライマリサイトの各ノードにSSHで接続します。

  3. プライマリサイトでGitLabをアップグレード

  4. プライマリサイトでテストを実行します。特に、DRを保護するために手順1でレプリケーションを一時停止した場合はテストを実行します。アップグレード後のテストの詳細については、アップグレードヘルスチェックの実行を参照してください。

  5. プライマリサイトとセカンダリサイトの両方の/etc/gitlab/gitlab-secrets.jsonファイルのシークレットが同じであることを確認してください。ファイルは、サイトのすべてのノードで同じである必要があります。

  6. セカンダリサイトの各ノードにSSHで接続します。

  7. セカンダリサイトでGitLabをアップグレード

  8. 手順1でレプリケーションを一時停止した場合は、セカンダリでレプリケーションを再開してください。次に、各セカンダリサイトでPumaとSidekiqを再起動します。これは、以前にアップグレードされたプライマリサイトからレプリケートされるようになった新しいデータベーススキーマに対して初期化されるようにするためです。

    sudo gitlab-ctl restart sidekiq
    sudo gitlab-ctl restart puma
  9. プライマリサイトとセカンダリサイトをテストし、それぞれのバージョンを確認します。

アップグレード後のステータスを確認

これでアップグレードプロセスが完了したので、すべてが正しく動作しているかどうかを確認することをお勧めします:

  1. プライマリサイトとセカンダリサイトのアプリケーションノードでGeo Rakeタスクを実行します。すべてが緑色になっているはずです:

    sudo gitlab-rake gitlab:geo:check
  2. プライマリサイトのGeoダッシュボードでエラーがないか確認します。

  3. プライマリサイトにプッシュコードしてデータレプリケーションをテストし、セカンダリサイトで受信されるかどうかを確認します。

問題が発生した場合は、Geoトラブルシューティングガイドを参照してください。