Show / Hide Table of Contents

Class CfnInstanceGroupConfigProps

Properties for defining a CfnInstanceGroupConfig.

Inheritance
object
CfnInstanceGroupConfigProps
Implements
ICfnInstanceGroupConfigProps
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.AWS.EMR
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnInstanceGroupConfigProps : ICfnInstanceGroupConfigProps
Syntax (vb)
Public Class CfnInstanceGroupConfigProps Implements ICfnInstanceGroupConfigProps
Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-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.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 CfnInstanceGroupConfig.

Properties

AutoScalingPolicy

AutoScalingPolicy is a subproperty of InstanceGroupConfig .

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

EbsConfiguration determines the EBS volumes to attach to EMR cluster instances.

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

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-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.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

object

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 .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-autoscalingpolicy

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

string

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.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice

Configurations

Amazon EMR releases 4.x or later.

public object? Configurations { get; set; }
Property Value

object

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).

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations

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

string

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-customamiid

EbsConfiguration

EbsConfiguration determines the EBS volumes to attach to EMR cluster instances.

public object? EbsConfiguration { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration

Type union: either IResolvable or CfnInstanceGroupConfig.IEbsConfigurationProperty

InstanceCount

Target number of instances for the instance group.

public double InstanceCount { get; set; }
Property Value

double

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancecount

InstanceRole

The role of the instance group in the cluster.

public string InstanceRole { get; set; }
Property Value

string

Remarks

Allowed Values : TASK

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancerole

InstanceType

The Amazon EC2 instance type for all instances in the instance group.

public string InstanceType { get; set; }
Property Value

string

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancetype

JobFlowId

The ID of an Amazon EMR cluster that you want to associate this instance group with.

public string JobFlowId { get; set; }
Property Value

string

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-jobflowid

Market

Market type of the Amazon EC2 instances used to create a cluster node.

public string? Market { get; set; }
Property Value

string

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-market

Name

Friendly name given to the instance group.

public string? Name { get; set; }
Property Value

string

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-name

Implements

ICfnInstanceGroupConfigProps
Back to top Generated by DocFX