AWSDeadlineCloud

2025/05/12 - AWSDeadlineCloud - 4 updated api methods

Changes  AWS Deadline Cloud service-managed fleets now support configuration scripts. Configuration scripts make it easy to install additional software, like plugins and packages, onto a worker.

CreateFleet (updated) Link ¶
Changes (request)
{'hostConfiguration': {'scriptBody': 'string',
                       'scriptTimeoutSeconds': 'integer'}}

Creates a fleet. Fleets gather information relating to compute, or capacity, for renders within your farms. You can choose to manage your own capacity or opt to have fleets fully managed by Deadline Cloud.

See also: AWS API Documentation

Request Syntax

client.create_fleet(
    clientToken='string',
    farmId='string',
    displayName='string',
    description='string',
    roleArn='string',
    minWorkerCount=123,
    maxWorkerCount=123,
    configuration={
        'customerManaged': {
            'mode': 'NO_SCALING'|'EVENT_BASED_AUTO_SCALING',
            'workerCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTypes': [
                    'gpu',
                ],
                'acceleratorCount': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTotalMemoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX'|'MACOS',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'storageProfileId': 'string',
            'tagPropagationMode': 'NO_PROPAGATION'|'PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH'
        },
        'serviceManagedEc2': {
            'instanceCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'rootEbsVolume': {
                    'sizeGiB': 123,
                    'iops': 123,
                    'throughputMiB': 123
                },
                'acceleratorCapabilities': {
                    'selections': [
                        {
                            'name': 't4'|'a10g'|'l4'|'l40s',
                            'runtime': 'string'
                        },
                    ],
                    'count': {
                        'min': 123,
                        'max': 123
                    }
                },
                'allowedInstanceTypes': [
                    'string',
                ],
                'excludedInstanceTypes': [
                    'string',
                ],
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'instanceMarketOptions': {
                'type': 'on-demand'|'spot'
            }
        }
    },
    tags={
        'string': 'string'
    },
    hostConfiguration={
        'scriptBody': 'string',
        'scriptTimeoutSeconds': 123
    }
)
type clientToken:

string

param clientToken:

The unique token which the server uses to recognize retries of the same request.

This field is autopopulated if not provided.

type farmId:

string

param farmId:

[REQUIRED]

The farm ID of the farm to connect to the fleet.

type displayName:

string

param displayName:

[REQUIRED]

The display name of the fleet.

type description:

string

param description:

The description of the fleet.

type roleArn:

string

param roleArn:

[REQUIRED]

The IAM role ARN for the role that the fleet's workers will use.

type minWorkerCount:

integer

param minWorkerCount:

The minimum number of workers for the fleet.

type maxWorkerCount:

integer

param maxWorkerCount:

[REQUIRED]

The maximum number of workers for the fleet.

Deadline Cloud limits the number of workers to less than or equal to the fleet's maximum worker count. The service maintains eventual consistency for the worker count. If you make multiple rapid calls to CreateWorker before the field updates, you might exceed your fleet's maximum worker count. For example, if your maxWorkerCount is 10 and you currently have 9 workers, making two quick CreateWorker calls might successfully create 2 workers instead of 1, resulting in 11 total workers.

type configuration:

dict

param configuration:

[REQUIRED]

The configuration settings for the fleet. Customer managed fleets are self-managed. Service managed Amazon EC2 fleets are managed by Deadline Cloud.

  • customerManaged (dict) --

    The customer managed fleets within a fleet configuration.

    • mode (string) -- [REQUIRED]

      The Auto Scaling mode for the customer managed fleet configuration.

    • workerCapabilities (dict) -- [REQUIRED]

      The worker capabilities for a customer managed fleet configuration.

      • vCpuCount (dict) -- [REQUIRED]

        The vCPU count for the customer manged worker capabilities.

        • min (integer) -- [REQUIRED]

          The minimum amount of vCPU.

        • max (integer) --

          The maximum amount of vCPU.

      • memoryMiB (dict) -- [REQUIRED]

        The memory (MiB).

        • min (integer) -- [REQUIRED]

          The minimum amount of memory (in MiB).

        • max (integer) --

          The maximum amount of memory (in MiB).

      • acceleratorTypes (list) --

        The accelerator types for the customer managed worker capabilities.

        • (string) --

      • acceleratorCount (dict) --

        The range of the accelerator.

        • min (integer) -- [REQUIRED]

          The minimum number of GPU accelerators in the worker host.

        • max (integer) --

          The maximum number of GPU accelerators in the worker host.

      • acceleratorTotalMemoryMiB (dict) --

        The total memory (MiB) for the customer managed worker capabilities.

        • min (integer) -- [REQUIRED]

          The minimum amount of memory to use for the accelerator, measured in MiB.

        • max (integer) --

          The maximum amount of memory to use for the accelerator, measured in MiB.

      • osFamily (string) -- [REQUIRED]

        The operating system (OS) family.

      • cpuArchitectureType (string) -- [REQUIRED]

        The CPU architecture type for the customer managed worker capabilities.

      • customAmounts (list) --

        Custom requirement ranges for customer managed worker capabilities.

        • (dict) --

          The fleet amount and attribute capabilities.

          • name (string) -- [REQUIRED]

            The name of the fleet capability.

          • min (float) -- [REQUIRED]

            The minimum amount of fleet worker capability.

          • max (float) --

            The maximum amount of the fleet worker capability.

      • customAttributes (list) --

        Custom attributes for the customer manged worker capabilities.

        • (dict) --

          Defines the fleet's capability name, minimum, and maximum.

          • name (string) -- [REQUIRED]

            The name of the fleet attribute capability for the worker.

          • values (list) -- [REQUIRED]

            The number of fleet attribute capabilities.

            • (string) --

    • storageProfileId (string) --

      The storage profile ID.

    • tagPropagationMode (string) --

      Specifies whether tags associated with a fleet are attached to workers when the worker is launched.

      When the tagPropagationMode is set to PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH any tag associated with a fleet is attached to workers when they launch. If the tags for a fleet change, the tags associated with running workers do not change.

      If you don't specify tagPropagationMode, the default is NO_PROPAGATION.

  • serviceManagedEc2 (dict) --

    The service managed Amazon EC2 instances for a fleet configuration.

    • instanceCapabilities (dict) -- [REQUIRED]

      The Amazon EC2 instance capabilities.

      • vCpuCount (dict) -- [REQUIRED]

        The amount of vCPU to require for instances in this fleet.

        • min (integer) -- [REQUIRED]

          The minimum amount of vCPU.

        • max (integer) --

          The maximum amount of vCPU.

      • memoryMiB (dict) -- [REQUIRED]

        The memory, as MiB, for the Amazon EC2 instance type.

        • min (integer) -- [REQUIRED]

          The minimum amount of memory (in MiB).

        • max (integer) --

          The maximum amount of memory (in MiB).

      • osFamily (string) -- [REQUIRED]

        The operating system (OS) family.

      • cpuArchitectureType (string) -- [REQUIRED]

        The CPU architecture type.

      • rootEbsVolume (dict) --

        The root EBS volume.

        • sizeGiB (integer) --

          The EBS volume size in GiB.

        • iops (integer) --

          The IOPS per volume.

        • throughputMiB (integer) --

          The throughput per volume in MiB.

      • acceleratorCapabilities (dict) --

        Describes the GPU accelerator capabilities required for worker host instances in this fleet.

        • selections (list) -- [REQUIRED]

          A list of accelerator capabilities requested for this fleet. Only Amazon Elastic Compute Cloud instances that provide these capabilities will be used. For example, if you specify both L4 and T4 chips, Deadline Cloud will use Amazon EC2 instances that have either the L4 or the T4 chip installed.

          • (dict) --

            Describes a specific GPU accelerator required for an Amazon Elastic Compute Cloud worker host.

            • name (string) -- [REQUIRED]

              The name of the chip used by the GPU accelerator.

              If you specify l4 as the name of the accelerator, you must specify latest or grid:r550 as the runtime.

              The available GPU accelerators are:

              • t4 - NVIDIA T4 Tensor Core GPU

              • a10g - NVIDIA A10G Tensor Core GPU

              • l4 - NVIDIA L4 Tensor Core GPU

              • l40s - NVIDIA L40S Tensor Core GPU

            • runtime (string) --

              Specifies the runtime driver to use for the GPU accelerator. You must use the same runtime for all GPUs.

              You can choose from the following runtimes:

              • latest - Use the latest runtime available for the chip. If you specify latest and a new version of the runtime is released, the new version of the runtime is used.

              • grid:r550 - NVIDIA vGPU software 17

              • grid:r535 - NVIDIA vGPU software 16

              If you don't specify a runtime, Deadline Cloud uses latest as the default. However, if you have multiple accelerators and specify latest for some and leave others blank, Deadline Cloud raises an exception.

        • count (dict) --

          The number of GPU accelerators specified for worker hosts in this fleet.

          • min (integer) -- [REQUIRED]

            The minimum number of GPU accelerators in the worker host.

          • max (integer) --

            The maximum number of GPU accelerators in the worker host.

      • allowedInstanceTypes (list) --

        The allowable Amazon EC2 instance types.

        • (string) --

      • excludedInstanceTypes (list) --

        The instance types to exclude from the fleet.

        • (string) --

      • customAmounts (list) --

        The custom capability amounts to require for instances in this fleet.

        • (dict) --

          The fleet amount and attribute capabilities.

          • name (string) -- [REQUIRED]

            The name of the fleet capability.

          • min (float) -- [REQUIRED]

            The minimum amount of fleet worker capability.

          • max (float) --

            The maximum amount of the fleet worker capability.

      • customAttributes (list) --

        The custom capability attributes to require for instances in this fleet.

        • (dict) --

          Defines the fleet's capability name, minimum, and maximum.

          • name (string) -- [REQUIRED]

            The name of the fleet attribute capability for the worker.

          • values (list) -- [REQUIRED]

            The number of fleet attribute capabilities.

            • (string) --

    • instanceMarketOptions (dict) -- [REQUIRED]

      The Amazon EC2 market type.

      • type (string) -- [REQUIRED]

        The Amazon EC2 instance type.

type tags:

dict

param tags:

Each tag consists of a tag key and a tag value. Tag keys and values are both required, but tag values can be empty strings.

  • (string) --

    • (string) --

type hostConfiguration:

dict

param hostConfiguration:

Provides a script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet.

  • scriptBody (string) -- [REQUIRED]

    The text of the script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet. The script runs after a worker enters the STARTING state and before the worker processes tasks.

    For more information about using the script, see Run scripts as an administrator to configure workers in the Deadline Cloud Developer Guide.

  • scriptTimeoutSeconds (integer) --

    The maximum time that the host configuration can run. If the timeout expires, the worker enters the NOT RESPONDING state and shuts down. You are charged for the time that the worker is running the host configuration script.

    The default is 300 seconds (5 minutes).

rtype:

dict

returns:

Response Syntax

{
    'fleetId': 'string'
}

Response Structure

  • (dict) --

    • fleetId (string) --

      The fleet ID.

GetFleet (updated) Link ¶
Changes (response)
{'hostConfiguration': {'scriptBody': 'string',
                       'scriptTimeoutSeconds': 'integer'}}

Get a fleet.

See also: AWS API Documentation

Request Syntax

client.get_fleet(
    farmId='string',
    fleetId='string'
)
type farmId:

string

param farmId:

[REQUIRED]

The farm ID of the farm in the fleet.

type fleetId:

string

param fleetId:

[REQUIRED]

The fleet ID of the fleet to get.

rtype:

dict

returns:

Response Syntax

{
    'fleetId': 'string',
    'farmId': 'string',
    'displayName': 'string',
    'description': 'string',
    'status': 'ACTIVE'|'CREATE_IN_PROGRESS'|'UPDATE_IN_PROGRESS'|'CREATE_FAILED'|'UPDATE_FAILED',
    'autoScalingStatus': 'GROWING'|'STEADY'|'SHRINKING',
    'targetWorkerCount': 123,
    'workerCount': 123,
    'minWorkerCount': 123,
    'maxWorkerCount': 123,
    'configuration': {
        'customerManaged': {
            'mode': 'NO_SCALING'|'EVENT_BASED_AUTO_SCALING',
            'workerCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTypes': [
                    'gpu',
                ],
                'acceleratorCount': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTotalMemoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX'|'MACOS',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'storageProfileId': 'string',
            'tagPropagationMode': 'NO_PROPAGATION'|'PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH'
        },
        'serviceManagedEc2': {
            'instanceCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'rootEbsVolume': {
                    'sizeGiB': 123,
                    'iops': 123,
                    'throughputMiB': 123
                },
                'acceleratorCapabilities': {
                    'selections': [
                        {
                            'name': 't4'|'a10g'|'l4'|'l40s',
                            'runtime': 'string'
                        },
                    ],
                    'count': {
                        'min': 123,
                        'max': 123
                    }
                },
                'allowedInstanceTypes': [
                    'string',
                ],
                'excludedInstanceTypes': [
                    'string',
                ],
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'instanceMarketOptions': {
                'type': 'on-demand'|'spot'
            }
        }
    },
    'hostConfiguration': {
        'scriptBody': 'string',
        'scriptTimeoutSeconds': 123
    },
    'capabilities': {
        'amounts': [
            {
                'name': 'string',
                'min': ...,
                'max': ...
            },
        ],
        'attributes': [
            {
                'name': 'string',
                'values': [
                    'string',
                ]
            },
        ]
    },
    'roleArn': 'string',
    'createdAt': datetime(2015, 1, 1),
    'createdBy': 'string',
    'updatedAt': datetime(2015, 1, 1),
    'updatedBy': 'string'
}

Response Structure

  • (dict) --

    • fleetId (string) --

      The fleet ID.

    • farmId (string) --

      The farm ID of the farm in the fleet.

    • displayName (string) --

      The display name of the fleet.

    • description (string) --

      The description of the fleet.

    • status (string) --

      The Auto Scaling status of the fleet.

    • autoScalingStatus (string) --

      The Auto Scaling status of the fleet. Either GROWING, STEADY, or SHRINKING.

    • targetWorkerCount (integer) --

      The number of target workers in the fleet.

    • workerCount (integer) --

      The number of workers in the fleet.

    • minWorkerCount (integer) --

      The minimum number of workers specified in the fleet.

    • maxWorkerCount (integer) --

      The maximum number of workers specified in the fleet.

    • configuration (dict) --

      The configuration setting for the fleet.

      • customerManaged (dict) --

        The customer managed fleets within a fleet configuration.

        • mode (string) --

          The Auto Scaling mode for the customer managed fleet configuration.

        • workerCapabilities (dict) --

          The worker capabilities for a customer managed fleet configuration.

          • vCpuCount (dict) --

            The vCPU count for the customer manged worker capabilities.

            • min (integer) --

              The minimum amount of vCPU.

            • max (integer) --

              The maximum amount of vCPU.

          • memoryMiB (dict) --

            The memory (MiB).

            • min (integer) --

              The minimum amount of memory (in MiB).

            • max (integer) --

              The maximum amount of memory (in MiB).

          • acceleratorTypes (list) --

            The accelerator types for the customer managed worker capabilities.

            • (string) --

          • acceleratorCount (dict) --

            The range of the accelerator.

            • min (integer) --

              The minimum number of GPU accelerators in the worker host.

            • max (integer) --

              The maximum number of GPU accelerators in the worker host.

          • acceleratorTotalMemoryMiB (dict) --

            The total memory (MiB) for the customer managed worker capabilities.

            • min (integer) --

              The minimum amount of memory to use for the accelerator, measured in MiB.

            • max (integer) --

              The maximum amount of memory to use for the accelerator, measured in MiB.

          • osFamily (string) --

            The operating system (OS) family.

          • cpuArchitectureType (string) --

            The CPU architecture type for the customer managed worker capabilities.

          • customAmounts (list) --

            Custom requirement ranges for customer managed worker capabilities.

            • (dict) --

              The fleet amount and attribute capabilities.

              • name (string) --

                The name of the fleet capability.

              • min (float) --

                The minimum amount of fleet worker capability.

              • max (float) --

                The maximum amount of the fleet worker capability.

          • customAttributes (list) --

            Custom attributes for the customer manged worker capabilities.

            • (dict) --

              Defines the fleet's capability name, minimum, and maximum.

              • name (string) --

                The name of the fleet attribute capability for the worker.

              • values (list) --

                The number of fleet attribute capabilities.

                • (string) --

        • storageProfileId (string) --

          The storage profile ID.

        • tagPropagationMode (string) --

          Specifies whether tags associated with a fleet are attached to workers when the worker is launched.

          When the tagPropagationMode is set to PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH any tag associated with a fleet is attached to workers when they launch. If the tags for a fleet change, the tags associated with running workers do not change.

          If you don't specify tagPropagationMode, the default is NO_PROPAGATION.

      • serviceManagedEc2 (dict) --

        The service managed Amazon EC2 instances for a fleet configuration.

        • instanceCapabilities (dict) --

          The Amazon EC2 instance capabilities.

          • vCpuCount (dict) --

            The amount of vCPU to require for instances in this fleet.

            • min (integer) --

              The minimum amount of vCPU.

            • max (integer) --

              The maximum amount of vCPU.

          • memoryMiB (dict) --

            The memory, as MiB, for the Amazon EC2 instance type.

            • min (integer) --

              The minimum amount of memory (in MiB).

            • max (integer) --

              The maximum amount of memory (in MiB).

          • osFamily (string) --

            The operating system (OS) family.

          • cpuArchitectureType (string) --

            The CPU architecture type.

          • rootEbsVolume (dict) --

            The root EBS volume.

            • sizeGiB (integer) --

              The EBS volume size in GiB.

            • iops (integer) --

              The IOPS per volume.

            • throughputMiB (integer) --

              The throughput per volume in MiB.

          • acceleratorCapabilities (dict) --

            Describes the GPU accelerator capabilities required for worker host instances in this fleet.

            • selections (list) --

              A list of accelerator capabilities requested for this fleet. Only Amazon Elastic Compute Cloud instances that provide these capabilities will be used. For example, if you specify both L4 and T4 chips, Deadline Cloud will use Amazon EC2 instances that have either the L4 or the T4 chip installed.

              • (dict) --

                Describes a specific GPU accelerator required for an Amazon Elastic Compute Cloud worker host.

                • name (string) --

                  The name of the chip used by the GPU accelerator.

                  If you specify l4 as the name of the accelerator, you must specify latest or grid:r550 as the runtime.

                  The available GPU accelerators are:

                  • t4 - NVIDIA T4 Tensor Core GPU

                  • a10g - NVIDIA A10G Tensor Core GPU

                  • l4 - NVIDIA L4 Tensor Core GPU

                  • l40s - NVIDIA L40S Tensor Core GPU

                • runtime (string) --

                  Specifies the runtime driver to use for the GPU accelerator. You must use the same runtime for all GPUs.

                  You can choose from the following runtimes:

                  • latest - Use the latest runtime available for the chip. If you specify latest and a new version of the runtime is released, the new version of the runtime is used.

                  • grid:r550 - NVIDIA vGPU software 17

                  • grid:r535 - NVIDIA vGPU software 16

                  If you don't specify a runtime, Deadline Cloud uses latest as the default. However, if you have multiple accelerators and specify latest for some and leave others blank, Deadline Cloud raises an exception.

            • count (dict) --

              The number of GPU accelerators specified for worker hosts in this fleet.

              • min (integer) --

                The minimum number of GPU accelerators in the worker host.

              • max (integer) --

                The maximum number of GPU accelerators in the worker host.

          • allowedInstanceTypes (list) --

            The allowable Amazon EC2 instance types.

            • (string) --

          • excludedInstanceTypes (list) --

            The instance types to exclude from the fleet.

            • (string) --

          • customAmounts (list) --

            The custom capability amounts to require for instances in this fleet.

            • (dict) --

              The fleet amount and attribute capabilities.

              • name (string) --

                The name of the fleet capability.

              • min (float) --

                The minimum amount of fleet worker capability.

              • max (float) --

                The maximum amount of the fleet worker capability.

          • customAttributes (list) --

            The custom capability attributes to require for instances in this fleet.

            • (dict) --

              Defines the fleet's capability name, minimum, and maximum.

              • name (string) --

                The name of the fleet attribute capability for the worker.

              • values (list) --

                The number of fleet attribute capabilities.

                • (string) --

        • instanceMarketOptions (dict) --

          The Amazon EC2 market type.

          • type (string) --

            The Amazon EC2 instance type.

    • hostConfiguration (dict) --

      The script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet.

      • scriptBody (string) --

        The text of the script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet. The script runs after a worker enters the STARTING state and before the worker processes tasks.

        For more information about using the script, see Run scripts as an administrator to configure workers in the Deadline Cloud Developer Guide.

      • scriptTimeoutSeconds (integer) --

        The maximum time that the host configuration can run. If the timeout expires, the worker enters the NOT RESPONDING state and shuts down. You are charged for the time that the worker is running the host configuration script.

        The default is 300 seconds (5 minutes).

    • capabilities (dict) --

      Outlines what the fleet is capable of for minimums, maximums, and naming, in addition to attribute names and values.

      • amounts (list) --

        Amount capabilities of the fleet.

        • (dict) --

          The fleet amount and attribute capabilities.

          • name (string) --

            The name of the fleet capability.

          • min (float) --

            The minimum amount of fleet worker capability.

          • max (float) --

            The maximum amount of the fleet worker capability.

      • attributes (list) --

        Attribute capabilities of the fleet.

        • (dict) --

          Defines the fleet's capability name, minimum, and maximum.

          • name (string) --

            The name of the fleet attribute capability for the worker.

          • values (list) --

            The number of fleet attribute capabilities.

            • (string) --

    • roleArn (string) --

      The IAM role ARN.

    • createdAt (datetime) --

      The date and time the resource was created.

    • createdBy (string) --

      The user or system that created this resource.

    • updatedAt (datetime) --

      The date and time the resource was updated.

    • updatedBy (string) --

      The user or system that updated this resource.

UpdateFleet (updated) Link ¶
Changes (request)
{'hostConfiguration': {'scriptBody': 'string',
                       'scriptTimeoutSeconds': 'integer'}}

Updates a fleet.

See also: AWS API Documentation

Request Syntax

client.update_fleet(
    clientToken='string',
    farmId='string',
    fleetId='string',
    displayName='string',
    description='string',
    roleArn='string',
    minWorkerCount=123,
    maxWorkerCount=123,
    configuration={
        'customerManaged': {
            'mode': 'NO_SCALING'|'EVENT_BASED_AUTO_SCALING',
            'workerCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTypes': [
                    'gpu',
                ],
                'acceleratorCount': {
                    'min': 123,
                    'max': 123
                },
                'acceleratorTotalMemoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX'|'MACOS',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'storageProfileId': 'string',
            'tagPropagationMode': 'NO_PROPAGATION'|'PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH'
        },
        'serviceManagedEc2': {
            'instanceCapabilities': {
                'vCpuCount': {
                    'min': 123,
                    'max': 123
                },
                'memoryMiB': {
                    'min': 123,
                    'max': 123
                },
                'osFamily': 'WINDOWS'|'LINUX',
                'cpuArchitectureType': 'x86_64'|'arm64',
                'rootEbsVolume': {
                    'sizeGiB': 123,
                    'iops': 123,
                    'throughputMiB': 123
                },
                'acceleratorCapabilities': {
                    'selections': [
                        {
                            'name': 't4'|'a10g'|'l4'|'l40s',
                            'runtime': 'string'
                        },
                    ],
                    'count': {
                        'min': 123,
                        'max': 123
                    }
                },
                'allowedInstanceTypes': [
                    'string',
                ],
                'excludedInstanceTypes': [
                    'string',
                ],
                'customAmounts': [
                    {
                        'name': 'string',
                        'min': ...,
                        'max': ...
                    },
                ],
                'customAttributes': [
                    {
                        'name': 'string',
                        'values': [
                            'string',
                        ]
                    },
                ]
            },
            'instanceMarketOptions': {
                'type': 'on-demand'|'spot'
            }
        }
    },
    hostConfiguration={
        'scriptBody': 'string',
        'scriptTimeoutSeconds': 123
    }
)
type clientToken:

string

param clientToken:

The unique token which the server uses to recognize retries of the same request.

This field is autopopulated if not provided.

type farmId:

string

param farmId:

[REQUIRED]

The farm ID to update.

type fleetId:

string

param fleetId:

[REQUIRED]

The fleet ID to update.

type displayName:

string

param displayName:

The display name of the fleet to update.

type description:

string

param description:

The description of the fleet to update.

type roleArn:

string

param roleArn:

The IAM role ARN that the fleet's workers assume while running jobs.

type minWorkerCount:

integer

param minWorkerCount:

The minimum number of workers in the fleet.

type maxWorkerCount:

integer

param maxWorkerCount:

The maximum number of workers in the fleet.

Deadline Cloud limits the number of workers to less than or equal to the fleet's maximum worker count. The service maintains eventual consistency for the worker count. If you make multiple rapid calls to CreateWorker before the field updates, you might exceed your fleet's maximum worker count. For example, if your maxWorkerCount is 10 and you currently have 9 workers, making two quick CreateWorker calls might successfully create 2 workers instead of 1, resulting in 11 total workers.

type configuration:

dict

param configuration:

The fleet configuration to update.

  • customerManaged (dict) --

    The customer managed fleets within a fleet configuration.

    • mode (string) -- [REQUIRED]

      The Auto Scaling mode for the customer managed fleet configuration.

    • workerCapabilities (dict) -- [REQUIRED]

      The worker capabilities for a customer managed fleet configuration.

      • vCpuCount (dict) -- [REQUIRED]

        The vCPU count for the customer manged worker capabilities.

        • min (integer) -- [REQUIRED]

          The minimum amount of vCPU.

        • max (integer) --

          The maximum amount of vCPU.

      • memoryMiB (dict) -- [REQUIRED]

        The memory (MiB).

        • min (integer) -- [REQUIRED]

          The minimum amount of memory (in MiB).

        • max (integer) --

          The maximum amount of memory (in MiB).

      • acceleratorTypes (list) --

        The accelerator types for the customer managed worker capabilities.

        • (string) --

      • acceleratorCount (dict) --

        The range of the accelerator.

        • min (integer) -- [REQUIRED]

          The minimum number of GPU accelerators in the worker host.

        • max (integer) --

          The maximum number of GPU accelerators in the worker host.

      • acceleratorTotalMemoryMiB (dict) --

        The total memory (MiB) for the customer managed worker capabilities.

        • min (integer) -- [REQUIRED]

          The minimum amount of memory to use for the accelerator, measured in MiB.

        • max (integer) --

          The maximum amount of memory to use for the accelerator, measured in MiB.

      • osFamily (string) -- [REQUIRED]

        The operating system (OS) family.

      • cpuArchitectureType (string) -- [REQUIRED]

        The CPU architecture type for the customer managed worker capabilities.

      • customAmounts (list) --

        Custom requirement ranges for customer managed worker capabilities.

        • (dict) --

          The fleet amount and attribute capabilities.

          • name (string) -- [REQUIRED]

            The name of the fleet capability.

          • min (float) -- [REQUIRED]

            The minimum amount of fleet worker capability.

          • max (float) --

            The maximum amount of the fleet worker capability.

      • customAttributes (list) --

        Custom attributes for the customer manged worker capabilities.

        • (dict) --

          Defines the fleet's capability name, minimum, and maximum.

          • name (string) -- [REQUIRED]

            The name of the fleet attribute capability for the worker.

          • values (list) -- [REQUIRED]

            The number of fleet attribute capabilities.

            • (string) --

    • storageProfileId (string) --

      The storage profile ID.

    • tagPropagationMode (string) --

      Specifies whether tags associated with a fleet are attached to workers when the worker is launched.

      When the tagPropagationMode is set to PROPAGATE_TAGS_TO_WORKERS_AT_LAUNCH any tag associated with a fleet is attached to workers when they launch. If the tags for a fleet change, the tags associated with running workers do not change.

      If you don't specify tagPropagationMode, the default is NO_PROPAGATION.

  • serviceManagedEc2 (dict) --

    The service managed Amazon EC2 instances for a fleet configuration.

    • instanceCapabilities (dict) -- [REQUIRED]

      The Amazon EC2 instance capabilities.

      • vCpuCount (dict) -- [REQUIRED]

        The amount of vCPU to require for instances in this fleet.

        • min (integer) -- [REQUIRED]

          The minimum amount of vCPU.

        • max (integer) --

          The maximum amount of vCPU.

      • memoryMiB (dict) -- [REQUIRED]

        The memory, as MiB, for the Amazon EC2 instance type.

        • min (integer) -- [REQUIRED]

          The minimum amount of memory (in MiB).

        • max (integer) --

          The maximum amount of memory (in MiB).

      • osFamily (string) -- [REQUIRED]

        The operating system (OS) family.

      • cpuArchitectureType (string) -- [REQUIRED]

        The CPU architecture type.

      • rootEbsVolume (dict) --

        The root EBS volume.

        • sizeGiB (integer) --

          The EBS volume size in GiB.

        • iops (integer) --

          The IOPS per volume.

        • throughputMiB (integer) --

          The throughput per volume in MiB.

      • acceleratorCapabilities (dict) --

        Describes the GPU accelerator capabilities required for worker host instances in this fleet.

        • selections (list) -- [REQUIRED]

          A list of accelerator capabilities requested for this fleet. Only Amazon Elastic Compute Cloud instances that provide these capabilities will be used. For example, if you specify both L4 and T4 chips, Deadline Cloud will use Amazon EC2 instances that have either the L4 or the T4 chip installed.

          • (dict) --

            Describes a specific GPU accelerator required for an Amazon Elastic Compute Cloud worker host.

            • name (string) -- [REQUIRED]

              The name of the chip used by the GPU accelerator.

              If you specify l4 as the name of the accelerator, you must specify latest or grid:r550 as the runtime.

              The available GPU accelerators are:

              • t4 - NVIDIA T4 Tensor Core GPU

              • a10g - NVIDIA A10G Tensor Core GPU

              • l4 - NVIDIA L4 Tensor Core GPU

              • l40s - NVIDIA L40S Tensor Core GPU

            • runtime (string) --

              Specifies the runtime driver to use for the GPU accelerator. You must use the same runtime for all GPUs.

              You can choose from the following runtimes:

              • latest - Use the latest runtime available for the chip. If you specify latest and a new version of the runtime is released, the new version of the runtime is used.

              • grid:r550 - NVIDIA vGPU software 17

              • grid:r535 - NVIDIA vGPU software 16

              If you don't specify a runtime, Deadline Cloud uses latest as the default. However, if you have multiple accelerators and specify latest for some and leave others blank, Deadline Cloud raises an exception.

        • count (dict) --

          The number of GPU accelerators specified for worker hosts in this fleet.

          • min (integer) -- [REQUIRED]

            The minimum number of GPU accelerators in the worker host.

          • max (integer) --

            The maximum number of GPU accelerators in the worker host.

      • allowedInstanceTypes (list) --

        The allowable Amazon EC2 instance types.

        • (string) --

      • excludedInstanceTypes (list) --

        The instance types to exclude from the fleet.

        • (string) --

      • customAmounts (list) --

        The custom capability amounts to require for instances in this fleet.

        • (dict) --

          The fleet amount and attribute capabilities.

          • name (string) -- [REQUIRED]

            The name of the fleet capability.

          • min (float) -- [REQUIRED]

            The minimum amount of fleet worker capability.

          • max (float) --

            The maximum amount of the fleet worker capability.

      • customAttributes (list) --

        The custom capability attributes to require for instances in this fleet.

        • (dict) --

          Defines the fleet's capability name, minimum, and maximum.

          • name (string) -- [REQUIRED]

            The name of the fleet attribute capability for the worker.

          • values (list) -- [REQUIRED]

            The number of fleet attribute capabilities.

            • (string) --

    • instanceMarketOptions (dict) -- [REQUIRED]

      The Amazon EC2 market type.

      • type (string) -- [REQUIRED]

        The Amazon EC2 instance type.

type hostConfiguration:

dict

param hostConfiguration:

Provides a script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet.

  • scriptBody (string) -- [REQUIRED]

    The text of the script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet. The script runs after a worker enters the STARTING state and before the worker processes tasks.

    For more information about using the script, see Run scripts as an administrator to configure workers in the Deadline Cloud Developer Guide.

  • scriptTimeoutSeconds (integer) --

    The maximum time that the host configuration can run. If the timeout expires, the worker enters the NOT RESPONDING state and shuts down. You are charged for the time that the worker is running the host configuration script.

    The default is 300 seconds (5 minutes).

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

UpdateWorker (updated) Link ¶
Changes (response)
{'hostConfiguration': {'scriptBody': 'string',
                       'scriptTimeoutSeconds': 'integer'}}

Updates a worker.

See also: AWS API Documentation

Request Syntax

client.update_worker(
    farmId='string',
    fleetId='string',
    workerId='string',
    status='STARTED'|'STOPPING'|'STOPPED',
    capabilities={
        'amounts': [
            {
                'name': 'string',
                'value': ...
            },
        ],
        'attributes': [
            {
                'name': 'string',
                'values': [
                    'string',
                ]
            },
        ]
    },
    hostProperties={
        'ipAddresses': {
            'ipV4Addresses': [
                'string',
            ],
            'ipV6Addresses': [
                'string',
            ]
        },
        'hostName': 'string'
    }
)
type farmId:

string

param farmId:

[REQUIRED]

The farm ID to update.

type fleetId:

string

param fleetId:

[REQUIRED]

The fleet ID to update.

type workerId:

string

param workerId:

[REQUIRED]

The worker ID to update.

type status:

string

param status:

The worker status to update.

type capabilities:

dict

param capabilities:

The worker capabilities to update.

  • amounts (list) -- [REQUIRED]

    The worker capabilities amounts on a list of worker capabilities.

    • (dict) --

      The details of the worker amount capability.

      • name (string) -- [REQUIRED]

        The name of the worker amount capability.

      • value (float) -- [REQUIRED]

        The value of the worker amount capability.

  • attributes (list) -- [REQUIRED]

    The worker attribute capabilities in the list of attribute capabilities.

    • (dict) --

      The details of the worker attribute capability.

      • name (string) -- [REQUIRED]

        The name of the worker attribute capability.

      • values (list) -- [REQUIRED]

        The values of the worker amount capability.

        • (string) --

type hostProperties:

dict

param hostProperties:

The host properties to update.

  • ipAddresses (dict) --

    The IP address of the host.

    • ipV4Addresses (list) --

      The IpV4 address of the network.

      • (string) --

    • ipV6Addresses (list) --

      The IpV6 address for the network and node component.

      • (string) --

  • hostName (string) --

    The host name.

rtype:

dict

returns:

Response Syntax

{
    'log': {
        'logDriver': 'string',
        'options': {
            'string': 'string'
        },
        'parameters': {
            'string': 'string'
        },
        'error': 'string'
    },
    'hostConfiguration': {
        'scriptBody': 'string',
        'scriptTimeoutSeconds': 123
    }
}

Response Structure

  • (dict) --

    • log (dict) --

      The worker log to update.

      • logDriver (string) --

        The log drivers for worker related logs.

      • options (dict) --

        The options for a log driver.

        • (string) --

          • (string) --

      • parameters (dict) --

        The parameters for the log configuration.

        • (string) --

          • (string) --

      • error (string) --

        The log configuration error details.

    • hostConfiguration (dict) --

      The script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet.

      • scriptBody (string) --

        The text of the script that runs as a worker is starting up that you can use to provide additional configuration for workers in your fleet. The script runs after a worker enters the STARTING state and before the worker processes tasks.

        For more information about using the script, see Run scripts as an administrator to configure workers in the Deadline Cloud Developer Guide.

      • scriptTimeoutSeconds (integer) --

        The maximum time that the host configuration can run. If the timeout expires, the worker enters the NOT RESPONDING state and shuts down. You are charged for the time that the worker is running the host configuration script.

        The default is 300 seconds (5 minutes).