virginia una tipos tipo que instancia ec2 east aws amazon-web-services amazon-ec2

amazon web services - una - ¿Cuál es el propósito de ''Reservas'' en Amazon EC2



tipos de instancia en aws (3)

Estoy empezando a explorar Amazon E2. Y quiero escuchar algunas explicaciones o algunos breves ejemplos de cómo y por qué necesitas ''reservas'' en Amazon E2. Estoy usando el boto python framework para administrar Amazon Service. Y hasta ahora, realmente no veo ningún motivo por el cual tenemos este paso adicional para obtener sus instancias, por ejemplo:

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

Así es como obtengo todas mis instancias, algunas veces lo hago así:

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

Y que utilizo esas instancias para adjuntar volúmenes, agregar etiquetas, agregar grupos de seguridad, etc. ... Pero, ¿cuál es el propósito de boto.ec2.instance.Reservation (No estoy preguntando solo por boto framework, por supuesto su preferido, pero en un sentido completo de esto en Amazon 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''>

No pude encontrar ningún método útil. Por favor, explícame por qué necesitamos esto. ¿Cuál es la razón por la que está allí? ¿En que casos lo usarías?


De los documentos del boto :

Una reserva corresponde a un comando para iniciar instancias. Puede ver qué instancias están asociadas a una reserva:

>>> instances = reservations[0].instances >>> instances [Instance:i-00000000]


Desde mi entendimiento, una reserva es un acto de lanzamiento de instancias. Básicamente, una reserva es lo que haces , mientras que una instancia es lo que obtienes . Si run_instances() varias instancias desde una imagen mediante run_instances() , realiza una reserva, pero obtiene varias instancias.

run_instances junto con Reservation.stop_all() permite ejecutar un conjunto de instancias, esperar a que completen la tarea y luego detenerlas todas a la vez.


Este es un hilo interesante y comentarios de Ryan Parman y . Puedo preguntarle a Mitch sobre la historia en re: Inventar a finales de este año (2015), pero si haces algún tipo normal de aws ec2 describe-instances (o su equivalente de boto, sdks, etc.) verá que todas las instancias se enumeran como "reservas" en algún sentido genérico:

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

Dentro de esa información hay una ReservationId del tipo de valor r-12345bc8 , pero en ninguna parte eso corresponde a las reservas que usted paga para fijar la tasa más baja (una conveniencia de facturación, no un tipo real de instancia que activa). Así que mi corazonada es que este es un pequeño residuo interesante de cuando crearon por primera vez el sistema: cada instancia necesitaba "reservar" una ranura para ejecutar. Solo después se les ocurrió un modelo de precios que usaba el mismo término.

Pero de nuevo, eso es solo una suposición.

Parece que hay claramente una superposición de dos significados de la palabra aquí, que no parecen estar relacionados entre sí.