今回はAmazon Web Services(AWS)における仮想サーバーのサービスであるAmazon EC2と、EC2インスタンスで使用可能なストレージであるEBS(Elastic Block Store)のつまずきポイントについて解説する。

 EC2の仮想サーバーは専用のWebコンソール(Management Console)やコマンドラインツール、APIなどを利用して瞬時に起動できる。また、前回少し説明したアベイラビリティーゾーン(AZ)にまたがるように配置することも可能で、負荷が高くなった場合にスケールアップ/スケールアウトしたり、負荷が落ち着いた場合にスケールダウン/スケールインしたりすることが簡単にできる。OSはWindows、Linuxなどユーザーが使い慣れたものを自由に選択可能である。

 EBSはEC2インスタンスで使用するブロックレベルのストレージボリュームだ。こちらもEC2と同様にWebコンソールから簡単に作成ができるようになっており、バックアップも数クリックで作成できる。このように、一見簡単に利用できそうなEC2とEBSだが、初心者にはいくつかのつまずきポイントがある。順に解説したいと思う。

つまずきポイント1:誤ってインスタンスを完全消去してしまう

 必要な時に、必要な分だけのリソースを瞬時に確保することはクラウドの大きな魅力だ。EC2もそれに当てはまる。サーバーリソースを確保するときはもちろん、必要になったときに手放して課金を停止することができる。

 とても便利なのではあるが、この「簡単に削除できる」ことが逆に落とし穴になることもある。Management ConsoleからEC2インスタンスを操作していると、Stop状態にするつもりが誤ってTerminateし、データを失ってしまう可能性があるのである。

 Stop状態とはEC2インスタンスを一時停止した状態で、データはそのまま残る。これに対してTerminateとは、データも含めて完全に削除することだ。

 一度Terminateするとそのインスタンスで保持していたデータは2度と復旧できない。単純であるものの、AWSを利用し始めた直後によく起こるミスだ。

 このような事態を避けるためには、EBSのスナップショットやOSイメージのAMI※1などの形式でバックアップすることが必要だ。これらの形式でバックアップしていれば、状態を復元することができる。

※1 AMI(Amazon Machine Image)はEC2を起動するうえでテンプレートとなるOSイメージ。AWSで公式に提供されているものや、各ベンダーやコミュニティが公開しているもの、それ以外の有志が公開しているものなどがある。ユーザーがカスタマイズして自分専用のAMIを作成することも可能だ。

 また、定期的なバックアップ以外にTerminate Protectionという機能を有効にする方法もある。Terminate Protectionは誤ってTerminateを実行しようとしても、できないようにする設定だ。起動時や起動後に、EC2インスタンスに対して有効にすることができる。

 このほか、IAM※2という権限管理のサービスを使う手もある。必要なユーザーにのみTerminateの権限を付与することで、誤ったTerminateを防ぐのである。

※2 IAMはAWSの各サービスやリソースへのアクセスを管理するためのサービス。操作権限を限定するユーザーやグループを作成することが可能。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。