GitalyとGeoの機能
お客様のデータに対して、最も可用性が高く、迅速な復旧が可能で、高いパフォーマンスと完全な耐障害性を備えたソリューションを求めるのは一般的です。しかし、トレードオフがあります。
以下の表は、お客様の要件に基づいて適切な機能の組み合わせを選択するためのガイドです。
Gitalyの機能
機能 | 可用性 | 回復可能性 | データ復元性 | パフォーマンス | リスク/トレードオフ |
---|---|---|---|---|---|
Gitalyクラスター | 非常に高い - ノード障害に強い | 単一ノードのRTOは手動介入なしで10秒 | データは複数ノードに保存 | 良い - 書き込みは投票によって若干時間がかかるかもしれませんが、読み込みはディストリビューションによって速度が向上します。 | トレードオフ- 冗長性、一貫性の強いストレージソリューションのため、書き込み速度が若干低下します。リスク-スナップショットバックアップをサポートしていないため、GitLabバックアップタスクは大きなデータセットの場合、時間がかかる可能性があります。 |
Gitalyシャード | 単一ストレージは単一障害点 | 障害が発生したシャードのみをリストアする必要があります。 | 単一障害点 | 良い点 - リポジトリをシャードに割り当てて負荷を分散できる点 | トレードオフ- 負荷/ストレージスペースのバランスを取るために、リポジトリを異なるシャードに手動で設定する必要があるリスク- 単一障害点は単一ノード障害発生時のリカバリプロセスに依存。 |
Geo機能
複数のゾーンまたは複数の場所にまたがる可用性が必要な場合は、Geoについてお読みください。
機能 | 可用性 | 回復可能性 | データ復元性 | パフォーマンス | リスク/トレードオフ |
---|---|---|---|---|---|
Geo | Geo サイトのアーキテクチャによります。セカンダリノードをシングルまたはマルチノード設定でデプロイすることが可能です。 | 最終的には一貫性。回復ポイントはレプリケーションの遅延に依存し、これはネットワーク速度など多くの要因に左右されます。Geo は、スクリプト可能な手動コマンドを使用して、プライマリサイトからセカンダリサイトへのフェイルオーバーをサポートします。 | Geo は計画されたデータタイプの 100% をレプリケートし、50% を検証します。詳細については、制限事項の表をご覧ください。 | セカンダリユーザーの読み取り/クローン時間を改善します。 | Geo は、他のバックアップ/リストア ソリューションを置き換えるものではありません。レプリケーションの遅延やプライマリからの不良データのレプリケーションの可能性があるため、お客様はプライマリ サイトの定期的なバックアップを取り、リストア プロセスをテストする必要があります。 |
障害モードのシナリオと利用可能な緩和パス
次の表は、上記の表で詳しく説明した製品の障害モードと緩和パスの概要です。注 - Gitalyクラスタのインストールは、3以上の奇数レプリケーションファクターを前提としています。
Gitalyモード | シングルGitalyノードの喪失 | アプリケーション/データの破損 | 地域障害(インスタンスの喪失) | 備考 |
---|---|---|---|---|
シングルGitalyノード | ダウンタイム - バックアップからのリストアが必要 | ダウンタイム - バックアップからのリストア | ダウンタイム - 停電が終わるのを待つ必要があります。 | |
シングルGitalyノード+セカンダリノード | ダウンタイム - バックアップからのリストアが必要、セカンダリへの手動フェイルオーバーが可能 | ダウンタイム - バックアップからリストアする必要があります。 | 手動介入 - Geoセカンダリへのフェイルオーバー | |
Gitalyインストール | 部分的なダウンタイム - 影響を受けたノードのリポジトリのみが影響を受け、バックアップからリストアする必要があります。 | 部分的なダウンタイム - 影響を受けたノードのリポジトリのみが影響を受け、バックアップからリストアする必要があります。 | ダウンタイム - 停電が終わるのを待つ必要があります。 | |
Gitalyインストール + Geoセカンダリー | 部分的なダウンタイム - 影響を受けたノードのリポジトリのみが影響を受け、バックアップからリストアする必要があります。 | 部分的なダウンタイム - 影響を受けたノードのリポジトリのみが影響を受け、バックアップからリストアする必要があります。 | 手動介入 - Geoセカンダリへのフェイルオーバー | |
Gitalyクラスタのインストール*。 | ダウンタイムなし - 10秒後にプライマリノードを別のノードにスワップします。 | すべての書き込みは複数のGitalyクラスタノードによって投票されます。 | ダウンタイム - 停電が終わるのを待つ必要があります。 | Gitaly Clusterノードのスナップショットバックアップは現在サポートされていません。 |
Gitalyクラスタインストール* + Geoセカンダリ | ダウンタイムなし - 10秒後にプライマリノードを別のノードにスワップします。 | すべての書き込みは複数のGitalyクラスタノードによって投票されます。 | 手動介入 - Geoセカンダリへのフェイルオーバー | Gitaly Clusterノードのスナップショットバックアップは現在サポートされていません。 |