Skip to content
v2.273.0

InstanceType Class ​

Instance type for EC2 instances.

This class takes a literal string, good if you already know the identifier of the type you want.

Example ​

ts
declare const vpc: ec2.Vpc;

const cluster = new docdb.DatabaseCluster(this, 'Database', {
  masterUser: {
    username: 'myuser',
  },
  instanceType: ec2.InstanceType.of(ec2.InstanceClass.MEMORY5, ec2.InstanceSize.LARGE),
  vpcSubnets: {
    subnetType: ec2.SubnetType.PUBLIC,
  },
  vpc,
  removalPolicy: RemovalPolicy.SNAPSHOT,
});
python
# vpc: ec2.Vpc


cluster = docdb.DatabaseCluster(self, "Database",
    master_user=docdb.Login(
        username="myuser"
    ),
    instance_type=ec2.InstanceType.of(ec2.InstanceClass.MEMORY5, ec2.InstanceSize.LARGE),
    vpc_subnets=ec2.SubnetSelection(
        subnet_type=ec2.SubnetType.PUBLIC
    ),
    vpc=vpc,
    removal_policy=RemovalPolicy.SNAPSHOT
)
java
Vpc vpc;


DatabaseCluster cluster = DatabaseCluster.Builder.create(this, "Database")
        .masterUser(Login.builder()
                .username("myuser")
                .build())
        .instanceType(InstanceType.of(InstanceClass.MEMORY5, InstanceSize.LARGE))
        .vpcSubnets(SubnetSelection.builder()
                .subnetType(SubnetType.PUBLIC)
                .build())
        .vpc(vpc)
        .removalPolicy(RemovalPolicy.SNAPSHOT)
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
Vpc vpc;


var cluster = new DatabaseCluster(this, "Database", new DatabaseClusterProps {
    MasterUser = new Login {
        Username = "myuser"
    },
    InstanceType = InstanceType.Of(InstanceClass.MEMORY5, InstanceSize.LARGE),
    VpcSubnets = new SubnetSelection {
        SubnetType = SubnetType.PUBLIC
    },
    Vpc = vpc,
    RemovalPolicy = RemovalPolicy.SNAPSHOT
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
var vpc Vpc


cluster := docdb.NewDatabaseCluster(this, jsii.String("Database"), &DatabaseClusterProps{
	MasterUser: &Login{
		Username: jsii.String("myuser"),
	},
	InstanceType: ec2.InstanceType_Of(ec2.InstanceClass_MEMORY5, ec2.InstanceSize_LARGE),
	VpcSubnets: &SubnetSelection{
		SubnetType: ec2.SubnetType_PUBLIC,
	},
	Vpc: Vpc,
	RemovalPolicy: awscdk.RemovalPolicy_SNAPSHOT,
})

Initializer ​

ts
new InstanceType(instanceTypeIdentifier: string)
python
InstanceType(instance_type_identifier: str)
java
new InstanceType(String instanceTypeIdentifier)
csharp
new InstanceType(string instanceTypeIdentifier)
go
NewInstanceType(InstanceTypeIdentifier *string)

Properties ​

architectureInstanceArchitecturearchitectureInstanceArchitecturearchitectureInstanceArchitectureArchitectureInstanceArchitectureArchitectureInstanceArchitecturerequired#
The instance's CPU architecture.

Methods ​

isBurstable(): booleandef is_burstable(self, ) -> boolpublic Boolean isBurstable()public bool IsBurstable()func IsBurstable() *bool#
Return whether this instance type is a burstable instance type.
of(instanceClass: InstanceClass, instanceSize: InstanceSize): InstanceType // chainable@staticmethod def of(instance_class: InstanceClass, instance_size: InstanceSize) -> InstanceTypepublic static InstanceType of(InstanceClass instanceClass, InstanceSize instanceSize)public static InstanceType Of(InstanceClass instanceClass, InstanceSize instanceSize)func Of(InstanceClass InstanceClass, InstanceSize InstanceSize) InstanceTypestatic#
Instance type for EC2 instances.

This class takes a combination of a class and size.

Be aware that not all combinations of class and size are available, and not all classes are available in all regions.

sameInstanceClassAs(other: InstanceType): booleandef same_instance_class_as(self, other: InstanceType) -> boolpublic Boolean sameInstanceClassAs(InstanceType other)public bool SameInstanceClassAs(InstanceType other)func SameInstanceClassAs(Other InstanceType) *bool#
toString(): stringdef to_string(self, ) -> strpublic String toString()public string ToString()func ToString() *string#
Return the instance type as a dotted string.