AWS Elastic Block Store(EBS)

今日はAWSのストレージサービスの一つであるEBSについてまとめたいと思います。

EBSはEC2インスタンスにアタッチして用いるストレージサービスです。実際にEBSから起動するストレージはボリュームと呼ばれ、ボリュームを作成してからEC2インスタンスにアタッチすることで利用可能です。ボリュームのタイプにはI/Oに優れたものや、読み込み速度が早いものなどタイプによって向いている機能がそれぞれ存在します。

f:id:zenkikkkk:20210711132103p:plain

個人アプリなどではデフォルトの汎用SSDを選択すれば問題なく利用できると思いますが、高速で読み書きが行われるものであればプロビジョンIOPSSSDなどを用います。ちなみに通常のEC2インスタンスにプロビジョンIOPSSSDをアタッチした場合、EC2インスタンスとEBSの通信速度がボトルネックになり想定した速度でのパフォーマンスが発揮できない事態が起こりうるので、EC2インスタンスのタイプもEBSに応じて変える必要があります。また、EBSを複数のEC2インスタンスにアタッチすることはできません。共有ストレージのようなサービスが必要であればEFSやFsXなどのサービスの利用を検討する必要があります。

バックアップはスナップショットを取得して、そのデータがS3に保存される形になります。基本的にEBSはEC2にアタッチされて使用されるのでEBSのバックアップが取られているということはEC2もまとめてバックアップされているといった形になります。復元などの際も、AMIからデータを復元する形になります。

EBSのボリュームはS3のバケットのようにそれ一つで独立しています。つまり、EBSをアタッチしたEC2を停止や削除したとしてもボリュームに保存したデータは残り、そのデータ量に応じた料金がかかります。自分もEC2インスタンスさえ削除しておけば大丈夫と勘違いし、多少料金が発生してしまったことがあるので気をつけたいですね。