amazonka-emr-1.4.5: Amazon Elastic MapReduce SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@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 #

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 #

See: putAutoScalingPolicy smart constructor.

Instances

Eq PutAutoScalingPolicy # 
Data PutAutoScalingPolicy # 

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 # 
Show PutAutoScalingPolicy # 
Generic PutAutoScalingPolicy # 
Hashable PutAutoScalingPolicy # 
ToJSON PutAutoScalingPolicy # 
NFData PutAutoScalingPolicy # 

Methods

rnf :: PutAutoScalingPolicy -> () #

AWSRequest PutAutoScalingPolicy # 
ToQuery PutAutoScalingPolicy # 
ToPath PutAutoScalingPolicy # 
ToHeaders PutAutoScalingPolicy # 
type Rep PutAutoScalingPolicy # 
type Rep PutAutoScalingPolicy = D1 (MetaData "PutAutoScalingPolicy" "Network.AWS.EMR.PutAutoScalingPolicy" "amazonka-emr-1.4.5-GRo1oO6f7JSBJNAYUVYNd0" 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 # 

Request Lenses

paspClusterId :: Lens' PutAutoScalingPolicy Text #

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 #

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

paspAutoScalingPolicy :: Lens' PutAutoScalingPolicy AutoScalingPolicy #

Specifies the definition of the automatic scaling policy.

Destructuring the Response

putAutoScalingPolicyResponse #

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 #

See: putAutoScalingPolicyResponse smart constructor.

Instances

Eq PutAutoScalingPolicyResponse # 
Data PutAutoScalingPolicyResponse # 

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 # 
Show PutAutoScalingPolicyResponse # 
Generic PutAutoScalingPolicyResponse # 
NFData PutAutoScalingPolicyResponse # 
type Rep PutAutoScalingPolicyResponse # 
type Rep PutAutoScalingPolicyResponse = D1 (MetaData "PutAutoScalingPolicyResponse" "Network.AWS.EMR.PutAutoScalingPolicy" "amazonka-emr-1.4.5-GRo1oO6f7JSBJNAYUVYNd0" 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 DecidedUnpack) (Rec0 Int)))))

Response Lenses

pasprsClusterId :: Lens' PutAutoScalingPolicyResponse (Maybe Text) #

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

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