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
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.
Name | Description | Sample |
---|---|---|
access_key | AWS Access Key. | |
secret_key | AWS Secret Key. | ********* |
region | AWS Region that the EC2 object is located in. | |
enable_debug_logging | Enable debug logging if the value is set to 'Yes'. | No |
Name | Description | Sample |
---|---|---|
Instance ID | The instance id of the EC2 virtual machine that this handler will retrieve details about. | <%= @answers['Instance ID'] %> |
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. |
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.