APC 技術ブログ

株式会社エーピーコミュニケーションズの技術ブログです。

株式会社 エーピーコミュニケーションズの技術ブログです。

【入門・初心者向け】AWS Backup の基本設定方法

目次


はじめに

こんにちは、エーピーコミュニケーションズ クラウド事業部の高橋です。

2本目のブログは、AWS Backup の基本的な設定方法について、実際にバックアップを作成しながら書いてみたいと思います!
また、AWS Backup が利用できるサービスやバックアップ周期などにも簡潔に触れてみたいと思います!
どうぞよろしくお願いします!


どんなひとに読んで欲しい

  • AWS Backup の概要を知りたい人
  • AWS Backup を実際に設定したり実装してみたい人


AWS Backup の基本的な設定方法

今回のブログでは、特定の EC2 を AWS Backup を使用してバックアップする基本的な設定方法をいちから検証してみたいと思います!

① バックアップボールトの作成
「バックアップボールト」とは、バックアップしたデータを保存するコンテナです。(「ボールト (vault)」は "倉庫" という意味です)
まずは、そのバックアップボールトから作成していきます!

AWS のコンソール上から AWS Backup に移動し、左側のナビゲーションバーの「バックアップボールト」から「バックアップボールトを作成」をクリックしてください。



バックアップボールトの作成画面に遷移しましたら、バックアップボールトの名前と暗号化キーを設定します。
暗号化キーは保存したバックアップデータを暗号化して保護する際に使うキーです。
今回は AWS Backup が使用するデフォルトの暗号化キーを選びます。(選択した暗号化キーはバックアップボールトの作成後から変更することはできませんので注意してください!)
バックアップボールトの名前と暗号化キーを設定したら、右下の「バックアップボールトを作成」をクリックしてください。



すると、以下のようにバックアップボールトが作成されたことが確認できます!



② バックアッププランの作成
次に、バックアッププランを作成していきます。
ナビゲーションバーの「ダッシュボード」から「バックアッププランを作成」をクリックしてください。



バックアッププランの作成画面に遷移しました。
今回は、基本的な AWS Backup の設定ということで「新しいプランを立てる」から設定していていきたいと思います。
まず、バックアッププランの名前を設定します。



続いて、バックアップルールの項目では、バックアップルールの名前、バックアップボールトの指定、バックアップ頻度、バックアップ期間などを設定していきます。
先ほど作成したバックアップボールトを指定します。
また、今回の検証では、バックアップ頻度を「毎時」で設定し正常にバックアップが取得できるか確認していきたいと思います。


バックアップ頻度を「毎時」で設定する場合、バックアップ期間における「開始時間」について少し注意が必要です!
「毎時」を設定されるということは、1日に24回のバックアップを取得することを想定されるかと思います。
しかし、以下の画像の黄色下線の内容のとおり、「開始時間」は1日のなかでの初回バックアップが開始される時間の設定です。
したがって、1日に24回のバックアップを取得したい場合は、「開始時間」を「00時台」で設定しておかないと「00時台~23時台」の計24回のバックアップが取得できなくなりますので、注意してください!

また、「次の時間以内に開始」とは、「開始時間」から指定した期間中にバックアップを開始する時間を設定します。
上の画像を例にいうと、1時間以内に何かしらの要因でバックアップが開始しなかった場合、その回のバックアップは期限切れでエラーとなります。
「次の時間以内に完了」も同様に、バックアップが開始して指定した時間や日にちの期間中にバックアップが完了しなかった場合、その回のバックアップは期限切れでエラーとなります。


続いて、バックアップを保持する期限を設定します。
(基本的な設定方法の検証のため、ポイントインタイムリカバリとコールドストレージについては設定しません)



以上の設定が完了しましたら、右下の「プランを作成」をクリックしてください。
なお、バックアップするリソースの割り当てはプラン作成後に実施します。
また、作成した1つのバックアッププランに対して、バックアップルールを追加したり、バックアップ対象リソースを追加することもできます。



すると、以下のようにバックアップルールが作成されました!



③ リソースの割り当て
続いて、バックアップしたいリソースをバックアッププランに対して割り当てたいと思います!
作成したバックアッププランを選択し、「リソースを割り当てる」をクリックしてください。



リソース割り当ての名前とバックアップ (ここでは「復旧ポイント」と呼ばれます) 作成・管理についての IAM ロールを設定します。
今回は AWS Backup が使用するデフォルトの IAM ロールを選びます。


続いて、割り当てるリソースを選択します。
今回は特定の EC2 のバックアップを取得する検証ですので「特定のリソースタイプを含める」を選択します。
そうすると、特定のリソースを入力できる項目が表示されるので、リソースタイプとリソース ID を入力します。
※ 「すべてのリソースタイプを含める」についても後述で少し触れたいと思います



以降は、今回の検証には必要ないオプションなので、そのまま「リソースを割り当てる」をクリックします。



すると、リソースの割り当てが正常に作成されたことが確認できました!



④ バックアップジョブの動作確認
これで今回の検証のための作成や設定は完了したので、実際にバックアップジョブが動作して正常に完了するか確認したいと思います!

今回の検証では、毎時15分でバックアップを取得するように設定をしました。
以下の画像のように、14:15 時点でバックアップジョブの状況を確認したところ・・・「作成済み」のステータスとなっていました!
※ 厳密にいうと、「作成済み」のステータスでバックアップジョブが表示されたのは 14:18 頃だったので設定時間から3分ほど経過して表示されました (14:15 を過ぎてもバックアップジョブが画面に表示されなかったので少し焦りました・・)
このステータスはバックアップジョブ自体が作成されたという状態を示していると思われます。



「作成済み」のステータスから10分ほど経過し・・・ようやくステータスが「実行中」に変化しました。



そして、「実行中」のステータスからさらに20分ほど経過し・・・ついにステータスが「完了」となり、メッセージカテゴリが「成功」となりました!



指定した保存先のバックアップボールトにも、復旧ポイントとしてバックアップが作成されていることを確認できました。


これにて、AWS Backup を使用したバックアップの取得は正常に完了することができました!


AWS Backup に関する補足

上述した基本的な設定方法以外にも、AWS Backup について確認できた内容を補足として記載してみたいと思います。

① EC2 のインスタンス状態
上述した検証では、EC2 のインスタンス状態は「停止済み」で行いました。
すなわち、EC2 が停止していても AWS Backup は問題なく動作することを確認できました。
もちろん、EC2 のインスタンス状態が「実行中」でも動作することは確認できています。



② 「すべてのリソースタイプを含める」について
リソースの割り当ての項目で少し触れました「すべてのリソースタイプを含める」について記載します。
「すべての~」となると、やはり選択することを躊躇しがちです・・・。
今回は検証できませんでしたが、以下の AWS 公開ドキュメントを確認するかぎり、やはりすべてのリソースタイプがバックアップされるようです。
ステップ 2: バックアッププランにリソースを割り当てる - AWS Backup

このバックアッププランでは、 AWS Backup を使用して保護するためにオプトインしたすべてのリソースタイプが保護されるようになりました。

備考
「オプトイン (opt in)」とは“参加する”とか“加入する”という意味で、「すべてのリソースタイプを含める」では AWS Backup 対象に「オプトイン」しているサービスがバックアップの対象となります。
AWS Backup における対象サービスのオプトインは、ナビゲーションバーの「設定」から有効 / 無効にて設定できます。


ただし、「すべてのリソースタイプを含める」ではタグを使用することでバックアップ対象のリソースを絞り込めるので・・・
・「すべてのリソースタイプを含める」は、タグベースでリソースを絞り込み
・「特定のリソースタイプを含める」は、特定のリソースタイプやインスタンス ID でリソースを絞り込み
所感として、このような使い分けをしてリソースの割り当てを柔軟に設計するものと思いました。

※ 以下の画像でいうと、タグのキーと値が同じタグが付与されているリソースを対象としてバックアップされます。


加えて、「特定のリソースタイプを含める」にて特定のリソースタイプやインスタンス ID を設定する場合、(一部サービスを除いて) オプトインが無効であってもバックアップは動作することを検証で確認しました。
また、その内容について AWS 公開ドキュメントにも記載がありましたので載せておきます。
開始方法 1: サービスオプトイン - AWS Backup

リソース タイプがバックアップ プランに明示的に割り当てられている場合、その特定のサービスに対してオプトインが有効になっていない場合でも、そのリソース タイプはバックアップに含まれます。これは、Aurora、Neptune、Amazon DocumentDB には適用されません。これらのサービスを含めるには、オプトインを有効にする必要があります。


③ バックアップの頻度
バックアップの頻度にも触れてみたいと思います。
「バックアップ頻度」としては1時間ごと、12 時間ごと、毎日、毎週、毎月の頻度で選択できます。
また、cron 式を用いて詳細な日時や曜日を設定できますが、AWS Backup ではバックアップジョブの頻度を60分未満で設定することはできません。
※ 以下の画像のように、15分頻度の cron 式でバックアップルールを作成しようとしたところエラーとなりました。



④ バックアップの保持期間
次に、バックアップの保持期間に触れてみたいと思います。
AWS Backup のバックアップルールで設定できるバックアップの保持期間については2種類あります。

・通常のバックアップ保持期間
特段名称があるわけではないですが・・・通常のバックアップ保持期間があります。
最短で1日、最長で永続を設定できるため、AWS Backup における通常バックアップ保持期間の世代制限はありません。



・ポイントインタイムリカバリの保持期間
もう1つは、ポイントインタイムリカバリ (PITR) を有効にする場合です。
一部限定されたサービスのみですが、ポイントインタイムリカバリを利用してバックアップを取得することにより1秒単位で特定の時刻を指定して復元することができます。
ポイントインタイムリカバリの保持期間は、最短で1日、最長で35日を設定することができます。


上記の画像のとおり、ポイントインタイムリカバリを利用できるサービスは以下に限られていますので、注意してください!
・Aurora
・Amazon RDS
・Amazon S3
・SAP HANA on Amazon EC2

実際にポイントインタイムリカバリを有効にして Amazon S3 をバックアップしてみたところ、以下のように秒単位で指定して復元することが可能となります。



⑤ AWS Backup の対象サービス
先ほど上述しましたオプトインの対象となるサービス、すなわち AWS Backup の対象サービスを改めて記載しておきたいと思います!

・Amazon Aurora
・Amazon DocumentDB
・Amazon DynamoDB
・Amazon Elastic Block Store (Amazon EBS)
・Amazon Elastic Compute Cloud (Amazon EC2)
・Amazon Elastic File System (Amazon EFS)
・Amazon FSx
・Amazon Neptune
・Amazon Redshift
・Amazon Relational Database Service (Amazon RDS)
・Amazon Simple Storage Service (Amazon S3)
・Amazon Timestream
・AWS CloudFormation
・AWS Storage Gateway
・SAP HANA on Amazon EC2
・VMware CloudTAK on AWS
・VMware CloudTAK on AWS Outposts

Amazon S3 はバージョニングを有効にする、SAP HANA はいくつかの前提条件がある等、サービスによっては AWS Backup を利用するための条件があるので、オプトインのコンソール画面や AWS 公式ドキュメント等から対象サービスの条件を確認するのがよいと思います!

また、すべての対象サービスで利用できる AWS Backup の機能、一方、対象サービスやリージョンによっては利用できる機能 / 利用できない機能があります。
詳細については AWS 公式ドキュメントからぜひ確認してみてください!
すべてのサポートされているリソースで使用できる機能 - AWS Backup
リソース別の機能の可用性 - AWS Backup


⑥ AWS Backup の料金
最後に、AWS Backup の料金についても少しだけ触れたいと思います。
AWS Backup を利用するにあたっての初期費用は発生せず、以下3つの利用状況に対して月単位で従量課金されます。

・バックアップストレージ量
・バックアップから復元したバックアップデータ量
・別リージョン (クロスリージョン) へのバックアップ転送量

各サービスの料金については、以下のリンクから確認することができます。
AWS Backup の料金 | 一元化されたクラウドバックアップ | Amazon Web Services

備考
今回の検証では AWS Backup を利用して EC2 のバックアップを取得しましたが、上記の料金一覧には EC2 の項目はありません。
確認してみたところ、EC2 をバックアップした際に作成される復旧ポイントは、同じくバックアップした際に作成される対象 EC2 の Amazon Machine Images (AMI) をもとに復元されます。 その AMI に紐づいた EBS ボリュームスナップショットも同様に、EC2 をバックアップした際に作成されます。
すなわち、AWS Backup を 利用して EC2 のバックアップを取得する際は、EBS ボリュームスナップショットとして課金されることを確認できました。

 ■ 復旧ポイント


 ■ AMI


 ■ EBS ボリュームスナップショット



おわりに

今回は AWS Backup の基本設定方法を実際に検証し、その過程で確認できたことをまとめてみました!
実際に検証をしていくと思っていなかった疑問や確認が出てくるので、これからもできるだけ検証を交えたブログを作成していければと思いました!
今回もご拝読いただき、ありがとうございました!


お知らせ

APCはAWS Advanced Tier Services(アドバンストティアサービスパートナー)認定を受けております。


その中で私達クラウド事業部はAWSなどのクラウド技術を活用したSI/SESのご支援をしております。
www.ap-com.co.jp

https://www.ap-com.co.jp/service/utilize-aws/

また、一緒に働いていただける仲間も募集中です!
今年もまだまだ組織規模拡大中なので、ご興味持っていただけましたらぜひお声がけください。

www.ap-com.co.jp