Show / Hide Table of Contents

Interface ICfnInstanceFleetConfigProps

Properties for defining a CfnInstanceFleetConfig.

Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.AWS.EMR.dll
Syntax (csharp)
public interface ICfnInstanceFleetConfigProps
Syntax (vb)
Public Interface ICfnInstanceFleetConfigProps
Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html

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_;

CfnInstanceFleetConfigProps cfnInstanceFleetConfigProps = 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
                },

                // the properties below are optional
                VolumesPerInstance = 123
            } },
            EbsOptimized = false
        },
        WeightedCapacity = 123
    } },
    LaunchSpecifications = new InstanceFleetProvisioningSpecificationsProperty {
        OnDemandSpecification = new OnDemandProvisioningSpecificationProperty {
            AllocationStrategy = "allocationStrategy"
        },
        SpotSpecification = new SpotProvisioningSpecificationProperty {
            TimeoutAction = "timeoutAction",
            TimeoutDurationMinutes = 123,

            // the properties below are optional
            AllocationStrategy = "allocationStrategy",
            BlockDurationMinutes = 123
        }
    },
    Name = "name",
    TargetOnDemandCapacity = 123,
    TargetSpotCapacity = 123
};

Synopsis

Properties

ClusterId

The unique identifier of the EMR cluster.

InstanceFleetType

The node type that the instance fleet hosts.

InstanceTypeConfigs

InstanceTypeConfigs determine the EC2 instances that Amazon EMR attempts to provision to fulfill On-Demand and Spot target capacities.

LaunchSpecifications

The launch specification for the instance fleet.

Name

The friendly name of 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.

Properties

ClusterId

The unique identifier of the EMR cluster.

string ClusterId { get; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-clusterid

InstanceFleetType

The node type that the instance fleet hosts.

string InstanceFleetType { get; }
Property Value

System.String

Remarks

Allowed Values : TASK

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancefleettype

InstanceTypeConfigs

InstanceTypeConfigs determine the EC2 instances that Amazon EMR attempts to provision to fulfill On-Demand and Spot target capacities.

virtual object InstanceTypeConfigs { get; }
Property Value

System.Object

Remarks

The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-instancetypeconfigs

LaunchSpecifications

The launch specification for the instance fleet.

virtual object LaunchSpecifications { get; }
Property Value

System.Object

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-launchspecifications

Name

The friendly name of the instance fleet.

virtual string Name { get; }
Property Value

System.String

Remarks

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-name

TargetOnDemandCapacity

The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand instances to provision.

virtual Nullable<double> TargetOnDemandCapacity { get; }
Property Value

System.Nullable<System.Double>

Remarks

When the instance fleet launches, Amazon EMR tries to provision On-Demand instances as specified by InstanceTypeConfig . Each instance configuration has a specified WeightedCapacity . When an On-Demand instance is provisioned, the WeightedCapacity units count toward the target capacity. Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a WeightedCapacity of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.

If not specified or set to 0, only Spot instances are provisioned for the instance fleet using TargetSpotCapacity . At least one of TargetSpotCapacity and TargetOnDemandCapacity should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, and its value must be 1.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetondemandcapacity

TargetSpotCapacity

The target capacity of Spot units for the instance fleet, which determines how many Spot instances to provision.

virtual Nullable<double> TargetSpotCapacity { get; }
Property Value

System.Nullable<System.Double>

Remarks

When the instance fleet launches, Amazon EMR tries to provision Spot instances as specified by InstanceTypeConfig . Each instance configuration has a specified WeightedCapacity . When a Spot instance is provisioned, the WeightedCapacity units count toward the target capacity. Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a WeightedCapacity of 5 units, the instance is provisioned, and the target capacity is exceeded by 3 units.

If not specified or set to 0, only On-Demand instances are provisioned for the instance fleet. At least one of TargetSpotCapacity and TargetOnDemandCapacity should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, and its value must be 1.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-instancefleetconfig.html#cfn-elasticmapreduce-instancefleetconfig-targetspotcapacity

Back to top Generated by DocFX