GameLift / Client / register_compute

register_compute#

GameLift.Client.register_compute(**kwargs)#

Registers a compute resource in an Amazon GameLift Anywhere fleet.

For an Anywhere fleet that’s running the Amazon GameLift Agent, the Agent handles all compute registry tasks for you. For an Anywhere fleet that doesn’t use the Agent, call this operation to register fleet computes.

To register a compute, give the compute a name (must be unique within the fleet) and specify the compute resource’s DNS name or IP address. Provide a fleet ID and a fleet location to associate with the compute being registered. You can optionally include the path to a TLS certificate on the compute resource.

If successful, this operation returns compute details, including an Amazon GameLift SDK endpoint or Agent endpoint. Game server processes running on the compute can use this endpoint to communicate with the Amazon GameLift service. Each server process includes the SDK endpoint in its call to the Amazon GameLift server SDK action InitSDK().

To view compute details, call DescribeCompute with the compute name.

Learn more

See also: AWS API Documentation

Request Syntax

response = client.register_compute(
    FleetId='string',
    ComputeName='string',
    CertificatePath='string',
    DnsName='string',
    IpAddress='string',
    Location='string'
)
Parameters:
  • FleetId (string) –

    [REQUIRED]

    A unique identifier for the fleet to register the compute to. You can use either the fleet ID or ARN value.

  • ComputeName (string) –

    [REQUIRED]

    A descriptive label for the compute resource.

  • CertificatePath (string) – The path to a TLS certificate on your compute resource. Amazon GameLift doesn’t validate the path and certificate.

  • DnsName (string) – The DNS name of the compute resource. Amazon GameLift requires either a DNS name or IP address.

  • IpAddress (string) – The IP address of the compute resource. Amazon GameLift requires either a DNS name or IP address. When registering an Anywhere fleet, an IP address is required.

  • Location (string) – The name of a custom location to associate with the compute resource being registered. This parameter is required when registering a compute for an Anywhere fleet.

Return type:

dict

Returns:

Response Syntax

{
    'Compute': {
        'FleetId': 'string',
        'FleetArn': 'string',
        'ComputeName': 'string',
        'ComputeArn': 'string',
        'IpAddress': 'string',
        'DnsName': 'string',
        'ComputeStatus': 'PENDING'|'ACTIVE'|'TERMINATING'|'IMPAIRED',
        'Location': 'string',
        'CreationTime': datetime(2015, 1, 1),
        'OperatingSystem': 'WINDOWS_2012'|'AMAZON_LINUX'|'AMAZON_LINUX_2'|'WINDOWS_2016'|'AMAZON_LINUX_2023',
        'Type': 't2.micro'|'t2.small'|'t2.medium'|'t2.large'|'c3.large'|'c3.xlarge'|'c3.2xlarge'|'c3.4xlarge'|'c3.8xlarge'|'c4.large'|'c4.xlarge'|'c4.2xlarge'|'c4.4xlarge'|'c4.8xlarge'|'c5.large'|'c5.xlarge'|'c5.2xlarge'|'c5.4xlarge'|'c5.9xlarge'|'c5.12xlarge'|'c5.18xlarge'|'c5.24xlarge'|'c5a.large'|'c5a.xlarge'|'c5a.2xlarge'|'c5a.4xlarge'|'c5a.8xlarge'|'c5a.12xlarge'|'c5a.16xlarge'|'c5a.24xlarge'|'r3.large'|'r3.xlarge'|'r3.2xlarge'|'r3.4xlarge'|'r3.8xlarge'|'r4.large'|'r4.xlarge'|'r4.2xlarge'|'r4.4xlarge'|'r4.8xlarge'|'r4.16xlarge'|'r5.large'|'r5.xlarge'|'r5.2xlarge'|'r5.4xlarge'|'r5.8xlarge'|'r5.12xlarge'|'r5.16xlarge'|'r5.24xlarge'|'r5a.large'|'r5a.xlarge'|'r5a.2xlarge'|'r5a.4xlarge'|'r5a.8xlarge'|'r5a.12xlarge'|'r5a.16xlarge'|'r5a.24xlarge'|'m3.medium'|'m3.large'|'m3.xlarge'|'m3.2xlarge'|'m4.large'|'m4.xlarge'|'m4.2xlarge'|'m4.4xlarge'|'m4.10xlarge'|'m5.large'|'m5.xlarge'|'m5.2xlarge'|'m5.4xlarge'|'m5.8xlarge'|'m5.12xlarge'|'m5.16xlarge'|'m5.24xlarge'|'m5a.large'|'m5a.xlarge'|'m5a.2xlarge'|'m5a.4xlarge'|'m5a.8xlarge'|'m5a.12xlarge'|'m5a.16xlarge'|'m5a.24xlarge'|'c5d.large'|'c5d.xlarge'|'c5d.2xlarge'|'c5d.4xlarge'|'c5d.9xlarge'|'c5d.12xlarge'|'c5d.18xlarge'|'c5d.24xlarge'|'c6a.large'|'c6a.xlarge'|'c6a.2xlarge'|'c6a.4xlarge'|'c6a.8xlarge'|'c6a.12xlarge'|'c6a.16xlarge'|'c6a.24xlarge'|'c6i.large'|'c6i.xlarge'|'c6i.2xlarge'|'c6i.4xlarge'|'c6i.8xlarge'|'c6i.12xlarge'|'c6i.16xlarge'|'c6i.24xlarge'|'r5d.large'|'r5d.xlarge'|'r5d.2xlarge'|'r5d.4xlarge'|'r5d.8xlarge'|'r5d.12xlarge'|'r5d.16xlarge'|'r5d.24xlarge'|'m6g.medium'|'m6g.large'|'m6g.xlarge'|'m6g.2xlarge'|'m6g.4xlarge'|'m6g.8xlarge'|'m6g.12xlarge'|'m6g.16xlarge'|'c6g.medium'|'c6g.large'|'c6g.xlarge'|'c6g.2xlarge'|'c6g.4xlarge'|'c6g.8xlarge'|'c6g.12xlarge'|'c6g.16xlarge'|'r6g.medium'|'r6g.large'|'r6g.xlarge'|'r6g.2xlarge'|'r6g.4xlarge'|'r6g.8xlarge'|'r6g.12xlarge'|'r6g.16xlarge'|'c6gn.medium'|'c6gn.large'|'c6gn.xlarge'|'c6gn.2xlarge'|'c6gn.4xlarge'|'c6gn.8xlarge'|'c6gn.12xlarge'|'c6gn.16xlarge'|'c7g.medium'|'c7g.large'|'c7g.xlarge'|'c7g.2xlarge'|'c7g.4xlarge'|'c7g.8xlarge'|'c7g.12xlarge'|'c7g.16xlarge'|'r7g.medium'|'r7g.large'|'r7g.xlarge'|'r7g.2xlarge'|'r7g.4xlarge'|'r7g.8xlarge'|'r7g.12xlarge'|'r7g.16xlarge'|'m7g.medium'|'m7g.large'|'m7g.xlarge'|'m7g.2xlarge'|'m7g.4xlarge'|'m7g.8xlarge'|'m7g.12xlarge'|'m7g.16xlarge'|'g5g.xlarge'|'g5g.2xlarge'|'g5g.4xlarge'|'g5g.8xlarge'|'g5g.16xlarge',
        'GameLiftServiceSdkEndpoint': 'string',
        'GameLiftAgentEndpoint': 'string',
        'InstanceId': 'string',
        'ContainerAttributes': [
            {
                'ContainerName': 'string',
                'ContainerRuntimeId': 'string'
            },
        ],
        'GameServerContainerGroupDefinitionArn': 'string'
    }
}

Response Structure

  • (dict) –

    • Compute (dict) –

      The details of the compute resource you registered.

      • FleetId (string) –

        A unique identifier for the fleet that the compute belongs to.

      • FleetArn (string) –

        The Amazon Resource Name (ARN) of the fleet that the compute belongs to.

      • ComputeName (string) –

        A descriptive label for the compute resource. For instances in a managed EC2 fleet, the compute name is the same value as the InstanceId ID.

      • ComputeArn (string) –

        The ARN that is assigned to a compute resource and uniquely identifies it. ARNs are unique across locations. Instances in managed EC2 fleets are not assigned a Compute ARN.

      • IpAddress (string) –

        The IP address of a compute resource. Amazon GameLift requires a DNS name or IP address for a compute.

      • DnsName (string) –

        The DNS name of a compute resource. Amazon GameLift requires a DNS name or IP address for a compute.

      • ComputeStatus (string) –

        Current status of the compute. A compute must have an ACTIVE status to host game sessions.

      • Location (string) –

        The name of the custom location you added to the fleet that this compute resource resides in.

      • CreationTime (datetime) –

        A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057").

      • OperatingSystem (string) –

        The type of operating system on the compute resource.

        Note

        Amazon Linux 2 (AL2) will reach end of support on 6/30/2025. See more details in the Amazon Linux 2 FAQs. For game servers that are hosted on AL2 and use Amazon GameLift server SDK 4.x., first update the game server build to server SDK 5.x, and then deploy to AL2023 instances. See Migrate to Amazon GameLift server SDK version 5.

      • Type (string) –

        The Amazon EC2 instance type that the fleet uses. For registered computes in an Amazon GameLift Anywhere fleet, this property is empty.

      • GameLiftServiceSdkEndpoint (string) –

        The Amazon GameLift SDK endpoint connection for a registered compute resource in an Anywhere fleet. The game servers on the compute use this endpoint to connect to the Amazon GameLift service.

      • GameLiftAgentEndpoint (string) –

        The endpoint of the Amazon GameLift Agent.

      • InstanceId (string) –

        The InstanceID of the EC2 instance that is hosting the compute.

      • ContainerAttributes (list) –

        A set of attributes for each container in the compute.

        • (dict) –

          A unique identifier for a container in a container fleet compute.

          Returned by: DescribeCompute

          • ContainerName (string) –

            The identifier for a container that’s running in a compute.

          • ContainerRuntimeId (string) –

            The runtime ID for the container that’s running in a compute. This value is unique within the compute.

      • GameServerContainerGroupDefinitionArn (string) –

        The game server container group definition for the compute.

Exceptions

  • GameLift.Client.exceptions.UnauthorizedException

  • GameLift.Client.exceptions.InvalidRequestException

  • GameLift.Client.exceptions.ConflictException

  • GameLift.Client.exceptions.InternalServiceException

  • GameLift.Client.exceptions.NotReadyException

  • GameLift.Client.exceptions.LimitExceededException