Class EmrCreateCluster.InstanceGroupConfigProperty
Configuration defining a new instance group.
Inheritance
Namespace: Amazon.CDK.AWS.StepFunctions.Tasks
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class InstanceGroupConfigProperty : Object, EmrCreateCluster.IInstanceGroupConfigProperty
Syntax (vb)
Public Class InstanceGroupConfigProperty
Inherits Object
Implements EmrCreateCluster.IInstanceGroupConfigProperty
Remarks
See: https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceGroupConfig.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;
using Amazon.CDK.AWS.StepFunctions.Tasks;
ConfigurationProperty configurationProperty_;
Size size;
var instanceGroupConfigProperty = new InstanceGroupConfigProperty {
InstanceCount = 123,
InstanceRole = EmrCreateCluster.InstanceRoleType.MASTER,
InstanceType = "instanceType",
// 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 = EmrCreateCluster.ScalingAdjustmentType.CHANGE_IN_CAPACITY,
CoolDown = 123
},
// the properties below are optional
Market = EmrCreateCluster.InstanceMarket.ON_DEMAND
},
Name = "name",
Trigger = new ScalingTriggerProperty {
CloudWatchAlarmDefinition = new CloudWatchAlarmDefinitionProperty {
ComparisonOperator = EmrCreateCluster.CloudWatchAlarmComparisonOperator.GREATER_THAN_OR_EQUAL,
MetricName = "metricName",
Period = Duration.Minutes(30),
// the properties below are optional
Dimensions = new [] { new MetricDimensionProperty {
Key = "key",
Value = "value"
} },
EvaluationPeriods = 123,
Namespace = "namespace",
Statistic = EmrCreateCluster.CloudWatchAlarmStatistic.SAMPLE_COUNT,
Threshold = 123,
Unit = EmrCreateCluster.CloudWatchAlarmUnit.NONE
}
},
// the properties below are optional
Description = "description"
} }
},
BidPrice = "bidPrice",
Configurations = new [] { new ConfigurationProperty {
Classification = "classification",
Configurations = new [] { configurationProperty_ },
Properties = new Dictionary<string, string> {
{ "propertiesKey", "properties" }
}
} },
EbsConfiguration = new EbsConfigurationProperty {
EbsBlockDeviceConfigs = new [] { new EbsBlockDeviceConfigProperty {
VolumeSpecification = new VolumeSpecificationProperty {
VolumeSize = size,
VolumeType = EmrCreateCluster.EbsBlockDeviceVolumeType.GP3,
// the properties below are optional
Iops = 123
},
// the properties below are optional
VolumesPerInstance = 123
} },
EbsOptimized = false
},
Market = EmrCreateCluster.InstanceMarket.ON_DEMAND,
Name = "name"
};
Synopsis
Constructors
InstanceGroupConfigProperty() |
Properties
AutoScalingPolicy | An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster. |
BidPrice | The bid price for each EC2 Spot instance type as defined by InstanceType. |
Configurations | The list of configurations supplied for an EMR cluster instance group. |
EbsConfiguration | EBS configurations that will be attached to each EC2 instance in the instance group. |
InstanceCount | Target number of instances for the instance group. |
InstanceRole | The role of the instance group in the cluster. |
InstanceType | The EC2 instance type for all instances in the instance group. |
Market | Market type of the EC2 instances used to create a cluster node. |
Name | Friendly name given to the instance group. |
Constructors
InstanceGroupConfigProperty()
public InstanceGroupConfigProperty()
Properties
AutoScalingPolicy
An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster.
public EmrCreateCluster.IAutoScalingPolicyProperty AutoScalingPolicy { get; set; }
Property Value
EmrCreateCluster.IAutoScalingPolicyProperty
Remarks
Default: - None
BidPrice
The bid price for each EC2 Spot instance type as defined by InstanceType.
public string BidPrice { get; set; }
Property Value
System.String
Remarks
Expressed in USD.
Default: - None
Configurations
The list of configurations supplied for an EMR cluster instance group.
public EmrCreateCluster.IConfigurationProperty[] Configurations { get; set; }
Property Value
EmrCreateCluster.IConfigurationProperty[]
Remarks
Default: - None
EbsConfiguration
EBS configurations that will be attached to each EC2 instance in the instance group.
public EmrCreateCluster.IEbsConfigurationProperty EbsConfiguration { get; set; }
Property Value
EmrCreateCluster.IEbsConfigurationProperty
Remarks
Default: - None
InstanceCount
Target number of instances for the instance group.
public double InstanceCount { get; set; }
Property Value
System.Double
InstanceRole
The role of the instance group in the cluster.
public EmrCreateCluster.InstanceRoleType InstanceRole { get; set; }
Property Value
EmrCreateCluster.InstanceRoleType
InstanceType
The EC2 instance type for all instances in the instance group.
public string InstanceType { get; set; }
Property Value
System.String
Market
Market type of the EC2 instances used to create a cluster node.
public Nullable<EmrCreateCluster.InstanceMarket> Market { get; set; }
Property Value
System.Nullable<EmrCreateCluster.InstanceMarket>
Remarks
Default: - EMR selected default
Name
Friendly name given to the instance group.
public string Name { get; set; }
Property Value
System.String
Remarks
Default: - None