GameLift / Client / update_fleet_capacity

update_fleet_capacity#

GameLift.Client.update_fleet_capacity(**kwargs)#

Updates capacity settings for a fleet. For fleets with multiple locations, use this operation to manage capacity settings in each location individually. Fleet capacity determines the number of game sessions and players that can be hosted based on the fleet configuration. Use this operation to set the following fleet capacity properties:

  • Minimum/maximum size: Set hard limits on fleet capacity. Amazon GameLift cannot set the fleet’s capacity to a value outside of this range, whether the capacity is changed manually or through automatic scaling.

  • Desired capacity: Manually set the number of Amazon EC2 instances to be maintained in a fleet location. Before changing a fleet’s desired capacity, you may want to call DescribeEC2InstanceLimits to get the maximum capacity of the fleet’s Amazon EC2 instance type. Alternatively, consider using automatic scaling to adjust capacity based on player demand.

This operation can be used in the following ways:

  • To update capacity for a fleet’s home Region, or if the fleet has no remote locations, omit the Location parameter. The fleet must be in ACTIVE status.

  • To update capacity for a fleet’s remote location, include the Location parameter set to the location to be updated. The location must be in ACTIVE status.

If successful, capacity settings are updated immediately. In response a change in desired capacity, Amazon GameLift initiates steps to start new instances or terminate existing instances in the requested fleet location. This continues until the location’s active instance count matches the new desired instance count. You can track a fleet’s current capacity by calling DescribeFleetCapacity or DescribeFleetLocationCapacity. If the requested desired instance count is higher than the instance type’s limit, the LimitExceeded exception occurs.

Learn more

Scaling fleet capacity

See also: AWS API Documentation

Request Syntax

response = client.update_fleet_capacity(
    FleetId='string',
    DesiredInstances=123,
    MinSize=123,
    MaxSize=123,
    Location='string'
)
Parameters:
  • FleetId (string) –

    [REQUIRED]

    A unique identifier for the fleet to update capacity settings for. You can use either the fleet ID or ARN value.

  • DesiredInstances (integer) – The number of Amazon EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits. Changes in desired instance value can take up to 1 minute to be reflected when viewing the fleet’s capacity settings.

  • MinSize (integer) – The minimum number of instances that are allowed in the specified fleet location. If this parameter is not set, the default is 0.

  • MaxSize (integer) – The maximum number of instances that are allowed in the specified fleet location. If this parameter is not set, the default is 1.

  • Location (string) – The name of a remote location to update fleet capacity settings for, in the form of an Amazon Web Services Region code such as us-west-2.

Return type:

dict

Returns:

Response Syntax

{
    'FleetId': 'string',
    'FleetArn': 'string',
    'Location': 'string'
}

Response Structure

  • (dict) –

    • FleetId (string) –

      A unique identifier for the fleet that was updated.

    • FleetArn (string) –

      The Amazon Resource Name ( ARN) that is assigned to a Amazon GameLift fleet resource and uniquely identifies it. ARNs are unique across all Regions. Format is arn:aws:gamelift:<region>::fleet/fleet-a1234567-b8c9-0d1e-2fa3-b45c6d7e8912.

    • Location (string) –

      The remote location being updated, expressed as an Amazon Web Services Region code, such as us-west-2.

Exceptions

  • GameLift.Client.exceptions.NotFoundException

  • GameLift.Client.exceptions.ConflictException

  • GameLift.Client.exceptions.LimitExceededException

  • GameLift.Client.exceptions.InvalidFleetStatusException

  • GameLift.Client.exceptions.InternalServiceException

  • GameLift.Client.exceptions.InvalidRequestException

  • GameLift.Client.exceptions.UnauthorizedException

  • GameLift.Client.exceptions.UnsupportedRegionException