リクエストをおこなった全てのインスタンスが起動するか、リクエストの期限が切れるか、リクエストをキャンセルするかのいずれかが確認されて時点でリクエストが完了するという方法です。
持続スポットインスタンスリクエスト
おこなったリクエストの期限が切れるかもしくは、キャンセルをおこなうまでリクエストの完了または終了はしません。
また、Amazon EC2 での最高入札価格が、リクエストをおこなった際の入札価格を超える場合はインスタンスを起動し、下回る場合はインスタンスを停止します。
ワンタイムリクエストでも持続リクエストでも、スポット価格を下回るか、終了するか、自動的に終了しない限りインスタンスは続行します。
また、最大価格がスポット価格とまったく同じである場合、インスタンスは続行する場合としない場合があるのでご注意ください。
さて、いよいよ下記、スポットインスタンスリクエストの作成です!
なお手順は、先ほどのスポット価格履歴の表示手順2までは同様の手順になります。
また、リクエストできる最大スポットインスタンス数は、最大100となっています。
それ以上のスポットインスタンスをリクエストする場合は、同じく以下のAmazon EC2インスタンス申請フォームから申請をおこなえば制限数を増やすことができます。
・Amazon EC2インスタンス申請フォームは こちら
スポットインスタンスリクエストの作成
1.画面上部にある「Request Spot Instances」をクリックします。
2.今回は試験として、Amazon Linuxでスポットインスタンスのリクエストをおこないますが、選択内容は自由なので任意で選択をしてください。まずは通常のインスタンスの立ち上げ同様にOSを選択します。
- 任意で仕様に合わせて項目を選択し、「Continue」をクリックします。
以下は項目の説明です。
| Max Price | 1時間ごとの、支払うことができる最高入札額 |
|---|---|
| Launch Group | 一連のリクエストをまとめるグループのためのレベル 設定をするとグループ単位で起動・終了できる |
| Request Valid From | リクエストの有効期間のはじまり |
| Request Valid Until | リクエストの有効期間の終わり |
| Persistent Request? | リクエストがワンタイムか接続かを決定 デフォルトではワンタイムリクエスト |
これより先の手順はAmazon EC2インスタンス立ちあげ手順と同じになります。
※Amazon EC2インスタンス立ちあげのレシピはこちら
1. 作成したスポットインスタンスのStateが「open」から「active」になったら完了!
・・・ですが、
中には、リクエストしたスポットインスタンスを設定したものの、やっぱりキャンセルしたい・・・!
という方もいらっしゃると思うのでキャンセルのやり方についても、念のため記述しておきます。
なお、スポットインスタンスはSTOPをすることができませんので不必要になったらキャンセルしてインスタンスを削除するしかありません。
スポットインスタンスのキャンセル方法
手順2までは、先ほどのスポットインスタンスリクエスト作成と同じです。
- リクエストをおこなっていれば、以下のようにスポットインスタンスリクエストの一覧が表示されているはずです。削除をおこないたいスポットインスタンスを選択して、画面上部の「Cancel」をクリックします。
- 「Yes, cancel request」をクリックしてスポットインスタンスのリクエストをキャンセルします。
- そうすると、スポットインスタンスのStateが「cancelled」、Statusが「request-canceled-and-instance-running」になります。
- リクエストはキャンセルされたけどインスタンスは起動しているということなので、インスタンス画面から対象インスタンスを左クリックして「terminated」をクリックします。
- 「Yes, Terminate」をクリックします。
- そうするとスポットリクエストのStatsが「instance-terminated-by-user」となり、スポットインスタンスがキャンセルされます。
これで、スポットインスタンスのキャンセルをおこなうことも可能です。
いかがでしたでしょうか?
注意事項もありますが、スポットインスタンスを有効活用すれば、AWSを使ってより効率よく、そして低コストでシステムを運用する
ことが可能になりますので皆さんも是非、スポットインスタンスを使ってみましょう!
次回は以前のレシピに引き続き、「 Amazon EC2編~SnapshotやAMIを使ったバックアップと運用パート②~ 」と題してお話していきたいと思いますので、お楽しみに!