Class Fog::Compute::AWS::Real
In: lib/fog/compute/requests/aws/describe_snapshots.rb
lib/fog/compute/requests/aws/unmonitor_instances.rb
lib/fog/compute/requests/aws/create_image.rb
lib/fog/compute/requests/aws/disassociate_address.rb
lib/fog/compute/requests/aws/run_instances.rb
lib/fog/compute/requests/aws/create_volume.rb
lib/fog/compute/requests/aws/create_security_group.rb
lib/fog/compute/requests/aws/create_key_pair.rb
lib/fog/compute/requests/aws/associate_address.rb
lib/fog/compute/requests/aws/delete_tags.rb
lib/fog/compute/requests/aws/delete_key_pair.rb
lib/fog/compute/requests/aws/reboot_instances.rb
lib/fog/compute/requests/aws/describe_instances.rb
lib/fog/compute/requests/aws/modify_snapshot_attribute.rb
lib/fog/compute/requests/aws/get_password_data.rb
lib/fog/compute/requests/aws/describe_volumes.rb
lib/fog/compute/requests/aws/monitor_instances.rb
lib/fog/compute/requests/aws/deregister_image.rb
lib/fog/compute/requests/aws/describe_key_pairs.rb
lib/fog/compute/requests/aws/delete_volume.rb
lib/fog/compute/requests/aws/stop_instances.rb
lib/fog/compute/requests/aws/describe_security_groups.rb
lib/fog/compute/requests/aws/attach_volume.rb
lib/fog/compute/requests/aws/import_key_pair.rb
lib/fog/compute/requests/aws/delete_snapshot.rb
lib/fog/compute/requests/aws/create_tags.rb
lib/fog/compute/requests/aws/describe_availability_zones.rb
lib/fog/compute/requests/aws/describe_reserved_instances_offerings.rb
lib/fog/compute/requests/aws/terminate_instances.rb
lib/fog/compute/requests/aws/describe_images.rb
lib/fog/compute/requests/aws/create_snapshot.rb
lib/fog/compute/requests/aws/describe_addresses.rb
lib/fog/compute/requests/aws/modify_image_attributes.rb
lib/fog/compute/requests/aws/revoke_security_group_ingress.rb
lib/fog/compute/requests/aws/release_address.rb
lib/fog/compute/requests/aws/detach_volume.rb
lib/fog/compute/requests/aws/describe_regions.rb
lib/fog/compute/requests/aws/start_instances.rb
lib/fog/compute/requests/aws/allocate_address.rb
lib/fog/compute/requests/aws/register_image.rb
lib/fog/compute/requests/aws/describe_tags.rb
lib/fog/compute/requests/aws/delete_security_group.rb
lib/fog/compute/requests/aws/get_console_output.rb
lib/fog/compute/requests/aws/describe_reserved_instances.rb
lib/fog/compute/requests/aws/authorize_security_group_ingress.rb
lib/fog/compute/aws.rb
Parent: Object

Methods

Public Class methods

Initialize connection to EC2

Notes

options parameter must include values for :aws_access_key_id and :aws_secret_access_key in order to create a connection

Examples

  sdb = SimpleDB.new(
   :aws_access_key_id => your_aws_access_key_id,
   :aws_secret_access_key => your_aws_secret_access_key
  )

Parameters

  • options<~Hash> - config arguments for connection. Defaults to {}.
    • region<~String> - optional region to use, in [‘eu-west-1’, ‘us-east-1’, ‘us-west-1’, ‘ap-northeast-1’, ‘ap-southeast-1’]

Returns

  • EC2 object with connection to aws.

Public Instance methods

Acquire an elastic IP address.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘publicIp’<~String> - The acquired address
      • ‘requestId’<~String> - Id of the request

Amazon API Reference

Associate an elastic IP address with an instance

Parameters

  • instance_id<~String> - Id of instance to associate address with
  • public_ip<~String> - Public ip to assign to instance

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Attach an Amazon EBS volume with a running instance, exposing as specified device

Parameters

  • instance_id<~String> - Id of instance to associate volume with
  • volume_id<~String> - Id of amazon EBS volume to associate with instance
  • device<~String> - Specifies how the device is exposed to the instance (e.g. "/dev/sdh")

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘attachTime’<~Time> - Time of attachment was initiated at
      • ‘device’<~String> - Device as it is exposed to the instance
      • ‘instanceId’<~String> - Id of instance for volume
      • ‘requestId’<~String> - Id of request
      • ‘status’<~String> - Status of volume
      • ‘volumeId’<~String> - Reference to volume

Amazon API Reference

Add permissions to a security group

Parameters

  • group_name<~String> - Name of group
  • options<~Hash>:
    • ‘SourceSecurityGroupName’<~String> - Name of security group to authorize
    • ‘SourceSecurityGroupOwnerId’<~String> - Name of owner to authorize

    or

    • ‘CidrIp’ - CIDR range
    • ‘FromPort’ - Start of port range (or -1 for ICMP wildcard)
    • ‘GroupName’ - Name of group to modify
    • ‘IpProtocol’ - Ip protocol, must be in [‘tcp’, ‘udp’, ‘icmp’]
    • ‘ToPort’ - End of port range (or -1 for ICMP wildcard)

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Create a bootable EBS volume AMI

Parameters

  • instance_id<~String> - Instance used to create image.
  • name<~Name> - Name to give image.
  • description<~Name> - Description of image.
  • no_reboot<~Boolean> - Optional, whether or not to reboot the image when making the snapshot

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘imageId’<~String> - The ID of the created AMI.
      • ‘requestId’<~String> - Id of request.

Amazon API Reference

Create a new key pair

Parameters

  • key_name<~String> - Unique name for key pair.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘keyFingerprint’<~String> - SHA-1 digest of DER encoded private key
      • ‘keyMaterial’<~String> - Unencrypted encoded PEM private key
      • ‘keyName’<~String> - Name of key
      • ‘requestId’<~String> - Id of request

Amazon API Reference

Create a new security group

Parameters

  • group_name<~String> - Name of the security group.
  • group_description<~String> - Description of group.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Create a snapshot of an EBS volume and store it in S3

Parameters

  • volume_id<~String> - Id of EBS volume to snapshot

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘progress’<~String> - The percentage progress of the snapshot
      • ‘requestId’<~String> - id of request
      • ‘snapshotId’<~String> - id of snapshot
      • ‘startTime’<~Time> - timestamp when snapshot was initiated
      • ‘status’<~String> - state of snapshot
      • ‘volumeId’<~String> - id of volume snapshot targets

Amazon API Reference

Adds tags to resources

Parameters

  • resources<~String> - One or more resources to tag
  • tags<~String> - hash of key value tag pairs to assign

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Create an EBS volume

Parameters

  • availability_zone<~String> - availability zone to create volume in
  • size<~Integer> - Size in GiBs for volume. Must be between 1 and 1024.
  • snapshot_id<~String> - Optional, snapshot to create volume from

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘availabilityZone’<~String> - Availability zone for volume
      • ‘createTime’<~Time> - Timestamp for creation
      • ‘size’<~Integer> - Size in GiBs for volume
      • ‘snapshotId’<~String> - Snapshot volume was created from, if any
      • ‘status‘s<~String> - State of volume
      • ‘volumeId’<~String> - Reference to volume

Amazon API Reference

Delete a key pair that you own

Parameters

  • key_name<~String> - Name of the key pair.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Delete a security group that you own

Parameters

  • group_name<~String> - Name of the security group.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Delete a snapshot of an EBS volume that you own

Parameters

  • snapshot_id<~String> - ID of snapshot to delete

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Remove tags from resources

Parameters

  • resources<~String> - One or more resources to remove tags from
  • tags<~String> - hash of key value tag pairs to remove

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Delete an EBS volume

Parameters

  • volume_id<~String> - Id of volume to delete.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

deregister an image

Parameters

  • image_id<~String> - Id of image to deregister

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘return’<~Boolean> - Returns true if deregistration succeeded
      • ‘requestId’<~String> - Id of request

Amazon API Reference

Describe all or specified IP addresses.

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘addressesSet’<~Array>:
        • ‘instanceId’<~String> - instance for ip address
        • ‘publicIp’<~String> - ip address for instance

Amazon API Reference

Describe all or specified availability zones

Params

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘availabilityZoneInfo’<~Array>:
        • ‘regionName’<~String> - Name of region
        • ‘zoneName’<~String> - Name of zone
        • ‘zoneState’<~String> - State of zone

Amazon API Reference

Describe all or specified images.

Params

  • filters<~Hash> - List of filters to limit results with
    • filters and/or the following
    • ‘ExecutableBy’<~String> - Only return images that the executable_by user has explicit permission to launch
    • ‘ImageId’<~Array> - Ids of images to describe
    • ‘Owner’<~String> - Only return images belonging to owner.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘imagesSet’<~Array>:
        • ‘architecture’<~String> - Architecture of the image
        • ‘blockDeviceMapping’<~Array> - An array of mapped block devices
        • ‘description’<~String> - Description of image
        • ‘imageId’<~String> - Id of the image
        • ‘imageLocation’<~String> - Location of the image
        • ‘imageOwnerId’<~String> - Id of the owner of the image
        • ‘imageState’<~String> - State of the image
        • ‘imageType’<~String> - Type of the image
        • ‘isPublic’<~Boolean> - Whether or not the image is public
        • ‘kernelId’<~String> - Kernel id associated with image, if any
        • ‘platform’<~String> - Operating platform of the image
        • ‘productCodes’<~Array> - Product codes for the image
        • ‘ramdiskId’<~String> - Ramdisk id associated with image, if any
        • ‘rootDeviceName’<~String> - Root device name, e.g. /dev/sda1
        • ‘rootDeviceType’<~String> - Root device type, ebs or instance-store
        • ‘virtualizationType’<~String> - Type of virtualization

Amazon API Reference

Describe all or specified instances

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘reservationSet’<~Array>:
        • ‘groupSet’<~Array> - Group names for reservation
        • ‘ownerId’<~String> - AWS Access Key ID of reservation owner
        • ‘reservationId’<~String> - Id of the reservation
        • ‘instancesSet’<~Array>:
          • instance<~Hash>:
            • ‘architecture’<~String> - architecture of image in [i386, x86_64]
            • ‘amiLaunchIndex’<~Integer> - reference to instance in launch group
            • ‘blockDeviceMapping’<~Array>
              • ‘attachTime’<~Time> - time of volume attachment
              • ‘deleteOnTermination’<~Boolean> - whether or not to delete volume on termination
              • ‘deviceName’<~String> - specifies how volume is exposed to instance
              • ‘status’<~String> - status of attached volume
              • ‘volumeId’<~String> - Id of attached volume
            • ‘dnsName’<~String> - public dns name, blank until instance is running
            • ‘imageId’<~String> - image id of ami used to launch instance
            • ‘instanceId’<~String> - id of the instance
            • ‘instanceState’<~Hash>:
              • ‘code’<~Integer> - current status code
              • ‘name’<~String> - current status name
            • ‘instanceType’<~String> - type of instance
            • ‘ipAddress’<~String> - public ip address assigned to instance
            • ‘kernelId’<~String> - id of kernel used to launch instance
            • ‘keyName’<~String> - name of key used launch instances or blank
            • ‘launchTime’<~Time> - time instance was launched
            • ‘monitoring’<~Hash>:
              • ‘state’<~Boolean - state of monitoring
            • ‘placement’<~Hash>:
              • ‘availabilityZone’<~String> - Availability zone of the instance
            • ‘productCodes’<~Array> - Product codes for the instance
            • ‘privateDnsName’<~String> - private dns name, blank until instance is running
            • ‘privateIpAddress’<~String> - private ip address assigned to instance
            • ‘rootDeviceName’<~String> - specifies how the root device is exposed to the instance
            • ‘rootDeviceType’<~String> - root device type used by AMI in [ebs, instance-store]
            • ‘ramdiskId’<~String> - Id of ramdisk used to launch instance
            • ‘reason’<~String> - reason for most recent state transition, or blank

Amazon API Reference

Describe all or specified key pairs

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘keySet’<~Array>:
        • ‘keyName’<~String> - Name of key
        • ‘keyFingerprint’<~String> - Fingerprint of key

Amazon API Reference

Describe all or specified regions

Params

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘regionInfo’<~Array>:
        • ‘regionName’<~String> - Name of region
        • ‘regionEndpoint’<~String> - Service endpoint for region

Amazon API Reference

Describe all or specified reserved instances

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘reservedInstancesSet’<~Array>:
        • ‘availabilityZone’<~String> - availability zone of the instance
        • ‘duration’<~Integer> - duration of reservation, in seconds
        • ‘fixedPrice’<~Float> - purchase price of reserved instance
        • ‘instanceType’<~String> - type of instance
        • ‘instanceCount’<~Integer> - number of reserved instances
        • ‘productDescription’<~String> - reserved instance description
        • ‘reservedInstancesId’<~String> - id of the instance
        • ‘start’<~Time> - start time for reservation
        • ‘state’<~String> - state of reserved instance purchase, in .[pending-payment, active, payment-failed, retired]
        • ‘usagePrice"<~Float> - usage price of reserved instances, per hour

Amazon API Reference

Describe all or specified reserved instances offerings

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘reservedInstancesOfferingsSet’<~Array>:
        • ‘availabilityZone’<~String> - availability zone of offering
        • ‘duration’<~Integer> - duration, in seconds, of offering
        • ‘fixedPrice’<~Float> - purchase price of offering
        • ‘instanceType’<~String> - instance type of offering
        • ‘productDescription’<~String> - description of offering
        • ‘reservedInstancesOfferingId’<~String> - id of offering
        • ‘usagePrice’<~Float> - usage price of offering, per hour

Amazon API Reference

Describe all or specified security groups

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘securityGroupInfo’<~Array>:
        • ‘groupDescription’<~String> - Description of security group
        • ‘groupName’<~String> - Name of security group
        • ‘ipPermissions’<~Array>:
          • ‘fromPort’<~Integer> - Start of port range (or -1 for ICMP wildcard)
          • ‘groups’<~Array>:
            • ‘groupName’<~String> - Name of security group
            • ‘userId’<~String> - AWS User Id of account
          • ‘ipProtocol’<~String> - Ip protocol, must be in [‘tcp’, ‘udp’, ‘icmp’]
          • ‘ipRanges’<~Array>:
            • ‘cidrIp’<~String> - CIDR range
          • ‘toPort’<~Integer> - End of port range (or -1 for ICMP wildcard)
        • ‘ownerId’<~String> - AWS Access Key Id of the owner of the security group

Amazon API Reference

Describe all or specified snapshots

Parameters

  • filters<~Hash> - List of filters to limit results with
  • options<~Hash>:
    • ‘Owner’<~String> - Owner of snapshot in [‘self’, ‘amazon’, account_id]
    • ‘RestorableBy’<~String> - Account id of user who can create volumes from this snapshot

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘snapshotSet’<~Array>:
        • ‘progress’<~String>: The percentage progress of the snapshot
        • ‘snapshotId’<~String>: Id of the snapshot
        • ‘startTime’<~Time>: Timestamp of when snapshot was initiated
        • ‘status’<~String>: Snapshot state, in [‘pending’, ‘completed’]
        • ‘volumeId’<~String>: Id of volume that snapshot contains

Amazon API Reference

Describe all or specified tags

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘tagSet’<~Array>:
        • ‘resourceId’<~String> - id of resource tag belongs to
        • ‘resourceType’<~String> - type of resource tag belongs to
        • ‘key’<~String> - Tag‘s key
        • ‘value’<~String> - Tag‘s value

Amazon API Reference

Describe all or specified volumes.

Parameters

  • filters<~Hash> - List of filters to limit results with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘volumeSet’<~Array>:
        • ‘availabilityZone’<~String> - Availability zone for volume
        • ‘createTime’<~Time> - Timestamp for creation
        • ‘size’<~Integer> - Size in GiBs for volume
        • ‘snapshotId’<~String> - Snapshot volume was created from, if any
        • ‘status’<~String> - State of volume
        • ‘volumeId’<~String> - Reference to volume
        • ‘attachmentSet’<~Array>:
          • ‘attachmentTime’<~Time> - Timestamp for attachment
          • ‘deleteOnTermination’<~Boolean> - Whether or not to delete volume on instance termination
          • ‘device’<~String> - How value is exposed to instance
          • ‘instanceId’<~String> - Reference to attached instance
          • ‘status’<~String> - Attachment state
          • ‘volumeId’<~String> - Reference to volume

Amazon API Reference

Detach an Amazon EBS volume from a running instance

Parameters

  • volume_id<~String> - Id of amazon EBS volume to associate with instance
  • options<~Hash>:
    • ‘Device’<~String> - Specifies how the device is exposed to the instance (e.g. "/dev/sdh")
    • ‘Force’<~Boolean> - If true forces detach, can cause data loss/corruption
    • ‘InstanceId’<~String> - Id of instance to associate volume with

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘attachTime’<~Time> - Time of attachment was initiated at
      • ‘device’<~String> - Device as it is exposed to the instance
      • ‘instanceId’<~String> - Id of instance for volume
      • ‘requestId’<~String> - Id of request
      • ‘status’<~String> - Status of volume
      • ‘volumeId’<~String> - Reference to volume

Amazon API Reference

Disassociate an elastic IP address from its instance (if any)

Parameters

  • public_ip<~String> - Public ip to assign to instance

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Retrieve console output for specified instance

Parameters

  • instance_id<~String> - Id of instance to get console output from

Returns

# * response<~Excon::Response>:

  * body<~Hash>:
    * 'instanceId'<~String> - Id of instance
    * 'output'<~String> - Console output
    * 'requestId'<~String> - Id of request
    * 'timestamp'<~Time> - Timestamp of last update to output

Amazon API Reference

Retrieves the encrypted administrator password for an instance running Windows.

Parameters

  • instance_id<~String> - A Windows instance ID

Returns

# * response<~Excon::Response>:

  * body<~Hash>:
    * 'instanceId'<~String> - Id of instance
    * 'passwordData'<~String> - The encrypted, base64-encoded password of the instance.
    * 'requestId'<~String> - Id of request
    * 'timestamp'<~Time> - Timestamp of last update to output

See docs.amazonwebservices.com/AWSEC2/2010-08-31/APIReference/index.html?ApiReference-query-GetPasswordData.html

Amazon API Reference

Import an existing public key to create a new key pair

Parameters

  • key_name<~String> - Unique name for key pair.
  • public_key_material<~String> - RSA public key

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘keyFingerprint’<~String> - SHA-1 digest of DER encoded private key
      • ‘keyName’<~String> - Name of key
      • ‘requestId’<~String> - Id of request

Amazon API Reference

Modify image attributes

Parameters

  • image_id<~String> - Id of machine image to modify
  • attribute<~String> - Attribute to modify, in [‘launchPermission’, ‘productCodes’]
  • operation_type<~String> - Operation to perform on attribute, in [‘add’, ‘remove’]

Amazon API Reference

Modify snapshot attributes

Parameters

  • snapshot_id<~String> - Id of snapshot to modify
  • attribute<~String> - Attribute to modify, in [‘createVolumePermission’]
  • operation_type<~String> - Operation to perform on attribute, in [‘add’, ‘remove’]

Amazon API Reference

Monitor specified instance docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-MonitorInstances.html

Parameters

  • instance_ids<~Array> - Arrays of instances Ids to monitor

Returns

Amazon API Reference

Reboot specified instances

Parameters

  • instance_id<~Array> - Ids of instances to reboot

Returns

# * response<~Excon::Response>:

  * body<~Hash>:
    * 'requestId'<~String> - Id of request
    * 'return'<~Boolean> - success?

Amazon API Reference

Release an elastic IP address.

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Remove permissions from a security group

Parameters

  • ‘GroupName’<~String> - Name of group
  • options<~Hash>:
    • ‘SourceSecurityGroupName’<~String> - Name of security group to authorize
    • ‘SourceSecurityGroupOwnerId’<~String> - Name of owner to authorize

    or

    • ‘CidrIp’ - CIDR range
    • ‘FromPort’ - Start of port range (or -1 for ICMP wildcard)
    • ‘IpProtocol’ - Ip protocol, must be in [‘tcp’, ‘udp’, ‘icmp’]
    • ‘ToPort’ - End of port range (or -1 for ICMP wildcard)

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • ‘return’<~Boolean> - success?

Amazon API Reference

Launch specified instances

Parameters

  • image_id<~String> - Id of machine image to load on instances
  • min_count<~Integer> - Minimum number of instances to launch. If this exceeds the count of available instances, no instances will be launched. Must be between 1 and maximum allowed for your account (by default the maximum for an account is 20)
  • max_count<~Integer> - Maximum number of instances to launch. If this exceeds the number of available instances, the largest possible number of instances above min_count will be launched instead. Must be between 1 and maximum allowed for you account (by default the maximum for an account is 20)
  • options<~Hash>:
    • ‘Placement.AvailabilityZone’<~String> - Placement constraint for instances
    • ‘BlockDeviceMapping’<~Array>: array of hashes
      • ‘DeviceName’<~String> - where the volume will be exposed to instance
      • ‘VirtualName’<~String> - volume virtual device name
      • ‘Ebs.SnapshotId’<~String> - id of snapshot to boot volume from
      • ‘Ebs.VolumeSize’<~String> - size of volume in GiBs required unless snapshot is specified
      • ‘Ebs.DeleteOnTermination’<~String> - specifies whether or not to delete the volume on instance termination
    • ‘ClientToken’<~String> - unique case-sensitive token for ensuring idempotency
    • SecurityGroup’<~Array> or <~String> - Name of security group(s) for instances (you must omit this parameter if using Virtual Private Clouds)
    • ‘InstanceInitiatedShutdownBehaviour’<~String> - specifies whether volumes are stopped or terminated when instance is shutdown, in [stop, terminate]
    • ‘InstanceType’<~String> - Type of instance to boot. Valid options in [‘m1.small’, ‘m1.large’, ‘m1.xlarge’, ‘c1.medium’, ‘c1.xlarge’, ‘m2.2xlarge’, ‘m2.4xlarge’] default is ‘m1.small‘
    • ‘KernelId’<~String> - Id of kernel with which to launch
    • ‘KeyName’<~String> - Name of a keypair to add to booting instances
    • ‘Monitoring.Enabled’<~Boolean> - Enables monitoring, defaults to disabled
    • ‘RamdiskId’<~String> - Id of ramdisk with which to launch
    • ‘UserData’<~String> - Additional data to provide to booting instances

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘groupSet’<~Array>: groups the instances are members in
        • ‘groupName’<~String> - Name of group
      • ‘instancesSet’<~Array>: returned instances
        • instance<~Hash>:
          • ‘amiLaunchIndex’<~Integer> - reference to instance in launch group
          • ‘architecture’<~String> - architecture of image in [i386, x86_64]
          • ‘blockDeviceMapping’<~Array>
            • ‘attachTime’<~Time> - time of volume attachment
            • ‘deleteOnTermination’<~Boolean> - whether or not to delete volume on termination
            • ‘deviceName’<~String> - specifies how volume is exposed to instance
            • ‘status’<~String> - status of attached volume
            • ‘volumeId’<~String> - Id of attached volume
          • ‘dnsName’<~String> - public dns name, blank until instance is running
          • ‘imageId’<~String> - image id of ami used to launch instance
          • ‘instanceId’<~String> - id of the instance
          • ‘instanceState’<~Hash>:
            • ‘code’<~Integer> - current status code
            • ‘name’<~String> - current status name
          • ‘instanceType’<~String> - type of instance
          • ‘ipAddress’<~String> - public ip address assigned to instance
          • ‘kernelId’<~String> - Id of kernel used to launch instance
          • ‘keyName’<~String> - name of key used launch instances or blank
          • ‘launchTime’<~Time> - time instance was launched
          • ‘monitoring’<~Hash>:
            • ‘state’<~Boolean - state of monitoring
          • ‘placement’<~Hash>:
            • ‘availabilityZone’<~String> - Availability zone of the instance
          • ‘privateDnsName’<~String> - private dns name, blank until instance is running
          • ‘privateIpAddress’<~String> - private ip address assigned to instance
          • ‘productCodes’<~Array> - Product codes for the instance
          • ‘ramdiskId’<~String> - Id of ramdisk used to launch instance
          • ‘reason’<~String> - reason for most recent state transition, or blank
          • ‘rootDeviceName’<~String> - specifies how the root device is exposed to the instance
          • ‘rootDeviceType’<~String> - root device type used by AMI in [ebs, instance-store]
      • ‘ownerId’<~String> - Id of owner
      • ‘requestId’<~String> - Id of request
      • ‘reservationId’<~String> - Id of reservation

Amazon API Reference

Start specified instance

Parameters

  • instance_id<~Array> - Id of instance to start

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • TODO: fill in the blanks

Amazon API Reference

Stop specified instance

Parameters

  • instance_id<~Array> - Id of instance to start

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘requestId’<~String> - Id of request
      • TODO: fill in the blanks

Amazon API Reference

Terminate specified instances

Parameters

  • instance_id<~Array> - Ids of instances to terminates

Returns

# * response<~Excon::Response>:

  * body<~Hash>:
    * 'requestId'<~String> - Id of request
    * 'instancesSet'<~Array>:
      * 'instanceId'<~String> - id of the terminated instance
      * 'previousState'<~Hash>: previous state of instance
        * 'code'<~Integer> - previous status code
        * 'name'<~String> - name of previous state
      * 'shutdownState'<~Hash>: shutdown state of instance
        * 'code'<~Integer> - current status code
        * 'name'<~String> - name of current state

Amazon API Reference

UnMonitor specified instance docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-UnmonitorInstances.html

Parameters

  • instance_ids<~Array> - Arrays of instances Ids to monitor

Returns

Amazon API Reference

[Validate]