Amazon EC2編~スポットインスタンスを使ってみよう!~

リクエストをおこなった全てのインスタンスが起動するか、リクエストの期限が切れるか、リクエストをキャンセルするかのいずれかが確認されて時点でリクエストが完了するという方法です。

持続スポットインスタンスリクエスト

おこなったリクエストの期限が切れるかもしくは、キャンセルをおこなうまでリクエストの完了または終了はしません。

また、Amazon EC2 での最高入札価格が、リクエストをおこなった際の入札価格を超える場合はインスタンスを起動し、下回る場合はインスタンスを停止します。

ワンタイムリクエストでも持続リクエストでも、スポット価格を下回るか、終了するか、自動的に終了しない限りインスタンスは続行します。

また、最大価格がスポット価格とまったく同じである場合、インスタンスは続行する場合としない場合があるのでご注意ください。

さて、いよいよ下記、スポットインスタンスリクエストの作成です!

なお手順は、先ほどのスポット価格履歴の表示手順2までは同様の手順になります。

また、リクエストできる最大スポットインスタンス数は、最大100となっています。

それ以上のスポットインスタンスをリクエストする場合は、同じく以下のAmazon EC2インスタンス申請フォームから申請をおこなえば制限数を増やすことができます。

・Amazon EC2インスタンス申請フォームは こちら

スポットインスタンスリクエストの作成

1.画面上部にある「Request Spot Instances」をクリックします。

20130716_01_05

2.今回は試験として、Amazon Linuxでスポットインスタンスのリクエストをおこないますが、選択内容は自由なので任意で選択をしてください。まずは通常のインスタンスの立ち上げ同様にOSを選択します。

20130716_01_06
  1. 任意で仕様に合わせて項目を選択し、「Continue」をクリックします。
20130716_01_07

以下は項目の説明です。

Max Price 1時間ごとの、支払うことができる最高入札額
Launch Group 一連のリクエストをまとめるグループのためのレベル
設定をするとグループ単位で起動・終了できる
Request Valid From リクエストの有効期間のはじまり
Request Valid Until リクエストの有効期間の終わり
Persistent Request? リクエストがワンタイムか接続かを決定
デフォルトではワンタイムリクエスト

これより先の手順はAmazon EC2インスタンス立ちあげ手順と同じになります。

※Amazon EC2インスタンス立ちあげのレシピはこちら

1. 作成したスポットインスタンスのStateが「open」から「active」になったら完了!

20130716_01_08

・・・ですが、

中には、リクエストしたスポットインスタンスを設定したものの、やっぱりキャンセルしたい・・・!

という方もいらっしゃると思うのでキャンセルのやり方についても、念のため記述しておきます。

なお、スポットインスタンスはSTOPをすることができませんので不必要になったらキャンセルしてインスタンスを削除するしかありません。

スポットインスタンスのキャンセル方法

手順2までは、先ほどのスポットインスタンスリクエスト作成と同じです。

  1. リクエストをおこなっていれば、以下のようにスポットインスタンスリクエストの一覧が表示されているはずです。削除をおこないたいスポットインスタンスを選択して、画面上部の「Cancel」をクリックします。
20130716_01_09
  1. 「Yes, cancel request」をクリックしてスポットインスタンスのリクエストをキャンセルします。
20130716_01_10
  1. そうすると、スポットインスタンスのStateが「cancelled」、Statusが「request-canceled-and-instance-running」になります。
20130716_010_11
  1. リクエストはキャンセルされたけどインスタンスは起動しているということなので、インスタンス画面から対象インスタンスを左クリックして「terminated」をクリックします。
20130716_01_13
  1. 「Yes, Terminate」をクリックします。
20130716_01_14
  1. そうするとスポットリクエストのStatsが「instance-terminated-by-user」となり、スポットインスタンスがキャンセルされます。
20130716_01_15

これで、スポットインスタンスのキャンセルをおこなうことも可能です。

いかがでしたでしょうか?

注意事項もありますが、スポットインスタンスを有効活用すれば、AWSを使ってより効率よく、そして低コストでシステムを運用する

ことが可能になりますので皆さんも是非、スポットインスタンスを使ってみましょう!

次回は以前のレシピに引き続き、「 Amazon EC2編~SnapshotやAMIを使ったバックアップと運用パート②~ 」と題してお話していきたいと思いますので、お楽しみに!

【12月4日(金)15:00~】【AWS AI/MLオンラインセミナー】ABEJA様/ブレインズテクノロジー様/dotData Japan様との共同登壇!視聴無料!まだ申し込み可能です。

[申し込みはこちら](https://www.knowledgecommunication.jp/news/219.html)

この記事を書いた人

aws-recipe-user