Class CfnInstanceFleetConfigPropsMixin
- All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable,software.constructs.IMixin
InstanceFleetConfig to define instance fleets for an EMR cluster.
A cluster can not use both instance fleets and instance groups. For more information, see Configure Instance Fleets in the Amazon EMR Management Guide .
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. > You can currently only add a task instance fleet to a cluster with this resource. If you use this resource, CloudFormation waits for the cluster launch to complete before adding the task instance fleet to the cluster. In order to add a task instance fleet to the cluster as part of the cluster launch and minimize delays in provisioning task nodes, use the
TaskInstanceFleetssubproperty for the AWS::EMR::Cluster JobFlowInstancesConfig property instead. To use this subproperty, see AWS::EMR::Cluster for examples.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.cfnpropertymixins.services.emr.*;
import software.amazon.awscdk.*;
ConfigurationProperty configurationProperty_;
IMergeStrategy mergeStrategy;
CfnInstanceFleetConfigPropsMixin cfnInstanceFleetConfigPropsMixin = CfnInstanceFleetConfigPropsMixin.Builder.create(CfnInstanceFleetConfigMixinProps.builder()
.clusterId("clusterId")
.instanceFleetType("instanceFleetType")
.instanceTypeConfigs(List.of(InstanceTypeConfigProperty.builder()
.bidPrice("bidPrice")
.bidPriceAsPercentageOfOnDemandPrice(123)
.configurations(List.of(ConfigurationProperty.builder()
.classification("classification")
.configurationProperties(Map.of(
"configurationPropertiesKey", "configurationProperties"))
.configurations(List.of(configurationProperty_))
.build()))
.customAmiId("customAmiId")
.ebsConfiguration(EbsConfigurationProperty.builder()
.ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder()
.volumeSpecification(VolumeSpecificationProperty.builder()
.iops(123)
.sizeInGb(123)
.throughput(123)
.volumeType("volumeType")
.build())
.volumesPerInstance(123)
.build()))
.ebsOptimized(false)
.build())
.instanceType("instanceType")
.priority(123)
.weightedCapacity(123)
.build()))
.launchSpecifications(InstanceFleetProvisioningSpecificationsProperty.builder()
.onDemandSpecification(OnDemandProvisioningSpecificationProperty.builder()
.allocationStrategy("allocationStrategy")
.capacityReservationOptions(OnDemandCapacityReservationOptionsProperty.builder()
.capacityReservationPreference("capacityReservationPreference")
.capacityReservationResourceGroupArn("capacityReservationResourceGroupArn")
.usageStrategy("usageStrategy")
.build())
.build())
.spotSpecification(SpotProvisioningSpecificationProperty.builder()
.allocationStrategy("allocationStrategy")
.blockDurationMinutes(123)
.timeoutAction("timeoutAction")
.timeoutDurationMinutes(123)
.build())
.build())
.name("name")
.resizeSpecifications(InstanceFleetResizingSpecificationsProperty.builder()
.onDemandResizeSpecification(OnDemandResizingSpecificationProperty.builder()
.allocationStrategy("allocationStrategy")
.capacityReservationOptions(OnDemandCapacityReservationOptionsProperty.builder()
.capacityReservationPreference("capacityReservationPreference")
.capacityReservationResourceGroupArn("capacityReservationResourceGroupArn")
.usageStrategy("usageStrategy")
.build())
.timeoutDurationMinutes(123)
.build())
.spotResizeSpecification(SpotResizingSpecificationProperty.builder()
.allocationStrategy("allocationStrategy")
.timeoutDurationMinutes(123)
.build())
.build())
.targetOnDemandCapacity(123)
.targetSpotCapacity(123)
.build())
.strategy(mergeStrategy)
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA fluent builder forCfnInstanceFleetConfigPropsMixin.static interfacestatic interfaceEbsBlockDeviceConfigis a subproperty of theEbsConfigurationproperty type.static interfaceEbsConfigurationdetermines the EBS volumes to attach to EMR cluster instances.static interfacestatic interfaceThe resize specification for On-Demand and Spot Instances in the fleet.static interfaceInstanceTypeconfig is a subproperty ofInstanceFleetConfig.static interfaceDescribes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.static interfaceThe launch specification for On-Demand Instances in the instance fleet, which determines the allocation strategy.static interfaceThe resize specification for On-Demand Instances in the instance fleet, which contains the resize timeout period.static interfaceSpotProvisioningSpecificationis a subproperty of theInstanceFleetProvisioningSpecificationsproperty type.static interfaceThe resize specification for Spot Instances in the instance fleet, which contains the resize timeout period.static interfaceVolumeSpecificationis a subproperty of theEbsBlockDeviceConfigproperty type.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.constructs.IMixin
software.constructs.IMixin.Jsii$Default, software.constructs.IMixin.Jsii$Proxy -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionCreate a mixin to apply properties toAWS::EMR::InstanceFleetConfig.CfnInstanceFleetConfigPropsMixin(CfnInstanceFleetConfigMixinProps props, CfnPropertyMixinOptions options) Create a mixin to apply properties toAWS::EMR::InstanceFleetConfig.protectedCfnInstanceFleetConfigPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedCfnInstanceFleetConfigPropsMixin(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyTo(software.constructs.IConstruct construct) Apply the mixin properties to the construct.protected CfnInstanceFleetConfigMixinPropsgetProps()protected IMergeStrategysupports(software.constructs.IConstruct construct) Check if this mixin supports the given construct.Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_PROPERTY_KEYS
-
-
Constructor Details
-
CfnInstanceFleetConfigPropsMixin
protected CfnInstanceFleetConfigPropsMixin(software.amazon.jsii.JsiiObjectRef objRef) -
CfnInstanceFleetConfigPropsMixin
protected CfnInstanceFleetConfigPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnInstanceFleetConfigPropsMixin
@Stability(Stable) public CfnInstanceFleetConfigPropsMixin(@NotNull CfnInstanceFleetConfigMixinProps props, @Nullable CfnPropertyMixinOptions options) Create a mixin to apply properties toAWS::EMR::InstanceFleetConfig.- Parameters:
props- L1 properties to apply. This parameter is required.options- Mixin options.
-
CfnInstanceFleetConfigPropsMixin
@Stability(Stable) public CfnInstanceFleetConfigPropsMixin(@NotNull CfnInstanceFleetConfigMixinProps props) Create a mixin to apply properties toAWS::EMR::InstanceFleetConfig.- Parameters:
props- L1 properties to apply. This parameter is required.
-
-
Method Details
-
applyTo
@Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct) Apply the mixin properties to the construct. -
supports
@Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct) Check if this mixin supports the given construct. -
getProps
-
getStrategy
-