データの復元とバックアップ
このページでは、Bitbucket Server と Data Center で利用可能なバックアップおよび復元オプションの概要を提供します。
ご質問がある場合は、「FAQ - データの復元とバックアップ」を参照してください。
Bitbucket バックアップの基本
有効なバックアップ計画が不可欠です。
- システム障害の発生時にデータが失われるのを防ぐため
- システム障害の発生後に Bitbucket を復元するため
- Bitbucket のアップグレード プロセスの一環として
会社のポリシーに沿ったデータ復旧計画を確立することを強く推奨します。少なくとも、次の観点を考慮する必要があります。
- Bitbucket をどの頻度でバックアップするべきか。アトラシアンでは、1 日 1 回以上バックアップを実行することを推奨しています。
- どの程度のダウンタイムが許容されるか。ダウンタイムが必要なバックアップ戦略を使用する際は、ユーザーに与える影響が最小限となるようにバックアップをスケジュールすることをおすすめします (例: 営業時間外)。
- バックアップをどの程度の期間保持する必要があるか。アトラシアンでは、バックアップを 1 か月以上保持することを推奨しています。
- バックアップをどこに保存する必要があるか。バックアップはオフサイトの場所に保存することをおすすめします。
- 緊急時にデータをどの程度素早く簡単に復元する必要があるか。実際の緊急時にバックアップ戦略が機能するよう、定期的にステージング環境でバックアップを復元することをおすすめします。
一貫性を保つことの重要性
Bitbucket のすべてのバックアップ戦略は、2 つの基本的なデータ ソースの状態を取得する必要があります。
- ファイル システムのホーム ディレクトリ。リポジトリ データ、ログ ファイル、プラグインなどが含まれます (詳細は「Bitbucket Server のホーム ディレクトリ」を参照)。
- データベース。プル リクエスト、コメント、ユーザー、グループ、権限などについてのデータが含まれます。
これらの 2 つのデータ ソースが、Bitbucket インスタンスの全体的な状態を保持します。インスタンスの完全な状態をバックアップするには、次のいずれかの戦略を使用して、両方の一貫性のあるスナップショットを取得する必要があります。不一致が含まれるスナップショットを復元しようとすると、リポジトリやプル リクエストで破損やデータ損失が発生するリスクがあります。
(リモート Elasticsearch インスタンスがある場合、検索インデックスは Elasticsearch のデータ ディレクトリに保持されますが、これは必要に応じてホーム ディレクトリおよびデータベースのデータから完全に再構築できるため、バックアップに含める必要はありません。)
Bitbucket のバックアップ計画
Bitbucket では、一貫性のあるバックアップを作成するための複数の戦略を提供しています。それぞれの概要については次の表をご覧ください。各オプションには技術的な要件とダウンタイム時間とのトレードオフがあります。インスタンスの規模、ファイル システムやデータベースの技術、復元ポイントの目的、およびバックアップ作成時のダウンタイムに対するユーザーの許容度に応じて戦略を選択します。
ゼロ ダウンタイム バックアップ | DIY Backup | Backup Client | |
---|---|---|---|
要約 | 内部整合性が確保されたデータベースのスナップショットと、ブロック レベルのファイルシステムのスナップショットとを使用して、ダウンタイムを完全に排除する技術。 | 増分コピーまたはベンダー固有のスナップショット テクノロジーを使用してダウンタイムを最小化する手法 | シンプルだが、高可用性環境には不適切。 Bitbucket Server インスタンスをロックし、ベンダーに依存しない形式でホーム ディレクトリとデータベース全体のバックアップを作成する外部ユーティリティ。 |
ダウンタイム |
|
| |
製品の最小バージョン | Bitbucket 4.8+ | Stash 2.12 〜 Bitbucket 4.0+ | Stash 2.7 〜 Bitbucket 4.0+ |
Bitbucket Server | |||
Bitbucket Data Center | |||
最小要件 |
| お使いのファイル システムおよびデータベース ベンダーのスナップショット ツールを使用する必要があります。サンプル スクリプトが提供されます。 | 特別な要件はありません。すぐに利用を開始できます。 |
バックアップ形式 | ベンダー固有のデータベース スナップショットと全ディスク ボリュームのブロック レベルのファイルシステム スナップショット。 | ベンダー固有のデータベース ダンプとファイル システムのスナップショット。 | データベース ベンダーに依存しない。 |
関連ドキュメント | Bitbucket のゼロ ダウンタイム バックアップを使用する | Bitbucket Server DIY Backup を使用する | Bitbucket Server Backup Client を使用する |
更に詳しい情報
Bitbucket のゼロ ダウンタイム バックアップを使用する