Skip to content
v2.274.0

SpotProvisioningSpecificationProperty Struct ​

The launch specification for Spot instances in the instance fleet, which determines the defined duration and provisioning timeout behavior.

Example ​

ts
new tasks.EmrCreateCluster(this, 'OnDemandSpecification', {
  instances: {
    instanceFleets: [{
      instanceFleetType: tasks.EmrCreateCluster.InstanceRoleType.MASTER,
      launchSpecifications: {
        onDemandSpecification: {
          allocationStrategy: tasks.EmrCreateCluster.OnDemandAllocationStrategy.LOWEST_PRICE,
        },
      },
    }],
  },
  name: 'OnDemandCluster',
  integrationPattern: sfn.IntegrationPattern.RUN_JOB,
});

new tasks.EmrCreateCluster(this, 'SpotSpecification', {
  instances: {
    instanceFleets: [{
      instanceFleetType: tasks.EmrCreateCluster.InstanceRoleType.MASTER,
      launchSpecifications: {
        spotSpecification: {
          allocationStrategy: tasks.EmrCreateCluster.SpotAllocationStrategy.CAPACITY_OPTIMIZED,
          timeoutAction: tasks.EmrCreateCluster.SpotTimeoutAction.TERMINATE_CLUSTER,
          timeout: Duration.minutes(5),
        },
      },
    }],
  },
  name: 'SpotCluster',
  integrationPattern: sfn.IntegrationPattern.RUN_JOB,
});

Properties ​

allocationStrategyoptionalEmrCreateCluster.SpotAllocationStrategyallocation_strategyoptionalSpotAllocationStrategyallocationStrategyoptionalSpotAllocationStrategyAllocationStrategyoptionalSpotAllocationStrategyAllocationStrategyoptionalSpotAllocationStrategy#
Specifies the strategy to use in launching Spot Instance fleets.

Default: No allocation strategy, i.e. spot instance type will be chosen based on current price only

blockDurationMinutesoptionalnumberblock_duration_minutesoptionalint | floatblockDurationMinutesoptionalNumberBlockDurationMinutesoptionaldoubleBlockDurationMinutesoptional*float64deprecated#
- Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.

Default: No blockDurationMinutes

timeoutoptionalDurationtimeoutoptionalDurationtimeoutoptionalDurationTimeoutoptionalDurationTimeoutoptionalDuration#
The spot provisioning timeout period in minutes.

Default: The value in timeoutDurationMinutes is used

The value must be between 5 and 1440 minutes.

You must specify one of timeout and timeoutDurationMinutes.

timeoutActionEmrCreateCluster.SpotTimeoutActiontimeout_actionSpotTimeoutActiontimeoutActionSpotTimeoutActionTimeoutActionSpotTimeoutActionTimeoutActionSpotTimeoutActionrequired#
The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired.
timeoutDurationMinutesoptionalnumbertimeout_duration_minutesoptionalint | floattimeoutDurationMinutesoptionalNumberTimeoutDurationMinutesoptionaldoubleTimeoutDurationMinutesoptional*float64deprecated#
- Use `timeout`.

Default: The value in timeout is used

The value must be between 5 and 1440 minutes.

You must specify one of timeout and timeoutDurationMinutes.