Class CfnInstanceFleetConfig
Use InstanceFleetConfig
to define instance fleets for an EMR cluster.
Implements
Inherited Members
Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnInstanceFleetConfig : CfnResource, IInspectable
Syntax (vb)
Public Class CfnInstanceFleetConfig
Inherits CfnResource
Implements IInspectable
Remarks
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 TaskInstanceFleets
subproperty for the AWS::EMR::Cluster JobFlowInstancesConfig property instead. To use this subproperty, see AWS::EMR::Cluster for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EMR;
ConfigurationProperty configurationProperty_;
var cfnInstanceFleetConfig = new CfnInstanceFleetConfig(this, "MyCfnInstanceFleetConfig", new CfnInstanceFleetConfigProps {
ClusterId = "clusterId",
InstanceFleetType = "instanceFleetType",
// the properties below are optional
InstanceTypeConfigs = new [] { new InstanceTypeConfigProperty {
InstanceType = "instanceType",
// the properties below are optional
BidPrice = "bidPrice",
BidPriceAsPercentageOfOnDemandPrice = 123,
Configurations = new [] { new ConfigurationProperty {
Classification = "classification",
ConfigurationProperties = new Dictionary<string, string> {
{ "configurationPropertiesKey", "configurationProperties" }
},
Configurations = new [] { configurationProperty_ }
} },
CustomAmiId = "customAmiId",
EbsConfiguration = new EbsConfigurationProperty {
EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
VolumeSpecification = new VolumeSpecificationProperty {
SizeInGb = 123,
VolumeType = "volumeType",
// the properties below are optional
Iops = 123,
Throughput = 123
},
// the properties below are optional
VolumesPerInstance = 123
} },
EbsOptimized = false
},
Priority = 123,
WeightedCapacity = 123
} },
LaunchSpecifications = new InstanceFleetProvisioningSpecificationsProperty {
OnDemandSpecification = new OnDemandProvisioningSpecificationProperty {
AllocationStrategy = "allocationStrategy",
// the properties below are optional
CapacityReservationOptions = new OnDemandCapacityReservationOptionsProperty {
CapacityReservationPreference = "capacityReservationPreference",
CapacityReservationResourceGroupArn = "capacityReservationResourceGroupArn",
UsageStrategy = "usageStrategy"
}
},
SpotSpecification = new SpotProvisioningSpecificationProperty {
TimeoutAction = "timeoutAction",
TimeoutDurationMinutes = 123,
// the properties below are optional
AllocationStrategy = "allocationStrategy",
BlockDurationMinutes = 123
}
},
Name = "name",
ResizeSpecifications = new InstanceFleetResizingSpecificationsProperty {
OnDemandResizeSpecification = new OnDemandResizingSpecificationProperty {
AllocationStrategy = "allocationStrategy",
CapacityReservationOptions = new OnDemandCapacityReservationOptionsProperty {
CapacityReservationPreference = "capacityReservationPreference",
CapacityReservationResourceGroupArn = "capacityReservationResourceGroupArn",
UsageStrategy = "usageStrategy"
},
TimeoutDurationMinutes = 123
},
SpotResizeSpecification = new SpotResizingSpecificationProperty {
AllocationStrategy = "allocationStrategy",
TimeoutDurationMinutes = 123
}
},
TargetOnDemandCapacity = 123,
TargetSpotCapacity = 123
});
Synopsis
Constructors
CfnInstanceFleetConfig(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnInstanceFleetConfig(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
CfnInstanceFleetConfig(Construct, String, ICfnInstanceFleetConfigProps) |
Properties
AttrId | |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
ClusterId | The unique identifier of the EMR cluster. |
InstanceFleetType | The node type that the instance fleet hosts. |
InstanceTypeConfigs |
|
LaunchSpecifications | The launch specification for the instance fleet. |
Name | The friendly name of the instance fleet. |
ResizeSpecifications | The resize specification for the instance fleet. |
TargetOnDemandCapacity | The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand instances to provision. |
TargetSpotCapacity | The target capacity of Spot units for the instance fleet, which determines how many Spot instances to provision. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnInstanceFleetConfig(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnInstanceFleetConfig(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnInstanceFleetConfig(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnInstanceFleetConfig(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
CfnInstanceFleetConfig(Construct, String, ICfnInstanceFleetConfigProps)
public CfnInstanceFleetConfig(Construct scope, string id, ICfnInstanceFleetConfigProps props)
Parameters
- scope Constructs.Construct
Scope in which this resource is defined.
- id System.String
Construct identifier for this resource (unique in its scope).
- props ICfnInstanceFleetConfigProps
Resource properties.
Properties
AttrId
public virtual string AttrId { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Id
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
ClusterId
The unique identifier of the EMR cluster.
public virtual string ClusterId { get; set; }
Property Value
System.String
InstanceFleetType
The node type that the instance fleet hosts.
public virtual string InstanceFleetType { get; set; }
Property Value
System.String
InstanceTypeConfigs
InstanceTypeConfigs
determine the EC2 instances that Amazon EMR attempts to provision to fulfill On-Demand and Spot target capacities.
public virtual object InstanceTypeConfigs { get; set; }
Property Value
System.Object
LaunchSpecifications
The launch specification for the instance fleet.
public virtual object LaunchSpecifications { get; set; }
Property Value
System.Object
Name
The friendly name of the instance fleet.
public virtual string Name { get; set; }
Property Value
System.String
ResizeSpecifications
The resize specification for the instance fleet.
public virtual object ResizeSpecifications { get; set; }
Property Value
System.Object
TargetOnDemandCapacity
The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand instances to provision.
public virtual Nullable<double> TargetOnDemandCapacity { get; set; }
Property Value
System.Nullable<System.Double>
TargetSpotCapacity
The target capacity of Spot units for the instance fleet, which determines how many Spot instances to provision.
public virtual Nullable<double> TargetSpotCapacity { get; set; }
Property Value
System.Nullable<System.Double>
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>