Interface CfnCluster.InstanceGroupConfigProperty
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
CfnCluster.InstanceGroupConfigProperty.Jsii$Proxy
- Enclosing class:
CfnCluster
@Stability(Stable)
public static interface CfnCluster.InstanceGroupConfigProperty
extends software.amazon.jsii.JsiiSerializable
Use
InstanceGroupConfig
to define instance groups for an EMR cluster.
A cluster can not use both instance groups and instance fleets. For more information, see Create a Cluster with Instance Fleets or Uniform Instance Groups in the Amazon EMR Management Guide .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.emr.*; ConfigurationProperty configurationProperty_; InstanceGroupConfigProperty instanceGroupConfigProperty = InstanceGroupConfigProperty.builder() .instanceCount(123) .instanceType("instanceType") // the properties below are optional .autoScalingPolicy(AutoScalingPolicyProperty.builder() .constraints(ScalingConstraintsProperty.builder() .maxCapacity(123) .minCapacity(123) .build()) .rules(List.of(ScalingRuleProperty.builder() .action(ScalingActionProperty.builder() .simpleScalingPolicyConfiguration(SimpleScalingPolicyConfigurationProperty.builder() .scalingAdjustment(123) // the properties below are optional .adjustmentType("adjustmentType") .coolDown(123) .build()) // the properties below are optional .market("market") .build()) .name("name") .trigger(ScalingTriggerProperty.builder() .cloudWatchAlarmDefinition(CloudWatchAlarmDefinitionProperty.builder() .comparisonOperator("comparisonOperator") .metricName("metricName") .period(123) .threshold(123) // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .key("key") .value("value") .build())) .evaluationPeriods(123) .namespace("namespace") .statistic("statistic") .unit("unit") .build()) .build()) // the properties below are optional .description("description") .build())) .build()) .bidPrice("bidPrice") .configurations(List.of(ConfigurationProperty.builder() .classification("classification") .configurationProperties(Map.of( "configurationPropertiesKey", "configurationProperties")) .configurations(List.of(configurationProperty_)) .build())) .customAmiId("customAmiId") .ebsConfiguration(EbsConfigurationProperty.builder() .ebsBlockDeviceConfigs(List.of(EbsBlockDeviceConfigProperty.builder() .volumeSpecification(VolumeSpecificationProperty.builder() .sizeInGb(123) .volumeType("volumeType") // the properties below are optional .iops(123) .throughput(123) .build()) // the properties below are optional .volumesPerInstance(123) .build())) .ebsOptimized(false) .build()) .market("market") .name("name") .build();
- See Also:
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
A builder forCfnCluster.InstanceGroupConfigProperty
static final class
An implementation forCfnCluster.InstanceGroupConfigProperty
-
Method Summary
Modifier and TypeMethodDescriptionbuilder()
default Object
AutoScalingPolicy
is a subproperty of the InstanceGroupConfig property type that specifies the constraints and rules of an automatic scaling policy in Amazon EMR .default String
If specified, indicates that the instance group uses Spot Instances.default Object
default String
The custom AMI ID to use for the provisioned instance group.default Object
EBS configurations that will be attached to each Amazon EC2 instance in the instance group.Target number of instances for the instance group.The Amazon EC2 instance type for all instances in the instance group.default String
Market type of the Amazon EC2 instances used to create a cluster node.default String
getName()
Friendly name given to the instance group.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getInstanceCount
Target number of instances for the instance group.- See Also:
-
getInstanceType
The Amazon EC2 instance type for all instances in the instance group.- See Also:
-
getAutoScalingPolicy
AutoScalingPolicy
is a subproperty of the InstanceGroupConfig property type that specifies the constraints and rules of an automatic scaling policy in Amazon EMR . The automatic scaling policy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. Only core and task instance groups can use automatic scaling policies. For more information, see Using Automatic Scaling in Amazon EMR .- See Also:
-
getBidPrice
If specified, indicates that the instance group uses Spot Instances.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 Also:
-
getConfigurations
Amazon EMR releases 4.x or later.
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 Also:
-
getCustomAmiId
The custom AMI ID to use for the provisioned instance group.- See Also:
-
getEbsConfiguration
EBS configurations that will be attached to each Amazon EC2 instance in the instance group.- See Also:
-
getMarket
Market type of the Amazon EC2 instances used to create a cluster node.- See Also:
-
getName
Friendly name given to the instance group.- See Also:
-
builder
-