45

アマゾンec2を探索し始めたところです。そして、私はいくつかの説明を聞きたい、またはアマゾンec2で「予約」が必要な方法と理由の簡単な例かもしれません。私はPythonフレームワークを使用してbotoAmazonサービスを管理しています。そして、これまでのところ、インスタンスを取得するためにこの追加の手順がある理由はわかりません。たとえば、次のようになります。

reservations = ec2.get_all_instances()
instances = [instance for res in reservations for instance in res.instances]

これが私のすべてのインスタンスを取得する方法です。時々、次のようにします。

reservation = ec2.run_instances(image_id, min_count, max_count, key_name .....)
instance = reservation.instances[0]

boto.ec2.instance.Reservationそして、これらのインスタンスを使用してボリュームをアタッチしたり、タグを追加したり、セキュリティグループを追加したりするよりも...アマゾンEC2でこれの)

>>> reservation = reservations[0]
>>> reservation
Reservation:r-74d11509
>>> dir(reservation)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'connection', 'endElement', 'groups', 'id', 'instances', 'item', 'owner_id', 'region', 'startElement', 'stop_all']
>>> reservation.__class__
<class 'boto.ec2.instance.Reservation'>

便利な方法が見つかりませんでした。なぜこれが必要なのか説明してください。そこにいる理由は何ですか?どのような場合にそれを使用しますか?

4

3 に答える 3

40

私の理解では、予約はインスタンスを起動する行為です。基本的に、予約はあなたが行うことであり、インスタンスはあなたが得るものです。1つのイメージから複数のインスタンスを起動する場合は、1run_instances()つの予約を行いますが、複数のインスタンスを取得します。

run_instancesと一緒にReservation.stop_all()使用すると、多数のインスタンスを実行し、それらがタスクを完了するのを待ってから、一度にすべてを停止できます。

于 2013-03-25T15:59:59.637 に答える
10

ボトドキュメントから:

予約は、インスタンスを開始するコマンドに対応します。予約に関連付けられているインスタンスを確認できます。

>>> instances = reservations[0].instances
>>> instances
[Instance:i-00000000]
于 2013-08-31T03:19:02.200 に答える
6

これは、 Ryan ParmanRose Perroneからの興味深いスレッドとコメントです-今年(2015年)後半のre:Inventでの歴史についてミッチに尋ねるかもしれませんが、通常の種類aws ec2 describe-instances(またはboto、sdks、など)すべてのインスタンスが、一般的な意味で「予約」として列挙されていることがわかります。

{
    "Reservations": [
        {
            "OwnerId": "123456789012",
            "ReservationId": "r-9aa12345",
            "Groups": [],
            "Instances": [

そのデータ内にReservationIdr-12345bc8値型がありますが、それは、より低いレートでロックするために支払う予約に対応するものはどこにもありません(請求の便宜、スピンアップする実際の種類のインスタンスではありません)。ですから、これは彼らが最初にシステムを作成したときの興味深い小さな残骸です。すべてのインスタンスは、実行するスロットを「予約」する必要がありました。後になってようやく、彼らは同じ用語を使用した価格設定モデルを思いついた。

しかし、繰り返しになりますが、それは単なる推測です。

ここでは、この単語の2つの意味が明らかに重複しているように見えますが、これらは互いに関連しているようには見えません。

于 2015-05-18T16:43:01.443 に答える