このドキュメントでは、Cloud SQL インスタンスの 2 つのバックアップ オプションについて、主な機能と構成を含めて説明します。これにより、インスタンスに最適なオプションを選択できます。
Cloud SQL インスタンスでバックアップを使用する前に、各インスタンスのバックアップ オプションを選択する必要があります。Cloud SQL には、次のバックアップ オプションがあります。
- 拡張バックアップ: このオプションでは、バックアップが一元化されたバックアップ管理プロジェクトで管理および保存されます。 Backup and DR サービスを使用し、保持期間の適用、詳細なスケジュール設定、モニタリングを提供します。
- 標準バックアップ: Cloud SQL は、これらのバックアップを Cloud SQL インスタンスと同じプロジェクトで作成、管理、保存します。
選択したバックアップ オプションによって、Cloud SQL インスタンスで使用できる機能と構成オプションが決まります。インスタンスで複数のバックアップ オプションを同時に使用することはできませんが、Cloud SQL では必要に応じてこのバックアップ オプションを切り替えることができます。
次の表に、各バックアップ オプションで使用可能な主な機能の概要を示します。
機能 | 標準バックアップ | 拡張バックアップ |
---|---|---|
プロジェクト全体での一元的なバックアップ管理 | - | ✔ |
Backup Vault | - | ✔ |
自動バックアップのスケジュール | 毎日 | 毎時、毎日、毎週、毎月、毎年 |
オンデマンド バックアップ | ✔ | ✔ |
マルチリージョンのバックアップ | ✔ | - |
インスタンス削除時の最終バックアップ | ✔ | ✔ |
バックアップの保持期間 | 1 年 | 無制限 |
インスタンスの削除時の全バックアップの保持 | ✔ | ✔ |
プロジェクトの削除時のバックアップの保持 | - | ✔ |
保持ロックが適用された保持期間 | - | ✔ |
ログを使用したポイントインタイム リカバリ | ✔ | ✔ |
クロスリージョン バックアップと復元 | ✔ | - |
CMEK のサポート | ✔ | - |
これらのバックアップ オプションの詳細については、標準バックアップと拡張バックアップをご覧ください。Cloud SQL でのバックアップの仕組みについて詳しくは、Cloud SQL バックアップの概要をご覧ください。
拡張バックアップ
拡張バックアップでは、Backup and DR を使用して、さまざまなプロジェクトの Cloud SQL インスタンスの全バックアップを 1 つの一元化されたバックアップ プロジェクトで管理して保存できます。Backup and DR により、日々のバックアップ オペレーションの管理、モニタリング、レポートが 1 か所からできるようになります。バックアップは Backup Vault に保存されます。Backup Vault は Google マネージドの安全で隔離されたストレージ リソースであり、Backup and DR が管理します。また、バックアップ プランがバックアップと復元の設定を管理します。これにより、ソース プロジェクトから独立した、変更不可で消去不可のバックアップが可能になります。Backup and DR でのバックアップの仕組みの詳細については、Backup and DR の概要をご覧ください。
拡張バックアップでは、すべての Cloud SQL インスタンスに関連付ける Backup Vault とバックアップ プランをホストする一元化されたバックアップ プロジェクトを使用できます。これらのプランは複数のプロジェクトにリンクすることもできます。
バックアップ プランを Cloud SQL インスタンスに接続すると、既存のバックアップと復元の設定がバックアップ プランで上書きされます。バックアップと復元の設定を含むプランは一元化されたバックアップ プロジェクトに保存され、プランが Cloud SQL インスタンスでアクティブな状態のときに作成されたバックアップは、バックアップ プロジェクトの Backup Vault に保存されます。
Backup and DR が別の Cloud de Confiance by S3NS プロジェクトで管理されている場合、ソース プロジェクトまたはワークロード プロジェクトが削除されてもバックアップは保護されます。ロールと責任は Backup and DR Admin
によって管理され、Cloud SQL Admin
のロールと責任とは異なります。
インスタンスの削除後にバックアップを保持するか、削除前にインスタンスの最終バックアップを作成できます。拡張バックアップの一環で作成されたすべてのバックアップは、インスタンスの稼働中または削除後にインスタンスの復元に使用できます。
バックアップ ストレージ
バックアップは、Backup Vault と呼ばれる一元管理された場所に保存されます。Backup Vault は、Backup and DR によって管理される安全で分離されたストレージです。Backup Vault は、選択したロケーションがインスタンスのロケーションと互換性がある限り、単一リージョンにバックアップを保存します。バックアップ Vault を作成できる場所の詳細については、バックアップ Vault でサポートされているロケーションをご覧ください。
Cloud SQL では、Cloud SQL インスタンスとは異なるプロジェクトにある Backup Vault を使用することをおすすめします。詳細については、バックアップ Vault をご覧ください。
バックアップの保持期間
拡張バックアップでは、オンデマンド バックアップと自動バックアップを作成できます。拡張バックアップ オプションを使用して作成されたバックアップは、Backup Vault に保存され、最大 99 年間保持できます。Backup Vault の最小適用保持期間は 1 日から 99 年の間です。
インスタンスを削除すると、インスタンスが稼働中に作成されたインスタンスのすべてのバックアップが自動的に保持され、インスタンスが稼働中にバックアップ プランで設定された同じ保持設定に従います。削除前にインスタンスの最終バックアップを作成する場合は、最終バックアップのバックアップ保持期間を最大 99 年に設定することもできます。
バックアップ費用
拡張バックアップでは、バックアップの費用は Backup Vault に保存されているバックアップの合計サイズに基づきます。このようなバックアップは、インスタンスに関連付けられたバックアップ プランのバックアップ構成に基づいて作成されます。合計費用は Backup and DR の料金に基づき、Backup and DR によって計算されます。
制限事項
拡張バックアップを使用する場合、次の制限が適用されます。
- Backup Vault と Cloud SQL インスタンスは同じリージョンに存在する必要があります。
- インスタンスに関連付けられているバックアップ プランを変更するには、既存のバックアップ プランの関連付けを削除してインスタンスを標準バックアップに変更したうえで、新しいバックアップ プランを関連付ける必要があります。
- 拡張バックアップを使用しているインスタンスの障害復旧(DR)レプリカを作成することはできません。
- インスタンスに障害復旧(DR)レプリカがあると、そのインスタンスで拡張バックアップを有効にすることはできません。
- バックアップ プランをレプリカ インスタンスに関連付けることはできません。
- インスタンスで拡張バックアップを使用している場合、インスタンスをレプリカに降格することはできません。
標準バックアップ
標準バックアップは、Cloud SQL によって管理されるバックアップ オプションです。バックアップは、Cloud SQL インスタンスと同じプロジェクトで作成、管理、保存されます。バックアップ設定がバックアップ プランで定義される拡張バックアップとは異なり、標準バックアップのバックアップ構成はインスタンス レベルで設定され、インスタンスの設定で定義されます。したがって、複数の Cloud SQL インスタンスがある場合は、インスタンスのバックアップ設定で、インスタンスごとにバックアップ構成を個別に定義する必要があります。標準バックアップの一部として作成されたバックアップは、インスタンスと同じプロジェクトに保存されます。
標準バックアップを使用すると、Cloud SQL インスタンスの自動バックアップとオンデマンド バックアップを作成できます。インスタンスの削除時に、すべてのバックアップを保持し、データの最終バックアップを作成することもできます。これにより、削除したインスタンスを再作成できます。ただし、バックアップを保持しない場合、またはインスタンスを削除する前に最終バックアップを作成しない場合、Cloud SQL によってすべてのインスタンス バックアップが自動的に削除されます。
バックアップ ストレージ
バックアップは、高可用性(HA)構成と非 HA 構成のどちらのインスタンスも同じロケーションに保存されます。高可用性構成では、セカンダリ インスタンスへのフェイルオーバーまたは切り替えが発生した場合でも、インスタンスのバックアップにアクセスできます。
バックアップのロケーションは次のように定義できます。
- Cloud SQL が選択したデフォルトの場所(元のインスタンスの場所に基づく)。
- デフォルト ロケーションを使用しない場合に選択するカスタム ロケーション。
デフォルト バックアップ ロケーション
ストレージ ロケーションを指定しない場合、バックアップは Cloud SQL インスタンスのロケーションに地理的に最も近いマルチリージョンに保存されます。たとえば、Cloud SQL インスタンスが us-central1
にある場合、デフォルトでは us
マルチリージョンにバックアップが保存されます。
マルチリージョンのバックアップ
標準バックアップでは、シングルリージョンまたはマルチリージョンのバックアップ ロケーション構成を使用できます。シングルリージョン構成では、バックアップはリージョン内の異なるゾーン間で複製されます。マルチリージョン構成では、レイテンシを最小限に抑え、組織のポリシーまたはロケーション ベースの制限によるバックアップの失敗を回避するため、バックアップをインスタンスと同じリージョンに配置することをおすすめします。
カスタム バックアップ ロケーション
Cloud SQL では、バックアップ データのカスタム ロケーションを選択できます。これは、バックアップの保管場所を特定の地理的境界内に限定する規制を組織が遵守しなければならない場合に便利です。組織に対してこのような要件がある場合は、リソース ロケーション制限の組織のポリシーが適用される可能性が高くなります。このポリシーでは、ポリシーに適合していない地理的位置を保管場所として使用しようとすると、[バックアップ] ページにアラートが表示されます。このアラートが表示された場合は、バックアップのロケーションをポリシーで許可されているロケーションに変更する必要があります。
バックアップのカスタム ロケーションを選択する場合は、次の点を考慮してください。
- 費用: インスタンス内の、あるクラスタは、他のクラスタよりも低コストのリージョンにある可能性があります。
- アプリケーション サーバーへの近接: レイテンシを短縮するために、バックアップは提供しているアプリケーションにできるだけ近い場所に保存することをおすすめします。
- ストレージの利用率: バックアップのサイズが大きくなると、維持するために十分な保存容量が必要になります。ワークロードに応じて、サイズやディスク使用量の異なるクラスタを作成できます。これはクラスタの選択に影響することがあります。
カスタム バックアップ ロケーションを選択するときに、使用可能な Cloud SQL ロケーションとマルチリージョン ロケーションを選択できます。有効なリージョン値の完全なリストについては、インスタンスのロケーションをご覧ください。マルチリージョン値の完全なリストについては、マルチリージョンのロケーションをご覧ください。
インスタンスのバックアップ ロケーションの設定と表示の詳細については、バックアップのカスタム ロケーションを設定するとバックアップのロケーションを表示するをご覧ください。
バックアップの保持期間
標準バックアップでは、自動バックアップとオンデマンド バックアップを作成できます。自動バックアップは 1 ~ 365 日間保持できます。デフォルトは、Cloud SQL Enterprise エディション インスタンスの場合は 7 日間、Cloud SQL Enterprise Plus エディション インスタンスの場合は 15 日間です。オンデマンド バックアップは、バックアップが削除されるか、バックアップを含むインスタンスが削除されるまで無期限に保持されます。
オンデマンド バックアップと自動バックアップのインスタンス削除後にバックアップの保持を有効にすると、これらのバックアップは、自動バックアップの場合は 1~365 日、オンデマンド バックアップの場合は無期限という同じ保持設定に従います。詳細については、インスタンスの削除後のバックアップを保持するをご覧ください。
バックアップ費用
標準バックアップでは、バックアップ費用はバックアップの合計サイズ、ストレージの場所、保持の設定に基づきます。
保持する自動バックアップの数を構成できます(1 ~ 365 の範囲)。
バックアップに関する料金の詳細については、Cloud SQL の料金をご覧ください。
バックアップのレート制限
Cloud SQL では、データディスクのバックアップ オペレーションのレートが制限されています。1 つのプロジェクトの 1 つのインスタンスで 50 分ごとに最大 5 つのバックアップ オペレーションが許可されます。バックアップ オペレーションが失敗した場合、この割り当てにカウントされません。上限に達するとオペレーションは失敗し、再試行が可能であることを示すエラー メッセージが表示されます。
Cloud SQL は、バケットからのトークンを使用して、一度に実行可能なバックアップ オペレーションの数を決定します。各インスタンスにはバケットがあります。バケット内でバックアップ オペレーションに使用可能なトークンは最大 5 つです。10 分ごとに新しいトークンがバケットに追加されます。バケットがいっぱいの場合、トークンはオーバーフローします。
バックアップ オペレーションのたびに、バケットからトークンが付与されます。オペレーションが成功すると、バケットからトークンが削除されます。失敗した場合、トークンがバケットに返されます。次の図は、この仕組みを示しています。
トランザクション ログの保持
トランザクション ログはインスタンスの保存場所に保存され、保持期間は日単位です。Cloud SQL Enterprise Plus エディション インスタンスの場合、範囲は 1 ~ 35 日で、デフォルトでは 14 日です。Cloud SQL Enterprise エディション インスタンスの場合、範囲は 1 ~ 7 日で、デフォルトでは 7 日です。Cloud SQL Enterprise Plus エディションと Cloud SQL Enterprise エディションのどちらのインスタンスの場合も、トランザクション ログの保持設定をバックアップの保持設定よりも小さくする必要があります。
ログは継続的ではなく、1 日 1 回削除されます。ログの保持日数がバックアップ数と同じ場合、ログの保持期間が不足する可能性があります。たとえば、ログ保持期間を 7 日に設定し、保持するバックアップの数を 7 に設定すると、6 ~ 7 日分のログが保持されます。
ログ保持期間のすべての日数のバックアップを確保するため、保持するバックアップの数は、ログ保持期間の日数よりも 1 日多く設定することをおすすめします。