ParallelComputingService / Client / register_compute_node_group_instance

register_compute_node_group_instance

ParallelComputingService.Client.register_compute_node_group_instance(**kwargs)

Warning

This API action isn’t intended for you to use.

PCS uses this API action to register the compute nodes it launches in your account.

See also: AWS API Documentation

Request Syntax

response = client.register_compute_node_group_instance(
    clusterIdentifier='string',
    bootstrapId='string'
)
Parameters:
  • clusterIdentifier (string) –

    [REQUIRED]

    The name or ID of the cluster to register the compute node group instance in.

  • bootstrapId (string) –

    [REQUIRED]

    The client-generated token to allow for retries.

Return type:

dict

Returns:

Response Syntax

{
    'nodeID': 'string',
    'sharedSecret': 'string',
    'endpoints': [
        {
            'type': 'SLURMCTLD'|'SLURMDBD'|'SLURMRESTD',
            'privateIpAddress': 'string',
            'publicIpAddress': 'string',
            'ipv6Address': 'string',
            'port': 'string'
        },
    ],
    'clusterName': 'string',
    'computeNodeGroupId': 'string',
    'computeNodeGroupName': 'string',
    'nodeLifecycleActions': {
        'stages': {
            'nodeBootstrapped': [
                {
                    'name': 'string',
                    'scriptSource': {
                        'scriptLocation': 'string',
                        's3VersionId': 'string',
                        'checksum': 'string'
                    },
                    'arguments': [
                        'string',
                    ],
                    'onError': 'TERMINATE'|'STOP_SEQUENCE'|'CONTINUE',
                    'executionPolicy': 'FIRST_BOOT_ONLY'|'EVERY_BOOT'
                },
            ],
            'nodeReady': [
                {
                    'name': 'string',
                    'scriptSource': {
                        'scriptLocation': 'string',
                        's3VersionId': 'string',
                        'checksum': 'string'
                    },
                    'arguments': [
                        'string',
                    ],
                    'onError': 'TERMINATE'|'STOP_SEQUENCE'|'CONTINUE',
                    'executionPolicy': 'FIRST_BOOT_ONLY'|'EVERY_BOOT'
                },
            ]
        },
        'scriptCachingPolicy': 'CACHE_ONCE'|'REFRESH_ON_REBOOT'
    }
}

Response Structure

  • (dict) –

    • nodeID (string) –

      The scheduler node ID for this instance.

    • sharedSecret (string) –

      For the Slurm scheduler, this is the shared Munge key the scheduler uses to authenticate compute node group instances.

    • endpoints (list) –

      The list of endpoints available for interaction with the scheduler.

      • (dict) –

        An endpoint available for interaction with the scheduler.

        • type (string) –

          Indicates the type of endpoint running at the specific IP address.

        • privateIpAddress (string) –

          For clusters that use IPv4, this is the endpoint’s private IP address.

          Example: 10.1.2.3

          For clusters configured to use IPv6, this is an empty string.

        • publicIpAddress (string) –

          The endpoint’s public IP address.

          Example: 192.0.2.1

        • ipv6Address (string) –

          The endpoint’s IPv6 address.

          Example: 2001:db8::1

        • port (string) –

          The endpoint’s connection port number.

          Example: 1234

    • clusterName (string) –

      The name of the cluster that the compute node registered into.

    • computeNodeGroupId (string) –

      The ID of the compute node group that the compute node registered into.

    • computeNodeGroupName (string) –

      The name of the compute node group that the compute node registered into.

    • nodeLifecycleActions (dict) –

      The node lifecycle actions configured for the node group, including scripts to run when a compute node finishes bootstrapping or becomes ready to accept jobs.

      • stages (dict) –

        The lifecycle stages where you configure scripts to run.

        • nodeBootstrapped (list) –

          The scripts to run after PCS finishes setting up the compute node and before the Slurm daemon ( slurmd) starts. Use this stage for tasks that must complete before the node accepts jobs, such as mounting shared storage, configuring networking, or installing software packages.

          • (dict) –

            A script to run during a compute node lifecycle stage.

            • name (string) –

              A unique name for the script. The name can be up to 64 characters long. Valid characters are letters, numbers, spaces, underscores ( _), and hyphens ( -). The first character must be a letter or a number.

            • scriptSource (dict) –

              The source location and integrity information for the script.

              • scriptLocation (string) –

                The location of the script. Specify either an Amazon S3 URI in the format s3://bucket-name/key or an HTTPS URL.

              • s3VersionId (string) –

                The Amazon S3 version ID of the script. Use this value to pin the script to a specific version in a versioned Amazon S3 bucket. This value is only valid when scriptLocation is an Amazon S3 URI.

              • checksum (string) –

                The SHA-256 checksum of the script content, as a 64-character hexadecimal string. This value is optional. When specified, PCS uses this value to verify the integrity of the downloaded script.

            • arguments (list) –

              The command-line arguments to pass to the script. You can specify up to 20 arguments, and each argument can be up to 256 characters long.

              • (string) –

            • onError (string) –

              The behavior when the script fails. The default value is TERMINATE. Valid values:

              • TERMINATE – Terminates the compute node.

              • STOP_SEQUENCE – Stops running subsequent scripts in the sequence but doesn’t terminate the compute node.

              • CONTINUE – Ignores the error and continues running the next script.

            • executionPolicy (string) –

              The policy that determines when the script runs. The default value is FIRST_BOOT_ONLY. Valid values:

              • FIRST_BOOT_ONLY – Runs the script only the first time the compute node boots.

              • EVERY_BOOT – Runs the script every time the compute node boots, including reboots.

        • nodeReady (list) –

          The scripts to run after the Slurm daemon ( slurmd) starts and the compute node registers with the Slurm controller. Use this stage for tasks that require Slurm to be running, such as running Slurm commands.

          • (dict) –

            A script to run during a compute node lifecycle stage.

            • name (string) –

              A unique name for the script. The name can be up to 64 characters long. Valid characters are letters, numbers, spaces, underscores ( _), and hyphens ( -). The first character must be a letter or a number.

            • scriptSource (dict) –

              The source location and integrity information for the script.

              • scriptLocation (string) –

                The location of the script. Specify either an Amazon S3 URI in the format s3://bucket-name/key or an HTTPS URL.

              • s3VersionId (string) –

                The Amazon S3 version ID of the script. Use this value to pin the script to a specific version in a versioned Amazon S3 bucket. This value is only valid when scriptLocation is an Amazon S3 URI.

              • checksum (string) –

                The SHA-256 checksum of the script content, as a 64-character hexadecimal string. This value is optional. When specified, PCS uses this value to verify the integrity of the downloaded script.

            • arguments (list) –

              The command-line arguments to pass to the script. You can specify up to 20 arguments, and each argument can be up to 256 characters long.

              • (string) –

            • onError (string) –

              The behavior when the script fails. The default value is TERMINATE. Valid values:

              • TERMINATE – Terminates the compute node.

              • STOP_SEQUENCE – Stops running subsequent scripts in the sequence but doesn’t terminate the compute node.

              • CONTINUE – Ignores the error and continues running the next script.

            • executionPolicy (string) –

              The policy that determines when the script runs. The default value is FIRST_BOOT_ONLY. Valid values:

              • FIRST_BOOT_ONLY – Runs the script only the first time the compute node boots.

              • EVERY_BOOT – Runs the script every time the compute node boots, including reboots.

      • scriptCachingPolicy (string) –

        The caching policy for node lifecycle scripts. The default value is CACHE_ONCE. Valid values:

        • CACHE_ONCE – Downloads each script once and reuses it on subsequent boots.

        • REFRESH_ON_REBOOT – Downloads each script on every boot.

Exceptions

  • ParallelComputingService.Client.exceptions.InternalServerException

  • ParallelComputingService.Client.exceptions.AccessDeniedException