mirror of https://github.com/apache/jclouds.git
JCLOUDS-1460: Adding instances to AWS
This commit is contained in:
parent
53c011a3bc
commit
e4c99a0797
|
@ -228,7 +228,13 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
private EC2HardwareBuilder t3() {
|
||||
virtualizationType(VirtualizationType.HVM);
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
private EC2HardwareBuilder m3() {
|
||||
virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL);
|
||||
return this;
|
||||
|
@ -393,13 +399,22 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
.processors(ImmutableList.of(new Processor(1.0, 1.0))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T2_NANO
|
||||
*/
|
||||
public static EC2HardwareBuilder t2_nano() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_NANO).t2()
|
||||
.ram(512)
|
||||
.processors(ImmutableList.of(new Processor(1.0, 3.3))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T2_MICRO
|
||||
*/
|
||||
public static EC2HardwareBuilder t2_micro() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_MICRO).t2()
|
||||
.ram(1024)
|
||||
.processors(ImmutableList.of(new Processor(1.0, 0.1))).rootDeviceType(RootDeviceType.EBS);
|
||||
.processors(ImmutableList.of(new Processor(1.0, 3.3))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -408,7 +423,7 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
public static EC2HardwareBuilder t2_small() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_SMALL).t2()
|
||||
.ram(2048)
|
||||
.processors(ImmutableList.of(new Processor(1.0, 0.2))).rootDeviceType(RootDeviceType.EBS);
|
||||
.processors(ImmutableList.of(new Processor(1.0, 3.3))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -417,7 +432,7 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
public static EC2HardwareBuilder t2_medium() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_MEDIUM).t2()
|
||||
.ram(4096)
|
||||
.processors(ImmutableList.of(new Processor(1.0, 0.4))).rootDeviceType(RootDeviceType.EBS);
|
||||
.processors(ImmutableList.of(new Processor(2.0, 3.3))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -426,9 +441,92 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
public static EC2HardwareBuilder t2_large() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_LARGE).t2()
|
||||
.ram(8192)
|
||||
.processors(ImmutableList.of(new Processor(1.0, 0.4))).rootDeviceType(RootDeviceType.EBS);
|
||||
.processors(ImmutableList.of(new Processor(2.0, 3.0))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T2_XLARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder t2_xlarge() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_XLARGE).t2()
|
||||
.ram(16384)
|
||||
.processors(ImmutableList.of(new Processor(4.0, 3.0))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T2_2XLARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder t2_2xlarge() {
|
||||
return new EC2HardwareBuilder(InstanceType.T2_2XLARGE).t2()
|
||||
.ram(32768)
|
||||
.processors(ImmutableList.of(new Processor(8.0, 3.0))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_NANO
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_nano() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_NANO).t3()
|
||||
.ram(512)
|
||||
.processors(ImmutableList.of(new Processor(2.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_MICRO
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_micro() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_MICRO).t3()
|
||||
.ram(1024)
|
||||
.processors(ImmutableList.of(new Processor(2.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_SMALL
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_small() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_SMALL).t3()
|
||||
.ram(2048)
|
||||
.processors(ImmutableList.of(new Processor(2.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_MEDIUM
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_medium() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_MEDIUM).t3()
|
||||
.ram(4096)
|
||||
.processors(ImmutableList.of(new Processor(2.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_LARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_large() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_LARGE).t3()
|
||||
.ram(8192)
|
||||
.processors(ImmutableList.of(new Processor(2.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_XLARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_xlarge() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_XLARGE).t3()
|
||||
.ram(16384)
|
||||
.processors(ImmutableList.of(new Processor(4.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#T3_2XLARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder t3_2xlarge() {
|
||||
return new EC2HardwareBuilder(InstanceType.T3_2XLARGE).t3()
|
||||
.ram(32768)
|
||||
.processors(ImmutableList.of(new Processor(8.0, 2.5))).rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @see InstanceType#M1_LARGE
|
||||
*/
|
||||
|
@ -605,6 +703,17 @@ public class EC2HardwareBuilder extends HardwareBuilder {
|
|||
.rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#M4_16XLARGE
|
||||
*/
|
||||
public static EC2HardwareBuilder m4_16xlarge() {
|
||||
return new EC2HardwareBuilder(InstanceType.M4_16XLARGE).m4()
|
||||
.ram(262144)
|
||||
.processors(ImmutableList.of(new Processor(64.0, 3.1125)))
|
||||
.is64Bit(true)
|
||||
.rootDeviceType(RootDeviceType.EBS);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see InstanceType#M5_LARGE
|
||||
*/
|
||||
|
|
|
@ -29,6 +29,17 @@ public class InstanceType {
|
|||
*/
|
||||
public static final String T1_MICRO = "t1.micro";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>512 MB memory</li>
|
||||
* <li>1 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T2_NANO = "t2.nano";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
|
@ -73,6 +84,105 @@ public class InstanceType {
|
|||
*/
|
||||
public static final String T2_LARGE = "t2.large";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>16 GB memory</li>
|
||||
* <li>4 vCPU / 40% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T2_XLARGE = "t2.xlarge";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>32 GB memory</li>
|
||||
* <li>8 vCPU / 40% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T2_2XLARGE = "t2.2xlarge";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>512 MB memory</li>
|
||||
* <li>2 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_NANO = "t3.nano";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>1 GB memory</li>
|
||||
* <li>2 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_MICRO = "t3.micro";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>2 GB memory</li>
|
||||
* <li>2 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_SMALL = "t3.small";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>4 GB memory</li>
|
||||
* <li>2 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_MEDIUM = "t3.medium";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>8 GB memory</li>
|
||||
* <li>2 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_LARGE = "t3.large";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>16 GB memory</li>
|
||||
* <li>4 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_XLARGE = "t3.xlarge";
|
||||
|
||||
/**
|
||||
* Micro Burstable Performance Instance
|
||||
* <ul>
|
||||
* <li>32 GB memory</li>
|
||||
* <li>8 vCPU / 10% baseline performance</li>
|
||||
* <li>No instance storage (EBS storage only)</li>
|
||||
* <li>64-bit platform</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String T3_2XLARGE = "t3.2xlarge";
|
||||
|
||||
/**
|
||||
* Small Instance
|
||||
* <ul>
|
||||
|
@ -268,6 +378,18 @@ public class InstanceType {
|
|||
*/
|
||||
public static final String M4_10XLARGE = "m4.10xlarge";
|
||||
|
||||
/**
|
||||
* M4 Sexdecuple Extra Large Instance
|
||||
* <ul>
|
||||
* <li>256 GiB memory</li>
|
||||
* <li>199.2 EC2 Compute Units (64 virtual cores with 3.1125 EC2 Compute Units each)</li>
|
||||
* <li>EBS storage only</li>
|
||||
* <li>64-bit platform</li>
|
||||
* <li>I/O Performance: High</li>
|
||||
* </ul>
|
||||
*/
|
||||
public static final String M4_16XLARGE = "m4.16xlarge";
|
||||
|
||||
/**
|
||||
* M5 Large Instance
|
||||
* <ul>
|
||||
|
|
|
@ -60,6 +60,7 @@ import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m3_large;
|
|||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m3_medium;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m3_xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m4_10xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m4_16xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m4_2xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m4_4xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.m4_large;
|
||||
|
@ -85,7 +86,17 @@ import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t1_micro;
|
|||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_large;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_medium;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_micro;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_nano;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_small;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t2_2xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_nano;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_micro;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_small;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_medium;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_large;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.t3_2xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.x1_16xlarge;
|
||||
import static org.jclouds.ec2.compute.domain.EC2HardwareBuilder.x1_32xlarge;
|
||||
|
||||
|
@ -122,10 +133,20 @@ public class AWSEC2HardwareSupplier extends EC2HardwareSupplier {
|
|||
sizes.add(g2_2xlarge().supportsImageIds(ccAmis).build());
|
||||
|
||||
sizes.add(t1_micro().build());
|
||||
sizes.add(t2_nano().build());
|
||||
sizes.add(t2_micro().build());
|
||||
sizes.add(t2_small().build());
|
||||
sizes.add(t2_medium().build());
|
||||
sizes.add(t2_large().build());
|
||||
sizes.add(t2_xlarge().build());
|
||||
sizes.add(t2_2xlarge().build());
|
||||
sizes.add(t3_nano().build());
|
||||
sizes.add(t3_micro().build());
|
||||
sizes.add(t3_small().build());
|
||||
sizes.add(t3_medium().build());
|
||||
sizes.add(t3_large().build());
|
||||
sizes.add(t3_xlarge().build());
|
||||
sizes.add(t3_2xlarge().build());
|
||||
sizes.add(c1_medium().build());
|
||||
sizes.add(c1_xlarge().build());
|
||||
sizes.add(c3_large().build());
|
||||
|
@ -164,6 +185,7 @@ public class AWSEC2HardwareSupplier extends EC2HardwareSupplier {
|
|||
sizes.add(m4_2xlarge().build());
|
||||
sizes.add(m4_4xlarge().build());
|
||||
sizes.add(m4_10xlarge().build());
|
||||
sizes.add(m4_16xlarge().build());
|
||||
sizes.add(m5_large().build());
|
||||
sizes.add(m5_xlarge().build());
|
||||
sizes.add(m5_2xlarge().build());
|
||||
|
|
Loading…
Reference in New Issue