GH GambleHub

バックアップ/レプリケーション戦略

概要

信頼できるデータ戦略は、バックアップ、レプリケーション、リカバリという3つの柱に基づいています。レプリカはRTO(リカバリ時間)を削減し、バックアップはRPO(データ損失)を保証し、論理エラー/ランサムウェアから保護します。基本原則:3-2-1-1-0(3つのコピー、2つのタイプのメディア、1-オフサイト、1-チェック中の変更不可、0エラー)、定期的なDRテスト、およびクリティカルセットの不変性。

利用規約と目的

RPO-どのくらいのデータを失うことができます(例えば、≤ 5分)。
RTO-復元する時間はどのくらいですか(例えば、≤ 15分)。
PITR (Point-in-Time Recovery)-ログ再生機能を備えた「モーメントX」リカバリ。
データSLOは、RPO/RTOとバックアップタスクの成功のためのサービスレベル契約です。

行列の例:
データクラスRPORTO注意事項
トランザクション/ウォレット≤ 1〜5分≤ 5〜15分ログ+同期コアレプリカ
レポート/PII1時間1時間WORM/不変性、アーカイブ
ログ/Rawイベント≤ 24時間≤ 4時間オブジェクト、ライフサイクル

フォルト・トレランスとレプリケーション・モデル

トポロジオプション

アクティブパッシブ(ホット/ウォーム/コールド):よりシンプルで予測可能なファイローバー。
Active-Active:高可用性ですが、紛争解決と一貫性はより困難です。
マルチゾーン/リージョン/クラウド:遅延と脱出コストのバランス。

同期と非同期

同期:RPO≈0、レイテンシーの上、距離制限。
Asynchron:低いRPOでゼロRTOに近い(分)、領域/雲に耐えます。
ハイブリッド:ゾーン内の同期、リモート領域との非同期。

レプリカ≠バックアップ

レプリカはソースの後にエラー/削除を実行します。バックアップ-バージョン管理、チェック、分離機能を備えたオフパス・コピー。

ポリシー3-2-1-1-0と不変性

3コピー(prod+local backup+offsite)

2種類のメディア(ブロック/NAS/オブジェクト/テープ)。
1オフサイト(他のサイト/クラウド/テープ)。
1不変コピー(WORM:オブジェクトロック、不変スナップショット/テープ)。
0エラー:通常の整合性チェック(チェックサム/検証/復元テスト)。

練習:
  • 重要なバックアップを持つオブジェクトのバージョン管理とオブジェクトロック(コンプライアンス/ガバナンス)を有効にします。
  • NAS/ブロックの場合-期限までの保持と削除の禁止を伴う不変スナップショット。

バックアップとスケジュールの種類

フル-フルコピー。
増分-前のバックアップからの変更のみ。
差分-最後の完了以来の変更。
GFS計画(Grandfather-Father-Son)で永遠にインクリメンタル:毎日のインクリメント、毎週および毎月の「合成フル」。

推薦(例):
  • Prod DB:毎日フル(または合成フル)、5-15分ごとに増分/ログ(PITR)。
  • ファイルサーバー:毎週フル、毎日の増分、毎月のアーカイブ。
  • オブジェクト:ライフサイクル+バージョン;cold-ストレージクラス/テープをアーカイブします。

アプリケーションとデータベース: PITRプラクティス

PostgreSQL

WALアーカイブとベースバックアップを有効にします。'restore_command'によるPITR。

ツール: 'pgBackRest'、 'wal-g'(オブジェクト)、'pg_basebackup'

スプリットボリューム:データとWAL;PLPを使用して高速NVMeでWALを書き込みます。

MySQL/MariaDB

PITRのバイナリログ。'Percona XtraBackup'(ホットバックアップ)で完了します。
GTIDレプリケーション;DR-地域/クラウドへの非同期。

MongoDB

PITRのためのOplog;論理コピーのためのstoraj+'mongodump'レベルのスナップショット。
バックアップの前にレプリカの一貫性をテストします。

Redis/キャッシュ

バックアップと見なされない:RDB/AOF+をオフサイトに保つ。ウォームキャッシュまたは真実のソースから復元します。

Kubernetesとコンテナ

etcdクラスタ-別個の重要な目標(頻繁なスナップショット、オフサイト)。
Velero:バックアップマニフェスト/リソース+CSI スナップショット/PV;S3-compatible Bucket内のストレージ(Object Lock付き)。
ステートフルなダウンロード:app-consistentスナップショット(pre/post hooks)、それ以外の場合-crash-consistent。
オブジェクトアーティファクト(モデル/メディア)のバージョニング-バケットのレベルで。

仮想化とファイル・サーバ

VMスナップショット:CBT (Changed Block Tracking)を使用し、オフサイトを保存し、定期的にゲスト対応のquiesce (VSS for Windows)を実行します。
ファイルサーバ(NAS):スナップショット+レプリカおよび通常のカタログ復元テスト(ファイルサンプリング)。

バックアップセキュリティ

残り(LUKS/ZFS/cloud KMS/Vault)および送信中(TLS/mTLS)の暗号化。
キー管理:個々の役割、デュアルコントロール、回転、マスターキーのオフラインストレージ。
分離:不変のコピーを削除する権利のないバックアップソフトウェアアカウント;個々のネットワーク/VLAN。
ランサムウェア抵抗性:不変、エアギャップ(テープ/隔離されたアカウント/ラボ)。
監査:バックアップシステム操作のログ、削除/保持の削減に関する通知。

ウィンドウと帯域幅の計画

バックアップウィンドウとロード:I/O/ネットワークのスロットル、重複排除、圧縮。
ネットワーク:毎分N、個々のチャンネル/VPN、夜間のレプリカ、またはQoSで永久に増分します。
ブロックトラッキング/CDCを変更してトラフィックを削減します。
大規模なベース:パラレルストリーム/ストリーミング、マルチチャンネルmultipart to object。

モニタリング、メトリック、SLO

技術指標:
  • バックアップ/レプリケーション・タスク(%)、期間、速度、ログ・ラグ(WAL/binlog/oplog)の成功).
  • バックアップ記憶域、dedup係数、他の費用。
  • テスト回収の時間と成功。
SLO(例):
  • バックアップの成功≥ 99。9%/30日。
  • RPOは時間の≥ 99%を満たしました(目標≤ログラグ)。
  • RTO(テストリストア)≤ウォレットの場合は15分、レポートの場合≤ 1時間です。
  • 毎月のDRドリル:完了したルーチンシナリオの100%。
アラート:
  • 欠落/失敗したバックアップ、PITR>しきい値の遅延、重複排除の低下、スペース不足、保持ポリシーの変更、新しいテストの復元の欠如。

DRドリルとリカバリチェック

テーブルの上:役割の調整、接触、コミュニケーション。
技術:サンドボックスの回復、RTO測定、チェックサム/データ比較。
ブラックスタート:完全な裸の鉄/クリーンクラスタの回復。
データカタログ:システムクラスごとに事前に説明されたリカバリ手順(ランブック)。
自動化:定期的な「カナリア」チェックサムの復元と検証。

実用的なテンプレート

1) PostgreSQL(オブジェクトへのpgBackRest+WALアーカイブ)

ini
[global]
repo1-type=s3 repo1-path=/pgbackups repo1-s3-endpoint=minio. local:9000 repo1-s3-bucket=pg-wal repo1-s3-key=ACCESSKEY repo1-s3-key-secret=SECRET repo1-retention-full=8 start-fast=y compress-type=zst

2) wal-g (ENV例)

bash export WALG_S3_PREFIX=s3://pg-wal/prod export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
export WALG_COMPRESSION_METHOD=zstd

3) Velero (K8s-目的+バケツの不変性)

yaml apiVersion: velero. io/v1 kind: BackupStorageLocation metadata: { name: default, namespace: velero }
spec:
provider: aws objectStorage:
bucket: k8s-backups config:
s3Url: https://minio. example s3ForcePathStyle: "true"
publicUrl: https://minio. example

4)オブジェクトロックポリシー(例'mc')

bash mc version enable my/backups mc retention set --default COMPLIANCE 365d my/backups

5) GFSスケジュールの例(コンセプト)

毎日:15分ごとに増分(雑誌)、毎日の合成フル。

毎週: 1つの「完全な」(合成)、8週間店

毎月:フル、ストア12-24ヶ月(アーカイブ/テープ)。

実装チェックリスト

  • 定義されたデータクラス、所有者、RPO/RTO/SLO。
  • レプリケーション(同期/非同期)およびトポロジー(AZ/Region/Cloud)モデルが選択されています。
  • バックアップは構成されています:full/incremental/PITR、スケジュール、ディレクトリ。
  • 不変性(WORM/オブジェクトロック/不変スナップショット)とオフサイト/エアギャップが含まれます。
  • 暗号化とKMS/Vault、個別の役割とキーの回転。
  • 監視:タスクの成功、ログラグ、場所、テストの復元;警告します。
  • Runbooksの回復とfeilover;連絡先、エスカレーション、コミュニケーションテンプレート。
  • 毎月のDRドリル+レポート、計画を調整します。
  • 予算とFinOps:ストレージのコスト/出力、アーカイブ/破損プロジェクト。

よくあるエラー

「レプリカがあります-バックアップは必要ありません」:論理的な削除とランサムウェアはレプリカに残ります。
リカバリテストなし-バックアップは「理論的に」存在します。
不変性とオフサイトの欠如は、単一のリスク点です。
売上とバックアップのための同じアカウント/キー-妥協=すべての損失。
長すぎるバックアップウィンドウ→ピークとの競合;スロットリングとQoSなし。
ログラグ制御なしのPITR。
アプリケーションの一貫性のあるスナップショットを無視します。

iGaming/fintech固有の

財布/支払の中心:RPO ≤ 1-5分、RTO ≤ 15分;WORMを持つオブジェクトへのログ(WAL/binlog);ゾーン+非同期領域で同期します。
レポート/規制:変更できないリポジトリ、長い保存期間(年)、検証可能な完全性、規制当局にデータを発行するための明確な手順。
ログ/rawイベント/不正防止:安価な長寿命ストレージ(オブジェクト)+ライフサイクル;インデックスとストアフロント-別途。
ピーク(試合/トーナメント):ピーク外のバックアップウィンドウ、スロットリング;イベント期間のDR計画;カナリアは株式の前に復元します。

合計

データ保護はアーキテクチャの分野です:3-2-1-1-0、バージョン管理と不変性、SLOとしてのRPO/RTO、定期的なDR演習、および「現場での」回復テスト。アップタイムおよび高速フェイルオーバーのためのレプリケーションと、論理エラーや妥協のためのバックアップを組み合わせます。自動化、測定、文書化-最悪の日でも常に作業経路を戻すことができます。

Contact

お問い合わせ

ご質問やサポートが必要な場合はお気軽にご連絡ください。いつでもお手伝いします!

Telegram
@Gamble_GC
統合を開始

Email は 必須。Telegram または WhatsApp は 任意

お名前 任意
Email 任意
件名 任意
メッセージ 任意
Telegram 任意
@
Telegram を入力いただいた場合、Email に加えてそちらにもご連絡します。
WhatsApp 任意
形式:+国番号と電話番号(例:+81XXXXXXXXX)。

ボタンを押すことで、データ処理に同意したものとみなされます。