AWS EC2予約IDとは何ですか?それは何を表していますか?


13

EC2ボリュームのスナップショットを作成するスクリプトを作成しました。スクリプトは、実行中のインスタンス、それらのインスタンスに接続されているボリュームを確認し、残りを無視してそれらのボリュームのスナップショットを作成します。

を使用してdescribe-instances、インスタンスIDではなく予約IDを取得します。これは紛らわしいですが、現状のままです。インスタンスが開始されると、そのインスタンスの予約が作成されます。

私はまだ予約の概念について混乱しています。

サイドノート:予約済みのインスタンスが何であるかは知っていますが、これはここで説明しているものとは異なります。「予約済みインスタンス」とは、1年または2年または3年インスタンスをレンタルすることを意味し、そのために値下げされます。そのため、t2.mediumを1年間予約し、使用しない場合でも支払いますが、使用する場合は通常よりも安くなります。

「予約ID」に戻ります。AWS FAQには次のように書かれています:

EC2によって起動されたすべてのインスタンスには予約IDがあります。予約IDは、インスタンス起動リクエストと1対1の関係にありますが、同じ起動リクエストを使用して複数のインスタンスを起動する場合、複数のインスタンスに関連付けることができます。

次に、このSEの質問があります:Amazon EC2の「予約」の目的は何ですか

予約IDが正確に何を表しているのかはまだ明確ではありません

一度に1つのインスタンスを起動する場合、各インスタンスには固有の予約IDがあります。

  • 1つの予約IDを複数のインスタンスにいつまたはどのようにリンクできますか?
  • 関係のない複数のインスタンスにリンクできますか?Webサーバーとデータベースサーバーがあるとします。1つの予約IDで開始できますか?
  • または、負荷分散などの目的で、予約IDを複数回起動される1つのインスタンスにのみリンクできます。

私たちの状況では、すべてのインスタンスに一意の予約IDがありますが、を使用して実行しているスクリプトの場合、これがどのような状況で変わる可能性があるかを知りたいですdescribe-instances

回答:


15

ResearvationIdリザーブドインスタンスとは何の関係もありません。これは、EC2インスタンスを起動するリクエストを示す一意の値です。起動リクエストは、cli、AutoScaling、またはAWSマネジメントコンソールから送信されます。

への各リクエストaws ec2 run-instancesは、インスタンスのゼロ以上の予約を返します。通常、成功すれば1つになりますが、ドキュメントでは「ゼロ以上」(1)と書かれているため、1つの起動要求が複数の予約に分割される場合があります。

通常、一度に起動されるインスタンスは同じを取得しますReservationIdが、それは厳格なルールではない場合があります。ただし、2つの異なる時間に2つのインスタンスを起動すると、おそらく異なるReservationId値が得られます。

たとえば、aws ec2 run-instancesコマンドの一部として、同時に起動するインスタンスの最小数と最大数を指定できます。多くの場合、これはmin = max = 1になりますが、1 <= min <= maxである限り、より多くの場合、異なる場合があります。AWSマネジメントコンソールから新しいインスタンスを起動するときに実行するインスタンスの数を指定することもできます。これは、「ステップ3:インスタンスの詳細を設定する」ページで確認できます。

を実行するaws ec2 describe-instancesと、結果ReservationIdは起動方法に基づいて値でグループ化されます。

一般に、インスタンスのReservationIdどの時点AmiLaunchIndexで予約がインスタンス内のインスタンスと異なるか(0、1、2など)が同時に起動されたかどうかを知りたい場合を除き、値について心配する必要はありません。 )。

参照:


3

トランザクションIDとして予約IDを検討してください。たとえば、一度に5枚のチケットを購入した場合。1つのトランザクションIDがありますが、5つの予約IDがあります。

同様に、aws ec2 run-instancesを使用して一度に1つのインスタンスを起動する場合、1つの予約IDと1つのインスタンスIDがあります。

ただし、aws ec2 run-instancesを使用して一度に10個のインスタンスを起動する場合、1つの予約IDと10個のインスタンスIDがあります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.