Class CfnInstanceFleetConfig
Use InstanceFleetConfig to define instance fleets for an EMR cluster.
Inherited Members
Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnInstanceFleetConfig : CfnResource, IInspectable, IInstanceFleetConfigRef, IConstruct, IDependable, IEnvironmentAware
Syntax (vb)
Public Class CfnInstanceFleetConfig Inherits CfnResource Implements IInspectable, IInstanceFleetConfigRef, IConstruct, IDependable, IEnvironmentAware
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> 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(Construct, string, ICfnInstanceFleetConfigProps) | Create a new |
Properties
| AttrId | Use |
| CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
| CfnProperties | Use |
| CfnPropertyNames | Use |
| ClusterId | The unique identifier of the EMR cluster. |
| InstanceFleetConfigRef | A reference to a InstanceFleetConfig resource. |
| 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. |
| IsCfnInstanceFleetConfig(object) | Checks whether the given object is a CfnInstanceFleetConfig. |
| RenderProperties(IDictionary<string, object>) | Use |
Constructors
CfnInstanceFleetConfig(Construct, string, ICfnInstanceFleetConfigProps)
Create a new AWS::EMR::InstanceFleetConfig.
public CfnInstanceFleetConfig(Construct scope, string id, ICfnInstanceFleetConfigProps props)
Parameters
- scope Construct
Scope in which this resource is defined.
- id string
Construct identifier for this resource (unique in its scope).
- props ICfnInstanceFleetConfigProps
Resource properties.
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
Properties
AttrId
Use InstanceFleetConfig to define instance fleets for an EMR cluster.
public virtual string AttrId { get; }
Property Value
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
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
CfnProperties
Use InstanceFleetConfig to define instance fleets for an EMR cluster.
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
Overrides
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
CfnPropertyNames
Use InstanceFleetConfig to define instance fleets for an EMR cluster.
protected override IDictionary<string, string> CfnPropertyNames { get; }
Property Value
Overrides
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
ClusterId
The unique identifier of the EMR cluster.
public virtual string ClusterId { get; set; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
InstanceFleetConfigRef
A reference to a InstanceFleetConfig resource.
public virtual IInstanceFleetConfigReference InstanceFleetConfigRef { get; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
InstanceFleetType
The node type that the instance fleet hosts.
public virtual string InstanceFleetType { get; set; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
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
Remarks
Type union: either IResolvable or (either IResolvable or CfnInstanceFleetConfig.IInstanceTypeConfigProperty)[]
LaunchSpecifications
The launch specification for the instance fleet.
public virtual object? LaunchSpecifications { get; set; }
Property Value
Remarks
Type union: either IResolvable or CfnInstanceFleetConfig.IInstanceFleetProvisioningSpecificationsProperty
Name
The friendly name of the instance fleet.
public virtual string? Name { get; set; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
ResizeSpecifications
The resize specification for the instance fleet.
public virtual object? ResizeSpecifications { get; set; }
Property Value
Remarks
Type union: either IResolvable or CfnInstanceFleetConfig.IInstanceFleetResizingSpecificationsProperty
TargetOnDemandCapacity
The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand instances to provision.
public virtual double? TargetOnDemandCapacity { get; set; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
TargetSpotCapacity
The target capacity of Spot units for the instance fleet, which determines how many Spot instances to provision.
public virtual double? TargetSpotCapacity { get; set; }
Property Value
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
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.
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
IsCfnInstanceFleetConfig(object)
Checks whether the given object is a CfnInstanceFleetConfig.
public static bool IsCfnInstanceFleetConfig(object x)
Parameters
- x object
Returns
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated
RenderProperties(IDictionary<string, object>)
Use InstanceFleetConfig to define instance fleets for an EMR cluster.
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props IDictionary<string, object>
Returns
Overrides
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 <code>TaskInstanceFleets</code> subproperty for the <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html">AWS::EMR::Cluster JobFlowInstancesConfig</a> property instead. To use this subproperty, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html">AWS::EMR::Cluster</a> for examples.
CloudformationResource: AWS::EMR::InstanceFleetConfig
ExampleMetadata: fixture=_generated