amazonka-emr-1.5.0: Amazon Elastic MapReduce SDK.

Copyright(c) 2013-2017 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EMR.PutAutoScalingPolicy

Contents

Description

Creates or updates 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.

Synopsis

Creating a Request

putAutoScalingPolicy Source #

Creates a value of PutAutoScalingPolicy with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • paspClusterId - Specifies the ID of a cluster. The instance group to which the automatic scaling policy is applied is within this cluster.
  • paspInstanceGroupId - Specifies the ID of the instance group to which the automatic scaling policy is applied.
  • paspAutoScalingPolicy - Specifies the definition of the automatic scaling policy.

data PutAutoScalingPolicy Source #

See: putAutoScalingPolicy smart constructor.

Instances

Eq PutAutoScalingPolicy Source # 
Data PutAutoScalingPolicy Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PutAutoScalingPolicy -> c PutAutoScalingPolicy #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PutAutoScalingPolicy #

toConstr :: PutAutoScalingPolicy -> Constr #

dataTypeOf :: PutAutoScalingPolicy -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PutAutoScalingPolicy) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PutAutoScalingPolicy) #

gmapT :: (forall b. Data b => b -> b) -> PutAutoScalingPolicy -> PutAutoScalingPolicy #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PutAutoScalingPolicy -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PutAutoScalingPolicy -> r #

gmapQ :: (forall d. Data d => d -> u) -> PutAutoScalingPolicy -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PutAutoScalingPolicy -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicy -> m PutAutoScalingPolicy #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicy -> m PutAutoScalingPolicy #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicy -> m PutAutoScalingPolicy #

Read PutAutoScalingPolicy Source # 
Show PutAutoScalingPolicy Source # 
Generic PutAutoScalingPolicy Source # 
Hashable PutAutoScalingPolicy Source # 
ToJSON PutAutoScalingPolicy Source # 
NFData PutAutoScalingPolicy Source # 

Methods

rnf :: PutAutoScalingPolicy -> () #

AWSRequest PutAutoScalingPolicy Source # 
ToQuery PutAutoScalingPolicy Source # 
ToPath PutAutoScalingPolicy Source # 
ToHeaders PutAutoScalingPolicy Source # 
type Rep PutAutoScalingPolicy Source # 
type Rep PutAutoScalingPolicy = D1 (MetaData "PutAutoScalingPolicy" "Network.AWS.EMR.PutAutoScalingPolicy" "amazonka-emr-1.5.0-C1GqpVtJ9PJGrzHDjJdK61" False) (C1 (MetaCons "PutAutoScalingPolicy'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_paspClusterId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_paspInstanceGroupId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_paspAutoScalingPolicy") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 AutoScalingPolicy)))))
type Rs PutAutoScalingPolicy Source # 

Request Lenses

paspClusterId :: Lens' PutAutoScalingPolicy Text Source #

Specifies the ID of a cluster. The instance group to which the automatic scaling policy is applied is within this cluster.

paspInstanceGroupId :: Lens' PutAutoScalingPolicy Text Source #

Specifies the ID of the instance group to which the automatic scaling policy is applied.

paspAutoScalingPolicy :: Lens' PutAutoScalingPolicy AutoScalingPolicy Source #

Specifies the definition of the automatic scaling policy.

Destructuring the Response

putAutoScalingPolicyResponse Source #

Creates a value of PutAutoScalingPolicyResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data PutAutoScalingPolicyResponse Source #

See: putAutoScalingPolicyResponse smart constructor.

Instances

Eq PutAutoScalingPolicyResponse Source # 
Data PutAutoScalingPolicyResponse Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PutAutoScalingPolicyResponse -> c PutAutoScalingPolicyResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PutAutoScalingPolicyResponse #

toConstr :: PutAutoScalingPolicyResponse -> Constr #

dataTypeOf :: PutAutoScalingPolicyResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PutAutoScalingPolicyResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PutAutoScalingPolicyResponse) #

gmapT :: (forall b. Data b => b -> b) -> PutAutoScalingPolicyResponse -> PutAutoScalingPolicyResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PutAutoScalingPolicyResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PutAutoScalingPolicyResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> PutAutoScalingPolicyResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PutAutoScalingPolicyResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicyResponse -> m PutAutoScalingPolicyResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicyResponse -> m PutAutoScalingPolicyResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PutAutoScalingPolicyResponse -> m PutAutoScalingPolicyResponse #

Read PutAutoScalingPolicyResponse Source # 
Show PutAutoScalingPolicyResponse Source # 
Generic PutAutoScalingPolicyResponse Source # 
NFData PutAutoScalingPolicyResponse Source # 
type Rep PutAutoScalingPolicyResponse Source # 
type Rep PutAutoScalingPolicyResponse = D1 (MetaData "PutAutoScalingPolicyResponse" "Network.AWS.EMR.PutAutoScalingPolicy" "amazonka-emr-1.5.0-C1GqpVtJ9PJGrzHDjJdK61" False) (C1 (MetaCons "PutAutoScalingPolicyResponse'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_pasprsClusterId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_pasprsAutoScalingPolicy") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe AutoScalingPolicyDescription)))) ((:*:) (S1 (MetaSel (Just Symbol "_pasprsInstanceGroupId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_pasprsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int)))))

Response Lenses

pasprsClusterId :: Lens' PutAutoScalingPolicyResponse (Maybe Text) Source #

Specifies the ID of a cluster. The instance group to which the automatic scaling policy is applied is within this cluster.

pasprsInstanceGroupId :: Lens' PutAutoScalingPolicyResponse (Maybe Text) Source #

Specifies the ID of the instance group to which the scaling policy is applied.