Plug-in Documentation

Amazon EC2

Overview

The Amazon EC2 plugin automates managing an Amazon Elastic Cloud (EC2) instance as a process step.

Amazon EC2 provides scalable computing capacity on the Amazon Web Services (AWS) cloud.

This plug-in includes these steps:

Compatibility

This plug-in requires IBM UrbanCode Deploy version 6.0 or later.

This plug-in runs on all operating systems that UrbanCode Deploy supports.

This plug-in requires the Amazon AWS SDK v1.3.7 or later.

Installation

No special steps are required for installation. This plug-in is included with the installation of IBM Urban Code Deploy. If you have to install the plug-in again, see Installing plug-ins in UrbanCode products.

Steps

Process steps in the AmazonEC2 plug-in

Associate IPs

Associate Elastic IP addresses with instances.

Input properties for the Associate IPs step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the Amazon Web Services (AWS) SDK.

Yes
Access Key ID String The EC2 access key ID value that is used to log in. Yes
IPs String A list of one or more elastic IP addresses to associate with instances. Put each address on a new line. Yes
Instance IDs String A list of IDs that corresponds to the elastic IP addresses to associate with instances. Separate each ID with a comma. Yes
Secret Key String The EC2 secret key. Yes

Create Security Group

Create a security group from a file.

Input properties for the Create Security Group step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID value that is used to log in

.

Yes
Definition File String The file that describes the allowed IPs and ports for the security group. Create the file in the following format:

<SecurityGroup name="name" description="description" vpcId="ID optional"><ipPermission protocol="tcp" fromPort="22" toPort="22"><ipRange value="0.0.0.0/0"/></ipPermission></SecuirtyGroup>

If this property is blank, an empty security group is created.

No
Description String The description of the security group to create. This property is used if you are not using a file to add permissions. No
Name String The name of the security group to create. This property is used if you are not using a file to add permissions. No
Secret Key String The EC2 secret key value. Yes
VPC ID String The ID of the virtual private cloud (VPC) to use, if you are not using a file to add permissions. No

Deregister Instances with LoadBalancer

This step deregisters instances with an Amazon load balancing feature.

Input properties for the Deregister Instances with LoadBalancer step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID value to use to log in. Yes
Instance IDs String A list of one or more IDs of the instances to be deregistered. Separate each ID with a comma. Yes
Load Balancer Name String The name of the EC2 account load balancer to deregister the instances from. Yes
Secret Key String The EC2 secret key Yes

Get Public DNS

Get the public Domain Name System (DNS) hostname for the specified instance IDs. Results are returned in a comma-separated list in the dns property.

Input properties for the Get Public DNS step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID value to use to log in. Yes
Instance IDs String A list of instance IDs for which the DNS hostname is to be retrieved. Separate each instance ID with a comma. The returned DNS hostnames are in the same order that the IDs are specified. Yes
Secret Key String The EC2 secret key value. Yes

Launch Instances

Launch instances of the given Amazon Machine Image (AMI).

Input properties for the Launch Instances step
Name Type Description Required
# of instances String The number of EC2 instances to start. Yes
AMI ID String The AMI ID of the instances to be started. Yes
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID to use to login. Yes
Availability Zone String The zone to start the instances in. No
Instance Type String The type of instances to run. Valid values are as follows: m1.small, m1.large, m1.xlarge, m2.xlarge, m2.4xlarge, c1.medium, and c1.xlarge. Yes
Keypair String The keypair value to start the instances with. No
Secret Key String The EC2 secret key value. Yes
Security Group String A list of security group names to use. Separate each group name with a comma. No
User data String The user data to pass to the instance. No

Register Instances with LoadBalancer

Register an instance with an Amazon Load Balancer.

Input properties for the Register Instances with LoadBalancer step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID to use to login. Yes
Instance IDs String A list of instance IDs to associate with the load balancer. Separate each ID with a comma. Yes
Load Balancer Name String The load balancer name that is associated with the EC2 account to register the instances with. Yes
Secret Key String The EC2 secret key Yes

Terminate Instances

Terminate instances with the given instance IDs.

Input properties for the Terminate Instances step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID to use to login. Yes
Instance IDs String A list of instance IDs to be terminated. Separate each instance ID with a comma. Yes
Secret Key String The EC2 secret key. Yes

Wait for instances

Wait for instances to be in a certain state.

Input properties for the Wait for instances step
Name Type Description Required
AWS Jar String The fully qualified path to the JAR file for the AWS SDK. Yes
Access Key ID String The EC2 access key ID to use to login. Yes
Instance IDs String A list of instance IDs that correspond to the IPs to associate with instances. Separate each instance ID with a comma. Yes
Secret Key String The EC2 secret key value. Yes
State String The expected instance state. Yes
Timeout String The timeout value for this step. Yes

Usage

Use this plug-in to manage Amazon Elastic Cloud (EC2) instances as a process step.

  • Start and end an Amazon Elastic Cloud (EC2) instance.
  • Create security groups that act as virtual firewalls for your instance to control inbound and outbound traffic.
  • Register and deregister instances with the Amazon elastic load balancing feature.
  • Obtain the DNS hostname for an instance.
  • Launch instances that are associated with an Amazon Machine Image (AMI).
  • Stop processing until an instance is in a specified state.
  • Terminate an instance, which removes the instance and all associated data.

Step palette

To access this plug-in in the palette, click Cloud > AmazonEC2.