JCLOUDS-412. Add the new i2.* instance sizes
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java
index f954a65..a022e57 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java
@@ -451,6 +451,65 @@
.virtualizationType(VirtualizationType.HVM);
}
+ /**
+ * @see InstanceType#I2_XLARGE
+ */
+ public static EC2HardwareBuilder i2_xlarge() {
+ return new EC2HardwareBuilder(InstanceType.I2_XLARGE)
+ .ram(30 * 1024 + 512)
+ .processors(ImmutableList.of(new Processor(4.0, 3.5)))
+ .volumes(ImmutableList.<Volume> of(new VolumeImpl(10.0f, "/dev/sda1", true, false),
+ new VolumeImpl(800.0f, "/dev/sdb", false, false)))
+ .virtualizationType(VirtualizationType.HVM);
+ }
+
+ /**
+ * @see InstanceType#I2_2XLARGE
+ */
+ public static EC2HardwareBuilder i2_2xlarge() {
+ return new EC2HardwareBuilder(InstanceType.I2_2XLARGE)
+ .ram(61 * 1024)
+ .processors(ImmutableList.of(new Processor(8.0, 3.375)))
+ .volumes(ImmutableList.<Volume> of(new VolumeImpl(10.0f, "/dev/sda1", true, false),
+ new VolumeImpl(800.0f, "/dev/sdb", false, false),
+ new VolumeImpl(800.0f, "/dev/sdc", false, false)))
+ .virtualizationType(VirtualizationType.HVM);
+ }
+
+ /**
+ * @see InstanceType#I2_4XLARGE
+ */
+ public static EC2HardwareBuilder i2_4xlarge() {
+ return new EC2HardwareBuilder(InstanceType.I2_4XLARGE)
+ .ram(122 * 1024)
+ .processors(ImmutableList.of(new Processor(16.0, 3.3125)))
+ .volumes(ImmutableList.<Volume> of(new VolumeImpl(10.0f, "/dev/sda1", true, false),
+ new VolumeImpl(800.0f, "/dev/sdb", false, false),
+ new VolumeImpl(800.0f, "/dev/sdc", false, false),
+ new VolumeImpl(800.0f, "/dev/sdd", false, false),
+ new VolumeImpl(800.0f, "/dev/sde", false, false)))
+ .virtualizationType(VirtualizationType.HVM);
+ }
+
+ /**
+ * @see InstanceType#I2_8XLARGE
+ */
+ public static EC2HardwareBuilder i2_8xlarge() {
+ return new EC2HardwareBuilder(InstanceType.I2_8XLARGE)
+ .ram(244 * 1024)
+ .processors(ImmutableList.of(new Processor(32.0, 3.25)))
+ .volumes(ImmutableList.<Volume> of(new VolumeImpl(10.0f, "/dev/sda1", true, false),
+ new VolumeImpl(800.0f, "/dev/sdb", false, false),
+ new VolumeImpl(800.0f, "/dev/sdc", false, false),
+ new VolumeImpl(800.0f, "/dev/sdd", false, false),
+ new VolumeImpl(800.0f, "/dev/sde", false, false),
+ new VolumeImpl(800.0f, "/dev/sdf", false, false),
+ new VolumeImpl(800.0f, "/dev/sdg", false, false),
+ new VolumeImpl(800.0f, "/dev/sdh", false, false),
+ new VolumeImpl(800.0f, "/dev/sdi", false, false)))
+ .virtualizationType(VirtualizationType.HVM);
+ }
+
public static EC2HardwareBuilder hi1_4xlarge() {
return new EC2HardwareBuilder(InstanceType.HI1_4XLARGE)
.ram(60 * 1024 + 512)
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/domain/InstanceType.java b/apis/ec2/src/main/java/org/jclouds/ec2/domain/InstanceType.java
index 4cecec2..7249b7f 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/domain/InstanceType.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/domain/InstanceType.java
@@ -301,4 +301,52 @@
* </ul>
*/
public static final String C3_8XLARGE = "c3.8xlarge";
+
+ /**
+ * I2 Extra Large
+ * <ul>
+ * <li>30.5 GiB of memory</li>
+ * <li>14 EC2 Compute Units (4 virtual cores)</li>
+ * <li>1 SSD-based volume with 800 GiB of instance storage</li>
+ * <li>64-bit platform</li>
+ * <li>I/O Performance: High</li>
+ * </ul>
+ */
+ public static final String I2_XLARGE = "i2.xlarge";
+
+ /**
+ * I2 Double Extra Large
+ * <ul>
+ * <li>61 GiB of memory</li>
+ * <li>27 EC2 Compute Units (8 virtual cores)</li>
+ * <li>2 SSD-based volumes each with 800 GiB of instance storage</li>
+ * <li>64-bit platform</li>
+ * <li>I/O Performance: High</li>
+ * </ul>
+ */
+ public static final String I2_2XLARGE = "i2.2xlarge";
+
+ /**
+ * I2 Quadruple Extra Large
+ * <ul>
+ * <li>122 GiB of memory</li>
+ * <li>53 EC2 Compute Units (16 virtual cores)</li>
+ * <li>4 SSD-based volumes each with 800 GiB of instance storage</li>
+ * <li>64-bit platform</li>
+ * <li>I/O Performance: High</li>
+ * </ul>
+ */
+ public static final String I2_4XLARGE = "i2.4xlarge";
+
+ /**
+ * I2 Octuple Extra Large
+ * <ul>
+ * <li>244 GiB of memory</li>
+ * <li>104 EC2 Compute Units (32 virtual cores)</li>
+ * <li>8 SSD-based volumes each with 800 GiB of instance storage</li>
+ * <li>64-bit platform</li>
+ * <li>I/O Performance: High</li>
+ * </ul>
+ */
+ public static final String I2_8XLARGE = "i2.8xlarge";
}