amazonka-ecs-2.0: Amazon EC2 Container Service 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.ECS.Types.PlacementStrategy

Description

 
Synopsis

Documentation

data PlacementStrategy Source #

The task placement strategy for a task or service. For more information, see Task placement strategies in the Amazon Elastic Container Service Developer Guide.

See: newPlacementStrategy smart constructor.

Constructors

PlacementStrategy' 

Fields

  • field :: Maybe Text

    The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that's applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

  • type' :: Maybe PlacementStrategyType

    The type of placement strategy. The random placement strategy randomly places tasks on available candidates. The spread placement strategy spreads placement across available candidates evenly based on the field parameter. The binpack strategy places tasks on available candidates that have the least available amount of the resource that's specified with the field parameter. For example, if you binpack on memory, a task is placed on the instance with the least amount of remaining memory but still enough to run the task.

Instances

Instances details
FromJSON PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

ToJSON PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

Generic PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

Associated Types

type Rep PlacementStrategy :: Type -> Type #

Read PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

Show PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

NFData PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

Methods

rnf :: PlacementStrategy -> () #

Eq PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

Hashable PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

type Rep PlacementStrategy Source # 
Instance details

Defined in Amazonka.ECS.Types.PlacementStrategy

type Rep PlacementStrategy = D1 ('MetaData "PlacementStrategy" "Amazonka.ECS.Types.PlacementStrategy" "amazonka-ecs-2.0-3xFxVqi9x5nBZ44jBEC5G8" 'False) (C1 ('MetaCons "PlacementStrategy'" 'PrefixI 'True) (S1 ('MetaSel ('Just "field") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "type'") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PlacementStrategyType))))

newPlacementStrategy :: PlacementStrategy Source #

Create a value of PlacementStrategy 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:field:PlacementStrategy', placementStrategy_field - The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that's applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

$sel:type':PlacementStrategy', placementStrategy_type - The type of placement strategy. The random placement strategy randomly places tasks on available candidates. The spread placement strategy spreads placement across available candidates evenly based on the field parameter. The binpack strategy places tasks on available candidates that have the least available amount of the resource that's specified with the field parameter. For example, if you binpack on memory, a task is placed on the instance with the least amount of remaining memory but still enough to run the task.

placementStrategy_field :: Lens' PlacementStrategy (Maybe Text) Source #

The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that's applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

placementStrategy_type :: Lens' PlacementStrategy (Maybe PlacementStrategyType) Source #

The type of placement strategy. The random placement strategy randomly places tasks on available candidates. The spread placement strategy spreads placement across available candidates evenly based on the field parameter. The binpack strategy places tasks on available candidates that have the least available amount of the resource that's specified with the field parameter. For example, if you binpack on memory, a task is placed on the instance with the least amount of remaining memory but still enough to run the task.