はじめに

記載している情報は2023/7時点での情報となります。
DR対策の第一歩として、メインサイトで利用しているリージョン以外の別リージョンにバックアップをコピーするなどの対応を実施されている方々も多いかと思います。
クラウドであれば、日本国外のリージョンも気軽に使えるかと思いますが、日本国内に限定した場合の対策として、東京リージョン、大阪リージョンを利用した場合について考えていきたいと思います。

対象リージョン

リージョンとしては以下のリージョンを対象としています。

利用用途 対象リージョン
メインサイト 東京リージョン
DRサイト 大阪リージョン

比較対象

比較対象としてはAWSとGoogle Cloudでのクロスリージョンバックアップが可能なサービスを比較していきます。
マルチリージョンで提供が可能なサービスもありますが、今回の記事では対象外とさせていただきます。
それぞれのクラウドサービスでクロスリージョンバックアップを実施する際の特徴としては以下です。

クラウドサービス クロスリージョンバックアップ方法の特徴
AWS ・S3に保存されているデータについては、バケット単位でクロスリージョンレプリケーションを設定し、異なるリージョンにバックアップが可能
・AWS Backupを利用することにより、対応するサービスについて一元的にBackupの管理を行うことが可能
・後から設定が可能
Google Cloud ・Cloud Storageに保存されているデータについては、バケット作成次にデュアルリージョンバケットを選択することで異なるリージョンにバックアップが可能(マルチリージョンバケットの場合はアジア地域となるため目的とは不一致な点に注意)
・クロスリージョンバックアップを行える各サービスにて、目的とするリージョンに保管を行うことが可能
・サービス作成時に指定を行う必要がある

AWSの場合

まずはAWSでクロスリージョンバックアップを実施する方法を確認していきます。
AWSでの実現方法としては以下の方法を用いて実現することができます。

対象サービス クロスリージョンバックアップ方法 備考
AWS Backup バックアップルールにてコピー先を大阪リージョンに指定 クロスリージョンバックアップが実施可能なサービス
・EBS
・EC2
・RDS
・DynamoDB
・EFS
・Amazon FSx

最新情報は以下
https://docs.aws.amazon.com/ja_jp/aws-backup/latest/devguide/whatisbackup.html#features-by-resource

設定例
https://aws.amazon.com/jp/blogs/news/aws-backup-kix-launch-cross-region/
S3 対象バケットのレプリケーションルールで大阪リージョンを指定 バージョニングを有効にする必要がある
設定方法
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/replication.html

S3の場合はバケットを作成後、対象とするバケットに対してバージョニングを有効にした後、レプリケーションルールを設定することによりクロスリージョンレプリケーションを行うことができます。作成段階では不要と想定していても、後からの設定で対応を行うことができるためとりあえずバケットを用意して必要となった段階で後から追加できる利点があります。

AWS Backupの場合は、対応しているサービスを対象として一元管理が可能となります。バックアップサービスとして独立しているため、こちらも後からの設定で対応が可能となります。

また、AWSではDR戦略として以下の指針を公開しておりますので、参考までに紹介させていただきます。
https://aws.amazon.com/jp/blogs/news/disaster-recovery-dr-architecture-on-aws-part-1-strategies-for-recovery-in-the-cloud/

Google Cloudの場合

Google Cloudでクロスリージョンバックアップを実施する方法を確認していきます。
Google Cloudでの実現方法としては以下の方法を用いて実現することができます。

対象サービス クロスリージョンバックアップ方法 備考
BigQuery BigQuery Data Transfer Serviceを利用して、大阪リージョンへコピーを行う 2023/7段階ではプレビュー機能。
バックアップではなく、テーブルのコピーとなる。
https://cloud.google.com/bigquery/docs/managing-datasets?hl=ja#copy-datasets
Cloud Spanner バックアップと復元を利用する 設定方法
https://cloud.google.com/spanner/docs/backup/copy-backup?hl=ja
Cloud SQL カスタムロケーションを利用して大阪リージョンにバックアップを作成する 設定方法
https://cloud.google.com/sql/docs/mysql/backup-recovery/backing-up?hl=ja#locationbackups
Cloud Storage バケットを作成する際にデュアルリージョンバケットを選択し作成する バケットを作成する際にデュアルリージョンで作成を行うことにより、東京リージョン、大阪リージョンに配置することが可能
設定方法
https://cloud.google.com/storage/docs/locations?hl=ja
FileStore 大阪リージョンにデータを保存するようにジョブのスケジュールを設定する。
2023/7現在ではプレビュー機能となるが、コンソール上からのバックアップの作成でも対応可能
ジョブスケジュールでの設定方法
https://cloud.google.com/filestore/docs/backups?hl=ja
コンソールからの設定方法
https://cloud.google.com/filestore/docs/backup-restore?hl=ja
GCE スナップショット作成時にロケーションとして大阪リージョンを選択する 選択するロケーションとして、リージョンロケーションを選択し、東京、大阪でそれぞれ作成を行う
https://cloud.google.com/compute/docs/disks/snapshots?hl=ja#selecting_a_storage_location
GKE クラスタごとに大阪リージョンに保存するバックアッププランを作成する 設定方法
https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke/how-to/backup-plan?hl=ja#console_1

Cloud Storageでは、バケットを作成する際にデュアルリージョンバケットを選択する必要があります。
AWSとは異なり、作成段階で指定をしていなければ別のリージョンに配置されません。
もちろん、別バケットを作成しデータを移行すれば途中からでも別リージョンにも配置を行うことが可能ですが、手間を考えると設計をしっかりする必要がある印象です。
また、マルチリージョンで作成してしまうと大陸単位(アジアのどこか)に配置されることにもなるため、しっかりとサービス内容を把握した上で作成を行わないと意図しない地域にデータが配置されるということにもなりかねません。

また調査した限り、Google CloudではAWS Backupのように一元的にバックアップを管理するようなサービスはなく、それぞれのサービスで設定を行う必要がありそうでした。
運用を行う際にはどれでクロスリージョンバックアップを行うかを管理する必要もあり、対象が増えてきた際に運用が煩雑になりかねない印象を持ちました。

所感

今回比較したサービス群については、別リージョンへのデータのコピー等が可能なサービスを対象としています。クロスリージョンレプリケーション等を実施するサービスについては、記載を行っておりません。
AWS、Google Cloud共にクロスリージョンレプリケーションを行えるサービスも多く提供されておりますため、業務継続性を重要視する場合は検討いただければと思います。

AWS、Google Cloudの比較所感としてまとめると以下になります。

クラウドサービス 有利な部分 不利な部分
AWS ・AWS Backupを利用することにより一元管理が可能
・後からでも別途設定が可能
・対象が増えてきた際にも管理が比較的容易
・実現するまでにGoogle Cloudよりも手間がかかる
Google Cloud ・作成時に設定を行うことが多く敷居の低さもありお手軽
・ クロスリージョンレプリケーションを提供しているサービスが多く可用性もお手軽に設定が可能
・一元管理を行うサービスがなくそれぞれのサービスで個別に設定が必要
・対象が増えてきた際の管理が煩雑になる可能性がある
・作成時に指定する必要がある

今回大阪リージョンへコピーを行うという観点で確認してきました。
クロスリージョンバックアップを実現するという点では、AWSよりも敷居が低くお手軽さという面でGoogle Cloudの方がとっつきやすい印象を受けました。ただし、マルチリージョンを選択してしまうと大陸単位(アジア地域のどこか)での配置となる場合もあるため、地域を特定してバックアップする際は注意が必要です。
また、調査している中で感じた点については、Google Cloudではクロスリージョンレプリケーションを提供しているサービスが多い印象です。このため、どちらかというと業務継続性を重視し、可用性に重点を置いていそうな印象を受けました。
一方で、利用するそれぞれのサービスで設定を行う必要があるため、対象のサービスが増えてきた際の管理をしっかり行い運用していく必要があるかと思います。

AWSにおいては、Google Cloudよりもクロスリージョンバックアップを行うまでの手間はありますが、AWS Backupを用いることによりバックアップの一元管理を行うことができます。
このため、サービスごとに設定を行う手間が少なく、AWS Backupを利用することにより一元的に管理を行うことができるかと思います。
バックアップを行う対象が増えてきた際の運用面としては、一元管理を行える分、AWSの方がGoogle Cloudよりも楽になる印象を受けました。
また、とりあえずリソースを作成を行い、後からクロスリージョンバックアップを行うことが可能なため、途中から必要になったパターンにも対応することができ運用面を考慮されている印象があります。

今回調査した内容につきまして、DR対策を実施する際の検討の一助となれれば幸甚です。

その他

本記事では紹介をいたしませんが、AWS、Google Cloudで
AWS、Google CloudではともにDR対策のサービスを提供しています。
今回の内容では含まないが参考として以下のURLを付与しておきます。

AWSのDRサービス
https://aws.amazon.com/jp/disaster-recovery/

Google CloudのBackup and DRサービスが提供
https://cloud.google.com/backup-disaster-recovery?hl=ja