AWS EC2 Instance Retrieve Version 1

The describe_instances function is the base AWS::EC2 gem call we are using for this handler and returns a multi-level hash/array nest with a top level hash key of "reservationsSet".

The reservationSet has the following pseudo-xml form. Elements with the tag are array members and are referenced by numerical index.

All others are hash members and are references by element/key name.

, , , , , , , , , , ", , , , , , ", , , , ,

To retrieve the imageId, for example, simply flatten the above structure by removing inapplicable items

,

Treat items as arrays and all other members as hash keys. Doing so, we can reference imageId value in the following manner:

@baseawsobject.reservationSet.item[index].instancesSet.item[index].imageId

In this handler, we are returning just the more interesting properties for an instance. Future versions may incorporate additional properties.

Parameters

Name Description
Instance ID The instance id of the EC2 virtual machine that this handler will retrieve details about.

Sample Configuration

Name Description
Instance ID <%= @answers['Instance ID'] %>

Results

Name Description
Virtualization Type The type of virtual machine for the instance. Valid values are "hvm" or "paravirtual".
IP Address The public IP address for the instance.
Kernel ID The operating system associated with the instance's base image
AMI Launcher Index The order in which the instance was launched within a launch group
Private IP Address The internal NAT'ed IP address
Key Name If the instance was launched with a key pair this is the name of the key
Launch Time The timestamp of the last launch of the instance in the format: yyyy-mm-dd hh:mm tz
Instance Type The architecture size of the instance
Image ID The ID of the base AMI for the instance
Private DNS Name Internal hostname of the instance
Root Device Name The internal storage path for the root device, for example "/dev/sda1"
Root Device Type The type of root device. Valid values are: "ebs" - persistent storage, "instance-store" - storage allocated for just the duration of the running instance.
Architecture CPU type for the instance. Valid values are: "i386" or "x86_64"
Monitoring State Describes whether CloudWatch monitoring is attached to the instance. Valid values are: "enabled" or "disabled"
Availability Zone Physical zone associated with the instance. Used to isolate instances for HA.
DNS Name Public hostname for the instance.
Instance State The state of the EC2 instance.

Changelog

AWS EC2 Instance Retrieve V1.1 (2017-08-24)

  • Update the EC2 gem to AWS SDK 2.2.34.

  • Change Info Values to be more consistent with the other AWS handlers.

  • Internal tweaks to make execution similar to other AWS handlers.

AWS EC2 Instance Retrieve V1 (2011-03-03)

  • Initial version. See README for details.


Related Handlers

AWS EC2 Attach Internet Gateway
Attaches an Internet gateway to a VPC, enabling connectivity between the Internet and the VPC.
AWS EC2 Create Internet Gateway
Creates an internet gateway
AWS EC2 Create Key Pair
Creates a 2048-bit RSA key pair with the specified name.
AWS EC2 Create Route Table
Creates a route table for the specified VPC.
AWS EC2 Create Security Group
This handler is used to create a security group in AWS.
AWS EC2 Create Tag
Creates a single tag against a single resource.
AWS EC2 Delete Internet Gateway
Deletes a VPC
AWS EC2 Delete Network Interface
Deletes the specified network interface. You must detach the network interface before you can delete it.
AWS EC2 Delete Route
Deletes the specified route from the specified route table.
AWS EC2 Delete Security Group
Deletes a security group.
AWS EC2 Delete Tag
Deletes a single tag against a single resource.
AWS EC2 Describe Availability Zone
Returns a single availability zone's Name, State, and Region.
AWS EC2 Describe Images
Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions.
AWS EC2 Disassociate Route Table
Disassociates a subnet from a route table.
AWS EC2 Image Retrieve
Retrieves the properties of the image supplied
AWS EC2 Instance Retrieve Status
Retrieves the status of a particular EC2 instance.
AWS EC2 Instance Start
This handler sends a start request to an AWS EC2 machine instance
AWS EC2 Instance Stop
This handler sends a stop request to an AWS EC2 machine instance
AWS EC2 Modify Instance Attribute
Modifies the specified attribute of the specified instance. You can specify only one attribute at a time.
AWS EC2 Revoke Security Group Ingress
Removes one or more ingress rules from a security group.
AWS EC2 Run Instances
Launches the specified number of instances using an AMI for which you have permissions.