Geo検証テスト
Geoチームは、GitLabのマイナーバージョンとPostgreSQLデータベースのメジャーバージョンの間でアップグレードする際にGeoが動作することを確認するために、一般的なデプロイ構成で手動テストと検証を行っています。
このセクションでは、最近のバリデーションテストのジャーナルと関連イシューへのリンクを掲載しています。
GitLabのアップグレード
以下は、私たちが行った GitLab アップグレードの検証テストです。
2020年6月
- 説明: GitLab 12.9.10から12.10.12パッケージへのアップグレードをマルチサーバー構成でテスト。 ループパイプラインとHAProxy統計ダッシュボードを使ってダウンタイムを監視。
- 結果:プライマリサイトとセカンダリサイトのアップグレード中にダウンタイムが発生したため、部分的に成功。
- イシュー/アクションのフォローアップ:
- 説明: マルチサーバー構成で GitLab 12.8.1 から 12.9.10 パッケージへのアップグレードをテストしました。
- 結果:デモ中にループするパイプラインを実行しなかったため、部分的に成功。
- イシューのフォローアップ:
2020年2月
- 説明: マルチノード構成でGitLab 12.7.5から最新のGitLab 12.8パッケージへのアップグレードをテストしました。
- 結果:デモ中にダウンタイムを監視するためのループパイプラインを実行しなかったため、部分的に成功。
2020年1月
- 説明: マルチノード構成でGitLab 12.6.xから最新のGitLab 12.7パッケージへのアップグレードをテスト。
- 結果:アップグレードテストは成功。
- イシューのフォローアップ:
- Geoエンドツーエンドのテスト失敗の調査。
- Geoエンド・ツー・エンド・テストにログを追加します。
- ゼロダウンタイムアップグレード中の過剰なサービス再起動。
- 説明: マルチノード構成でGitLab 12.5.7からGitLab 12.6.6へのアップグレードをテストしました。
- 結果:アップグレードテストは成功。
- フォローアップのイシュー:ダウンタイムゼロアップグレードに関するドキュメントを更新し、デプロイノードが使用中でないことを確認するようにしました。
- 説明: マルチノード構成でGitLab 12.4.xから最新のGitLab 12.5パッケージへのアップグレードをテスト。
- 結果:アップグレードテストは成功。
- イシューのフォローアップ:
2019年10月
- 説明: マルチノード構成でGitLab 12.3.5からGitLab 12.4.1へのアップグレードをテストしました。
- 結果:アップグレードテストは成功。
- 説明: GitLab 12.2.8からGitLab 12.3.5へのアップグレードをテストしました。
- 結果:アップグレードテストは成功。
- 説明: GitLab 12.1.9からGitLab 12.2.8へのアップグレードをテストしました。
- 結果:設定ミスの可能性があったため、部分的に成功。
PostgreSQLのアップグレード
以下は、私たちが実施した PostgreSQL のアップグレード検証テストです。
2020年4月
GeoインストールのPostgreSQL11 アップグレード手順:
- 説明: GitLab 12.10でPostgreSQLのデフォルトバージョンをPostgreSQL 11にする前に、GeoデプロイでPostgreSQL 11へのアップグレードをGitLab 12.9でテストしました。
- 結果: 部分的に成功。 個別の追跡データベースを使用した複数ノード構成でイシューが発見され、Geo が有効な場合の自動アップグレードの許可に関する懸念が提起されました。
- イシューのフォローアップ:
PostgreSQL11 でGeoのインストールを確認します:
- 説明: GitLab 12.10でPostgreSQLのデフォルトバージョンを11にする前に、GeoにPostgreSQL 11をインストールしたGitLab 12.9の新規インストールをテストしました。
- 結果:インストールテストは成功しました。
2019年9月
Geo の PostgreSQL10.0 アップグレードのテストと検証:
- 説明: GitLab 12.0のリリースに伴い、GitLabはPostgreSQL 10.0へのアップグレードが必要になりました。私たちはGitLab 11.11.5からGitLab 12.1.8までの様々なアップグレードシナリオをテストしました。
- 結果:アップグレード時に複数のイシューが見つかり、フォローアップで対応。
- イシューのフォローアップ: