読者です 読者をやめる 読者になる 読者になる

プログラマでありたい

おっさんになっても、プログラマでありつづけたい

知っているようで知らない、リザーブドインスタンスの話

aws ec2

 ちょっとリザーブドインスタンスの仕様の確認をしていたので、ついでにまとめてみました。AWSを使ったことがある人であれば、高確率で聞いたことがあると思います。でも、実際に使ったことがある人は、結構少ないのではないでしょうか?。一度使ってみれば、特に難しくもなく簡単ということが解りますので、一読して試していただければと思います。

リザーブドインスタンスのモデル



 そもそもリザーブドインスタンスとは、どういうものなのでしょうか?簡単に言うと、予約金を最初に払うと期間内の時間あたりの料金が安くなるというモデルです。オンデマンドインスタンスに比べ、ある一定以上使うと積算料金が安くなるというのがリザーブドインスタンスです。

 リザーブドインスタンスは、使用率により3つのタイプの買い方があります。期間中にどれくらいの割合で立ちあげておくかで、タイプを考える必要があります。

  年間100%利用した場合 何%利用した場合に得か?
Light
(軽使用)
32% 21%〜74%
Medium
(中使用)
39% 74%〜77%
Heavy
(重使用)
46% 77%〜

 見てください。このMedium(中使用)の適用範囲の狭さをw 一般的には、100%使用する場合(ずっと立ちあげっぱなし)は、重使用という考え方で良いと思います。そして、時間起動で使う場合は、軽使用を購入しましょう。と言っても、そのような使い方は割と高度だと思いますので、重使用のみ考えるでも問題ないと思います。そして一番コスト削減効果が高いのも、重使用となっています。3年リザーブで重使用の場合、インスタンス利用料が65%オフとなります。凄い効果ですよね。

リザーブドインスタンスの使いどころ



 前述したように、常時立ち上げているインスタンスに対して重使用を購入するというのが鉄板となっています。オートスケールの設定をして、常時立ち上げている2台分にリザーブドインスタンスを購入し、高負荷時に立ち上がるインスタンスはオンデマンドインスタンスやスポットインスタンスを指定しておきます。(スポットインスタンスの場合は、注意が必要です。)

 私が知っている範囲では、AWSのEC2の使い方はオンプレミスのサーバ代わりに常時立ち上げているという人が大半を占めています。そういう人であれば、リザーブドインスタンスはいの一番で検討すべき項目です。

リザーブドインスタンスの注意点



 とってもお得なリザーブドインスタンスですが、注意点が2つあります。1つは誰もが注意する必要があることで、もう1つは場合によっては気をつけてくださいという内容です。

  • AZ単位、インスタンスタイプ単位
  • Consolidated Billing(一括決済)時のリザーブドインスタンス


 1つ目の「AZ単位、インスタンスタイプ単位」という点ですが、これはリザーブドインスタンスの購入の単位です。例えば、東京リージョンの1aにスモールインスタンスのリザーブドインスタンスを購入した場合、1aのミディアムインスタンスには割引額が適用されません。また、1cのスモールインスタンスについても適用されません。ということで、インスタンスタイプだけでなくどこのAZで立ち上げるかも重要な選択肢になるということを覚えておいてください。
 2つ目の「Consolidated Billing(一括決済)時のリザーブドインスタンス」についてです。まず一括決済についてですが、これは複数のAWSアカウントをまとめて請求を一括にするという機能です。プロジェクトごとの収支を分割したいが、支払いの手続きは一括でしたいという時に便利です。さて、一括決済時のリザーブドインスタンスに何が問題になるのかという点ですが、例えばアカウントA用にリザーブドインスタンスを買っていて使っていなかったとします。そこにリザーブドインスタンスの対象となるインスタンスがアカウントBにあったとする。そうするとアカウントBのインスタンスに対して、リザーブドインスタンスの割引が適用されます。つまり複数のアカウント間で最適化されるという点です。一般的には、最大限リザーブドインスタンスが活用されるので喜ばしいです。しかし、自社使用ではなく顧客向けアカウントをまとめておいた場合、少々困った事態になるのでご注意ください。

余り知られていないリザーブドインスタンスの特典



 この他にもリザーブドインスタンスには、幾つかの特典があります。1つは、リザーブドインスタンスを購入した時点で、そのキャパシティを確保してくれる点があります。莫大なリソースを誇るAWSといえども、無尽蔵なリソースがあるわけではありません。例えば、利用が少ないインスタンスタイプで、誰かが短期的に100台くらいインスタンスを立ち上げると結構な確率でリソースが枯渇します。枯渇した状態でオンデマンドインスタンスを立ち上げようとすると、"insufficient Capacity Error"というエラーがでます。リザーブドインスタンスだと、その心配がないので安心ということです。
 2つ目は、リザーブドインスタンスの権利は実は売れるということです。買ったものの必要がなくなれば、マーケットプレイスで売れます。しかし、残念ながら米国の口座が必要なので、中々敷居は高いです。

まとめ



 使いこなせば確実にメリットが出るのがリザーブドインスタンスです。しかし、サービスの立ちあげ時から利用しなくても、後からでも適応出来ます。なので、ある程度サービスが安定して利用状況が見えてから購入を検討するのでも充分だと思います。以前紹介したスポットインスタンスと合わせて、是非ご検討ください。


See Also:
ちょっと内緒にしたいスポットインスタンスの話
AWSの複数の請求をまとめる、一括決済(Consolidated Billing)の話


参照:
EC2 リザーブド インスタンス (割引料金で利用可能なインスタンス予約) | アマゾン ウェブ サービス(AWS 日本語)
AWSマイスターシリーズ リザーブドインスタンス&スポットインスタンス


Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

  • 作者: NRIネットコム株式会社,佐々木拓郎,林晋一郎,小西秀和,佐藤瞬
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2015/03/25
  • メディア: Kindle版
  • この商品を含むブログを見る