cdk-ec2spot
CDK construct library that allows you to create EC2 Spot instances with AWS AutoScaling Group
, Spot Fleet
or just single Spot Instance
.
Install
Use the npm dist tag to opt in CDKv1 or CDKv2:
// for CDKv2
npm install cdk-ec2spot
or
npm install cdk-ec2spot@latest
// for CDKv1
npm install cdk-ec2spot@cdkv1
Sample
import * as ec2spot from 'cdk-ec2spot';
const provider = new ec2spot.Provider(stack, 'Provider');
const vpc = provider.getOrCreateVpc(stack);
provider.createAutoScalingGroup('SpotASG', {
vpc,
defaultCapacitySize: 2,
instanceType: new ec2.InstanceType('m5.large'),
});
EC2 Spot Fleet support
In addition to EC2 AutoScaling Group, you may use createFleet()
to create an EC2 Spot Fleet:
provider.createFleet('SpotFleet', {
vpc,
defaultCapacitySize: 2,
instanceType: new ec2.InstanceType('t3.large'),
});
Single Spot Instnce
If you just need single spot instance without any autoscaling group or spot fleet, use createInstance()
:
provider.createInstance('SpotInstance', { vpc })