Class CfnInstanceGroupConfigProps
Properties for defining a CfnInstanceGroupConfig.
Implements
Inherited Members
Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnInstanceGroupConfigProps : ICfnInstanceGroupConfigProps
Syntax (vb)
Public Class CfnInstanceGroupConfigProps Implements ICfnInstanceGroupConfigProps
Remarks
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 cfnInstanceGroupConfigProps = new CfnInstanceGroupConfigProps {
InstanceCount = 123,
InstanceRole = "instanceRole",
InstanceType = "instanceType",
JobFlowId = "jobFlowId",
// the properties below are optional
AutoScalingPolicy = new AutoScalingPolicyProperty {
Constraints = new ScalingConstraintsProperty {
MaxCapacity = 123,
MinCapacity = 123
},
Rules = new [] { new ScalingRuleProperty {
Action = new ScalingActionProperty {
SimpleScalingPolicyConfiguration = new SimpleScalingPolicyConfigurationProperty {
ScalingAdjustment = 123,
// the properties below are optional
AdjustmentType = "adjustmentType",
CoolDown = 123
},
// the properties below are optional
Market = "market"
},
Name = "name",
Trigger = new ScalingTriggerProperty {
CloudWatchAlarmDefinition = new CloudWatchAlarmDefinitionProperty {
ComparisonOperator = "comparisonOperator",
MetricName = "metricName",
Period = 123,
Threshold = 123,
// the properties below are optional
Dimensions = new [] { new MetricDimensionProperty {
Key = "key",
Value = "value"
} },
EvaluationPeriods = 123,
Namespace = "namespace",
Statistic = "statistic",
Unit = "unit"
}
},
// the properties below are optional
Description = "description"
} }
},
BidPrice = "bidPrice",
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
},
Market = "market",
Name = "name"
};
Synopsis
Constructors
| CfnInstanceGroupConfigProps() | Properties for defining a |
Properties
| AutoScalingPolicy |
|
| BidPrice | If specified, indicates that the instance group uses Spot Instances. |
| Configurations | Amazon EMR releases 4.x or later. |
| CustomAmiId | The custom AMI ID to use for the provisioned instance group. |
| EbsConfiguration |
|
| InstanceCount | Target number of instances for the instance group. |
| InstanceRole | The role of the instance group in the cluster. |
| InstanceType | The Amazon EC2 instance type for all instances in the instance group. |
| JobFlowId | The ID of an Amazon EMR cluster that you want to associate this instance group with. |
| Market | Market type of the Amazon EC2 instances used to create a cluster node. |
| Name | Friendly name given to the instance group. |
Constructors
CfnInstanceGroupConfigProps()
Properties for defining a CfnInstanceGroupConfig.
public CfnInstanceGroupConfigProps()
Remarks
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 cfnInstanceGroupConfigProps = new CfnInstanceGroupConfigProps {
InstanceCount = 123,
InstanceRole = "instanceRole",
InstanceType = "instanceType",
JobFlowId = "jobFlowId",
// the properties below are optional
AutoScalingPolicy = new AutoScalingPolicyProperty {
Constraints = new ScalingConstraintsProperty {
MaxCapacity = 123,
MinCapacity = 123
},
Rules = new [] { new ScalingRuleProperty {
Action = new ScalingActionProperty {
SimpleScalingPolicyConfiguration = new SimpleScalingPolicyConfigurationProperty {
ScalingAdjustment = 123,
// the properties below are optional
AdjustmentType = "adjustmentType",
CoolDown = 123
},
// the properties below are optional
Market = "market"
},
Name = "name",
Trigger = new ScalingTriggerProperty {
CloudWatchAlarmDefinition = new CloudWatchAlarmDefinitionProperty {
ComparisonOperator = "comparisonOperator",
MetricName = "metricName",
Period = 123,
Threshold = 123,
// the properties below are optional
Dimensions = new [] { new MetricDimensionProperty {
Key = "key",
Value = "value"
} },
EvaluationPeriods = 123,
Namespace = "namespace",
Statistic = "statistic",
Unit = "unit"
}
},
// the properties below are optional
Description = "description"
} }
},
BidPrice = "bidPrice",
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
},
Market = "market",
Name = "name"
};
Properties
AutoScalingPolicy
AutoScalingPolicy is a subproperty of InstanceGroupConfig .
public object? AutoScalingPolicy { get; set; }
Property Value
Remarks
AutoScalingPolicy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. For more information, see Using Automatic Scaling in Amazon EMR in the Amazon EMR Management Guide .
Type union: either IResolvable or CfnInstanceGroupConfig.IAutoScalingPolicyProperty
BidPrice
If specified, indicates that the instance group uses Spot Instances.
public string? BidPrice { get; set; }
Property Value
Remarks
This is the maximum price you are willing to pay for Spot Instances. Specify OnDemandPrice to set the amount equal to the On-Demand price, or specify an amount in USD.
Configurations
Amazon EMR releases 4.x or later.
public object? Configurations { get; set; }
Property Value
Remarks
The list of configurations supplied for an Amazon EMR cluster instance group. You can specify a separate configuration for each instance group (master, core, and task).
Type union: either IResolvable or (either IResolvable or CfnInstanceGroupConfig.IConfigurationProperty)[]
CustomAmiId
The custom AMI ID to use for the provisioned instance group.
public string? CustomAmiId { get; set; }
Property Value
Remarks
EbsConfiguration
EbsConfiguration determines the EBS volumes to attach to EMR cluster instances.
public object? EbsConfiguration { get; set; }
Property Value
Remarks
InstanceCount
Target number of instances for the instance group.
public double InstanceCount { get; set; }
Property Value
Remarks
InstanceRole
The role of the instance group in the cluster.
public string InstanceRole { get; set; }
Property Value
Remarks
InstanceType
The Amazon EC2 instance type for all instances in the instance group.
public string InstanceType { get; set; }
Property Value
Remarks
JobFlowId
The ID of an Amazon EMR cluster that you want to associate this instance group with.
public string JobFlowId { get; set; }
Property Value
Remarks
Market
Market type of the Amazon EC2 instances used to create a cluster node.
public string? Market { get; set; }
Property Value
Remarks
Name
Friendly name given to the instance group.
public string? Name { get; set; }