amazonka-application-autoscaling-1.4.5: Amazon Application Auto Scaling 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.ApplicationAutoScaling.RegisterScalableTarget

Contents

Description

Registers or updates a scalable target. A scalable target is a resource that Application Auto Scaling can scale out or scale in. After you have registered a scalable target, you can use this operation to update the minimum and maximum values for your scalable dimension.

After you register a scalable target, you can create and apply scaling policies using PutScalingPolicy . You can view the scaling policies for a service namespace using DescribeScalableTargets . If you are no longer using a scalable target, you can deregister it using DeregisterScalableTarget .

Synopsis

Creating a Request

registerScalableTarget Source #

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

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

  • rstMaxCapacity - The maximum value to scale to in response to a scale out event. This parameter is required if you are registering a scalable target and optional if you are updating one.
  • rstMinCapacity - The minimum value to scale to in response to a scale in event. This parameter is required if you are registering a scalable target and optional if you are updating one.
  • rstRoleARN - The ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf. This parameter is required when you register a scalable target and optional when you update one.
  • rstServiceNamespace - The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .
  • rstResourceId - The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-webapp . * Spot fleet request - The resource type is spot-fleet-request and the unique identifier is the Spot fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .
  • rstScalableDimension - The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

data RegisterScalableTarget Source #

See: registerScalableTarget smart constructor.

Instances

Eq RegisterScalableTarget Source # 
Data RegisterScalableTarget Source # 

Methods

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

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

toConstr :: RegisterScalableTarget -> Constr #

dataTypeOf :: RegisterScalableTarget -> DataType #

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

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

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

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

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

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

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

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

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

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

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

Methods

rnf :: RegisterScalableTarget -> () #

AWSRequest RegisterScalableTarget Source # 
ToPath RegisterScalableTarget Source # 
ToHeaders RegisterScalableTarget Source # 
ToQuery RegisterScalableTarget Source # 
type Rep RegisterScalableTarget Source # 
type Rep RegisterScalableTarget = D1 (MetaData "RegisterScalableTarget" "Network.AWS.ApplicationAutoScaling.RegisterScalableTarget" "amazonka-application-autoscaling-1.4.5-6PGPk1k3xtd5TOCWvikLzL" False) (C1 (MetaCons "RegisterScalableTarget'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_rstMaxCapacity") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int))) ((:*:) (S1 (MetaSel (Just Symbol "_rstMinCapacity") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int))) (S1 (MetaSel (Just Symbol "_rstRoleARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))) ((:*:) (S1 (MetaSel (Just Symbol "_rstServiceNamespace") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ServiceNamespace)) ((:*:) (S1 (MetaSel (Just Symbol "_rstResourceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_rstScalableDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ScalableDimension))))))
type Rs RegisterScalableTarget Source # 

Request Lenses

rstMaxCapacity :: Lens' RegisterScalableTarget (Maybe Int) Source #

The maximum value to scale to in response to a scale out event. This parameter is required if you are registering a scalable target and optional if you are updating one.

rstMinCapacity :: Lens' RegisterScalableTarget (Maybe Int) Source #

The minimum value to scale to in response to a scale in event. This parameter is required if you are registering a scalable target and optional if you are updating one.

rstRoleARN :: Lens' RegisterScalableTarget (Maybe Text) Source #

The ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf. This parameter is required when you register a scalable target and optional when you update one.

rstServiceNamespace :: Lens' RegisterScalableTarget ServiceNamespace Source #

The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .

rstResourceId :: Lens' RegisterScalableTarget Text Source #

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-webapp . * Spot fleet request - The resource type is spot-fleet-request and the unique identifier is the Spot fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .

rstScalableDimension :: Lens' RegisterScalableTarget ScalableDimension Source #

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

Destructuring the Response

registerScalableTargetResponse Source #

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

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

data RegisterScalableTargetResponse Source #

See: registerScalableTargetResponse smart constructor.

Instances

Eq RegisterScalableTargetResponse Source # 
Data RegisterScalableTargetResponse Source # 

Methods

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

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

toConstr :: RegisterScalableTargetResponse -> Constr #

dataTypeOf :: RegisterScalableTargetResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Read RegisterScalableTargetResponse Source # 
Show RegisterScalableTargetResponse Source # 
Generic RegisterScalableTargetResponse Source # 
NFData RegisterScalableTargetResponse Source # 
type Rep RegisterScalableTargetResponse Source # 
type Rep RegisterScalableTargetResponse = D1 (MetaData "RegisterScalableTargetResponse" "Network.AWS.ApplicationAutoScaling.RegisterScalableTarget" "amazonka-application-autoscaling-1.4.5-6PGPk1k3xtd5TOCWvikLzL" True) (C1 (MetaCons "RegisterScalableTargetResponse'" PrefixI True) (S1 (MetaSel (Just Symbol "_rstrsResponseStatus") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)))

Response Lenses