amazonka-emr-2.0: Amazon EMR SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.EMR.Types.InstanceGroup

Description

 
Synopsis

Documentation

data InstanceGroup Source #

This entity represents an instance group, which is a group of instances that have common purpose. For example, CORE instance group is used for HDFS.

See: newInstanceGroup smart constructor.

Constructors

InstanceGroup' 

Fields

Instances

Instances details
FromJSON InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

Generic InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

Associated Types

type Rep InstanceGroup :: Type -> Type #

Read InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

Show InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

NFData InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

Methods

rnf :: InstanceGroup -> () #

Eq InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

Hashable InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

type Rep InstanceGroup Source # 
Instance details

Defined in Amazonka.EMR.Types.InstanceGroup

type Rep InstanceGroup = D1 ('MetaData "InstanceGroup" "Amazonka.EMR.Types.InstanceGroup" "amazonka-emr-2.0-B3cWhP6sdymF3IBUMdPGcd" 'False) (C1 ('MetaCons "InstanceGroup'" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "autoScalingPolicy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe AutoScalingPolicyDescription)) :*: S1 ('MetaSel ('Just "bidPrice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "configurations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Configuration])) :*: S1 ('MetaSel ('Just "configurationsVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Integer)))) :*: ((S1 ('MetaSel ('Just "customAmiId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "ebsBlockDevices") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [EbsBlockDevice]))) :*: (S1 ('MetaSel ('Just "ebsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "instanceGroupType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe InstanceGroupType)))))) :*: (((S1 ('MetaSel ('Just "instanceType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "lastSuccessfullyAppliedConfigurations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Configuration]))) :*: (S1 ('MetaSel ('Just "lastSuccessfullyAppliedConfigurationsVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Integer)) :*: S1 ('MetaSel ('Just "market") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe MarketType)))) :*: ((S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "requestedInstanceCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int))) :*: (S1 ('MetaSel ('Just "runningInstanceCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: (S1 ('MetaSel ('Just "shrinkPolicy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ShrinkPolicy)) :*: S1 ('MetaSel ('Just "status") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe InstanceGroupStatus))))))))

newInstanceGroup :: InstanceGroup Source #

Create a value of InstanceGroup with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:autoScalingPolicy:InstanceGroup', instanceGroup_autoScalingPolicy - An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster. The automatic scaling policy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. See PutAutoScalingPolicy.

$sel:bidPrice:InstanceGroup', instanceGroup_bidPrice - 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.

InstanceGroup, instanceGroup_configurations - 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).

$sel:configurationsVersion:InstanceGroup', instanceGroup_configurationsVersion - The version number of the requested configuration specification for this instance group.

$sel:customAmiId:InstanceGroup', instanceGroup_customAmiId - The custom AMI ID to use for the provisioned instance group.

$sel:ebsBlockDevices:InstanceGroup', instanceGroup_ebsBlockDevices - The EBS block devices that are mapped to this instance group.

$sel:ebsOptimized:InstanceGroup', instanceGroup_ebsOptimized - If the instance group is EBS-optimized. An Amazon EBS-optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.

$sel:id:InstanceGroup', instanceGroup_id - The identifier of the instance group.

$sel:instanceGroupType:InstanceGroup', instanceGroup_instanceGroupType - The type of the instance group. Valid values are MASTER, CORE or TASK.

$sel:instanceType:InstanceGroup', instanceGroup_instanceType - The EC2 instance type for all instances in the instance group.

$sel:lastSuccessfullyAppliedConfigurations:InstanceGroup', instanceGroup_lastSuccessfullyAppliedConfigurations - A list of configurations that were successfully applied for an instance group last time.

$sel:lastSuccessfullyAppliedConfigurationsVersion:InstanceGroup', instanceGroup_lastSuccessfullyAppliedConfigurationsVersion - The version number of a configuration specification that was successfully applied for an instance group last time.

$sel:market:InstanceGroup', instanceGroup_market - The marketplace to provision instances for this group. Valid values are ON_DEMAND or SPOT.

$sel:name:InstanceGroup', instanceGroup_name - The name of the instance group.

$sel:requestedInstanceCount:InstanceGroup', instanceGroup_requestedInstanceCount - The target number of instances for the instance group.

$sel:runningInstanceCount:InstanceGroup', instanceGroup_runningInstanceCount - The number of instances currently running in this instance group.

$sel:shrinkPolicy:InstanceGroup', instanceGroup_shrinkPolicy - Policy for customizing shrink operations.

InstanceGroup, instanceGroup_status - The current status of the instance group.

instanceGroup_autoScalingPolicy :: Lens' InstanceGroup (Maybe AutoScalingPolicyDescription) Source #

An automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster. The automatic scaling policy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric. See PutAutoScalingPolicy.

instanceGroup_bidPrice :: Lens' InstanceGroup (Maybe Text) Source #

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.

instanceGroup_configurations :: Lens' InstanceGroup (Maybe [Configuration]) Source #

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

instanceGroup_configurationsVersion :: Lens' InstanceGroup (Maybe Integer) Source #

The version number of the requested configuration specification for this instance group.

instanceGroup_customAmiId :: Lens' InstanceGroup (Maybe Text) Source #

The custom AMI ID to use for the provisioned instance group.

instanceGroup_ebsBlockDevices :: Lens' InstanceGroup (Maybe [EbsBlockDevice]) Source #

The EBS block devices that are mapped to this instance group.

instanceGroup_ebsOptimized :: Lens' InstanceGroup (Maybe Bool) Source #

If the instance group is EBS-optimized. An Amazon EBS-optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.

instanceGroup_id :: Lens' InstanceGroup (Maybe Text) Source #

The identifier of the instance group.

instanceGroup_instanceGroupType :: Lens' InstanceGroup (Maybe InstanceGroupType) Source #

The type of the instance group. Valid values are MASTER, CORE or TASK.

instanceGroup_instanceType :: Lens' InstanceGroup (Maybe Text) Source #

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

instanceGroup_lastSuccessfullyAppliedConfigurations :: Lens' InstanceGroup (Maybe [Configuration]) Source #

A list of configurations that were successfully applied for an instance group last time.

instanceGroup_lastSuccessfullyAppliedConfigurationsVersion :: Lens' InstanceGroup (Maybe Integer) Source #

The version number of a configuration specification that was successfully applied for an instance group last time.

instanceGroup_market :: Lens' InstanceGroup (Maybe MarketType) Source #

The marketplace to provision instances for this group. Valid values are ON_DEMAND or SPOT.

instanceGroup_name :: Lens' InstanceGroup (Maybe Text) Source #

The name of the instance group.

instanceGroup_requestedInstanceCount :: Lens' InstanceGroup (Maybe Int) Source #

The target number of instances for the instance group.

instanceGroup_runningInstanceCount :: Lens' InstanceGroup (Maybe Int) Source #

The number of instances currently running in this instance group.

instanceGroup_shrinkPolicy :: Lens' InstanceGroup (Maybe ShrinkPolicy) Source #

Policy for customizing shrink operations.

instanceGroup_status :: Lens' InstanceGroup (Maybe InstanceGroupStatus) Source #

The current status of the instance group.