awsの容量監視に有用なebsの概要と特徴


awsを導入してからの運用方法について悩んだときに、容量のコントロールにまず注目すると良いということを知っているでしょうか。ebsは容量監視をする上で有用なサービスとしても知られています。この記事ではそもそもebsとはどのようなサービスなのかという点から始めて、実際にどのような形で運用ができるのかを端的に紹介します。

関連:awsの監視にzabbixを利用するときにはテンプレートを活用すべきか

awsの運用では容量監視が重要

awsの運用をするときには、業務のパフォーマンスを向上させられるような環境を作り上げることが重要なのは認識していることが多いでしょう。そのために監視をしてリソースの最適化を行っていくと同時に、障害の発生時の対応を迅速に実施できるようにするのが一般的です。

ただ、パフォーマンスを向上させるだけならリソースを大きくすれば良いという考え方もあります。一般的な自社サーバーの場合には、初期投資を大きくして大容量で大きなCPUやメモリなどを持つサーバーを作れば問題ありません。

リソースが大きいと運用も大変になるのは確かですが、パフォーマンス自体は最大化しやすくなります。しかし、awsのクラウドサーバーを使用する場合にはリソースの量に応じた料金が発生する仕組みになっています。そのため、コストパフォーマンスを上げるためには最小量のリソースを最適化された状態で使用する状況を続けることが肝心です。

その中でもはっきりと料金に響くことがわかるのが容量で、使用している容量が大きいほど料金が高くなり、その容量に見合った大量のデータを動かしているとさらに料金を請求されることになります。awsでは割り当てられる領域の大きさに可変性があるため、ユーザーが大量の容量を使用したことによって突然莫大な料金が発生する可能性もあります。

そのため、容量監視をして無駄なコストがかからないようにするのが重要なのです。

ebsとは何か

ebsはAmazonが提供するブロックストレージサービスで、Amazon Elastic Block Storeの略称となっています。ebsはawsで良く使用されているEC2と一緒に使用するのが基本になっているブロックストレージで、四つのボリュームタイプが用意されています。

その種類の選び方によって料金もパフォーマンスも異なっていることから、目的に応じて適切なボリュームタイプを選ぶことで高いコストパフォーマンスを発揮させることが可能です。EC2と大きく異なるのは、基本的にはSSDかHDDとして使用するもので、主にebsはEC2を使用しているときのストレージ領域として利用されています。

ebsのボリュームタイプはSSD系のものが二つ、HDD系のものが二つあります。SSD系のボリュームは汎用SSDとプロビジョンドIOPS SSDの二種類です。HDD系のものはCold HDDとスループット最適化HDDです。

どちらの場合にも後者がハイスペックになっているのが特徴でIOPSやスループットが高くなっています。例えば汎用SSDではボリュームあたりの最大IOPSが16000、スループットが250MB/sなのに対して、プロビジョンドIOPS SSDの場合にはそれぞれ64000、1000MB/sです。

この分だけ費用も高くなっていますが、ビッグデータの処理をするときや負荷の大きなデータベースの処理をするときには後者を選ぶことで高いパフォーマンスが維持されます。

ebsの料金体系

ebsは標準でストレージ30GB、I/O 200万回が無料使用できるようになっていますが、実際にEC2と併用するときには別枠で申し込むことが必要になるのが通例です。ebsボリュームの料金は基本的には1GBあたりで定義されています。

汎用SSDでは0.142ドル、プロビジョンドIOPS SSDでは0.12ドル、Cold HDDでは0.03ドル、スループット最適化HDDでは0.054ドルです。ただし、汎用SSDについてはIOPSあたりの料金も定められていて、0.074ドルを負担することになります。

また、これとは別にスナップショット機能があり、ある瞬間のデータを全てまとめてバックアップすることもebsを使えば可能です。このスナップショット機能は1GBあたり0.05ドルで、基本料金に1GB分の容量が付帯しています。

ebs導入後の運用と監視

ebsを導入することで業務に使用しているEC2とは別にストレージ領域を確保できるようになります。awsの運用をする上で役に立つのは、EC2の領域とは独立したストレージが手に入るのでバックアップを取るときにはこのブロックストレージを使用すれば良いというのが明らかになる点です。

しかし、監視についてはどのようなメリットがあるのかというのが疑問になる人もいるでしょう。EC2の中に全てのデータが格納されていると監視しなければならない容量が大きくなり、時間も手間もデータ量も大きくなってしまいがちです。

しかし、頻繁にアクセスしないデータやバックアップをebsに分離することにより監視の効率が向上します。特に容量監視についてはそれぞれのインスタンスについてどのくらいの容量が常に使われているのかを解析しやすくなり、無駄な使用をしていないかどうかを判断するのが容易です。

ebsの活用によってコストパフォーマンスを上げるためには容量の使い方を分析する必要があるため、余計な情報を取り除いた状態でメトリクスを取得できるEC2とebsの併用環境にすることで効率が上がります。解析ミスのリスクも低くなることから理想的な運用環境が整うでしょう。

監視はボリュームを見るのが基本

ebsを導入してからはebs上の領域についても監視をする必要があるのは確かです。ebsの監視では基本的にはボリュームステータスを確認するだけで済みます。ボリューム上で何か障害があると自動的にイベントが記録されて、関連付けされているEC2からの情報転送がストップされる仕組みになっています。

それを確認したらボリュームを操作して状態を改善し、元通りに情報転送を行えるようにするというだけで通常は大きな問題がありません。運用上は頻発する障害への防止策を講じる必要がありますが、イベントの記録が十分に集まれば統計的に処理して対処のためのプログラムを作ることが可能です。

このようにして自動的に対応できるようにすることで障害発生リスクが大幅に低減していきます。

ebsを使ってawsの運用を最適化しよう

ebsを使用することでEC2を使用している際のコストパフォーマンスを上げることができ、監視の効率を上げやすい運用体制を整えることができます。ebsは端的にはEC2の外部ストレージになるもので、データの保管やバックアップに特化して使うことによりEC2の領域をスリム化可能です。

容量監視の負担を軽減し、的確な対応をできるようにするためにebsを活用しましょう。