diff --git a/CHANGELOG.md b/CHANGELOG.md index fc5c5cd54b4..7dcf64964c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.44.295 (2023-07-03) +=== + +### Service Client Updates +* `service/batch`: Updates service API and documentation + * This feature allows customers to use AWS Batch with Linux with ARM64 CPU Architecture and X86_64 CPU Architecture with Windows OS on Fargate Platform. +* `service/sagemaker`: Updates service API and documentation + * SageMaker Inference Recommender now accepts new fields SupportedEndpointType and ServerlessConfiguration to support serverless endpoints. + Release v1.44.294 (2023-06-30) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 9943af744ba..2efaf3c42dc 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -3580,6 +3580,15 @@ var awsPartition = partition{ }, Deprecated: boxedTrue, }, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ + Region: "me-central-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "athena.me-central-1.api.aws", + }, endpointKey{ Region: "me-south-1", }: endpoint{}, @@ -4043,15 +4052,84 @@ var awsPartition = partition{ }, "backupstorage": service{ Endpoints: serviceEndpoints{ + endpointKey{ + Region: "af-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-east-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-south-2", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-2", + }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-south-1", + }: endpoint{}, + endpointKey{ + Region: "eu-south-2", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ + Region: "me-central-1", + }: endpoint{}, + endpointKey{ + Region: "me-south-1", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ Region: "us-east-2", }: endpoint{}, + endpointKey{ + Region: "us-west-1", + }: endpoint{}, endpointKey{ Region: "us-west-2", }: endpoint{}, @@ -25122,33 +25200,6 @@ var awsPartition = partition{ }: endpoint{ Hostname: "servicediscovery.sa-east-1.amazonaws.com", }, - endpointKey{ - Region: "servicediscovery", - }: endpoint{ - CredentialScope: credentialScope{ - Region: "ca-central-1", - }, - Deprecated: boxedTrue, - }, - endpointKey{ - Region: "servicediscovery", - Variant: fipsVariant, - }: endpoint{ - Hostname: "servicediscovery-fips.ca-central-1.amazonaws.com", - CredentialScope: credentialScope{ - Region: "ca-central-1", - }, - Deprecated: boxedTrue, - }, - endpointKey{ - Region: "servicediscovery-fips", - }: endpoint{ - Hostname: "servicediscovery-fips.ca-central-1.amazonaws.com", - CredentialScope: credentialScope{ - Region: "ca-central-1", - }, - Deprecated: boxedTrue, - }, endpointKey{ Region: "us-east-1", }: endpoint{}, @@ -26586,6 +26637,118 @@ var awsPartition = partition{ }, }, }, + "ssm-contacts": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + Hostname: "ssm-contacts-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-2", + }: endpoint{ + Hostname: "ssm-contacts-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-1", + }: endpoint{ + Hostname: "ssm-contacts-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + Hostname: "ssm-contacts-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "ssm-contacts-fips.us-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-east-2", + }: endpoint{}, + endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "ssm-contacts-fips.us-east-2.amazonaws.com", + }, + endpointKey{ + Region: "us-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "ssm-contacts-fips.us-west-1.amazonaws.com", + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "ssm-contacts-fips.us-west-2.amazonaws.com", + }, + }, + }, "ssm-incidents": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -27075,15 +27238,6 @@ var awsPartition = partition{ endpointKey{ Region: "eu-west-3", }: endpoint{}, - endpointKey{ - Region: "fips", - }: endpoint{ - Hostname: "storagegateway-fips.ca-central-1.amazonaws.com", - CredentialScope: credentialScope{ - Region: "ca-central-1", - }, - Deprecated: boxedTrue, - }, endpointKey{ Region: "me-central-1", }: endpoint{}, @@ -30979,6 +31133,16 @@ var awscnPartition = partition{ }: endpoint{}, }, }, + "backupstorage": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{}, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{}, + }, + }, "batch": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -33395,6 +33559,16 @@ var awsusgovPartition = partition{ }: endpoint{}, }, }, + "backupstorage": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{}, + }, + }, "batch": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{}, diff --git a/aws/version.go b/aws/version.go index bc221534523..6f3503c88d3 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.294" +const SDKVersion = "1.44.295" diff --git a/models/apis/batch/2016-08-10/api-2.json b/models/apis/batch/2016-08-10/api-2.json index b5b27268a03..dee929178e7 100644 --- a/models/apis/batch/2016-08-10/api-2.json +++ b/models/apis/batch/2016-08-10/api-2.json @@ -589,7 +589,8 @@ "secrets":{"shape":"SecretList"}, "networkConfiguration":{"shape":"NetworkConfiguration"}, "fargatePlatformConfiguration":{"shape":"FargatePlatformConfiguration"}, - "ephemeralStorage":{"shape":"EphemeralStorage"} + "ephemeralStorage":{"shape":"EphemeralStorage"}, + "runtimePlatform":{"shape":"RuntimePlatform"} } }, "ContainerOverrides":{ @@ -642,7 +643,8 @@ "secrets":{"shape":"SecretList"}, "networkConfiguration":{"shape":"NetworkConfiguration"}, "fargatePlatformConfiguration":{"shape":"FargatePlatformConfiguration"}, - "ephemeralStorage":{"shape":"EphemeralStorage"} + "ephemeralStorage":{"shape":"EphemeralStorage"}, + "runtimePlatform":{"shape":"RuntimePlatform"} } }, "ContainerSummary":{ @@ -1700,6 +1702,13 @@ "evaluateOnExit":{"shape":"EvaluateOnExitList"} } }, + "RuntimePlatform":{ + "type":"structure", + "members":{ + "operatingSystemFamily":{"shape":"String"}, + "cpuArchitecture":{"shape":"String"} + } + }, "SchedulingPolicyDetail":{ "type":"structure", "required":[ diff --git a/models/apis/batch/2016-08-10/docs-2.json b/models/apis/batch/2016-08-10/docs-2.json index dce2ac75ed9..4e6470d5e45 100644 --- a/models/apis/batch/2016-08-10/docs-2.json +++ b/models/apis/batch/2016-08-10/docs-2.json @@ -2,8 +2,8 @@ "version": "2.0", "service": "Batch

Using Batch, you can run batch computing workloads on the Amazon Web Services Cloud. Batch computing is a common means for developers, scientists, and engineers to access large amounts of compute resources. Batch uses the advantages of the batch computing to remove the undifferentiated heavy lifting of configuring and managing required infrastructure. At the same time, it also adopts a familiar batch computing software approach. You can use Batch to efficiently provision resources d, and work toward eliminating capacity constraints, reducing your overall compute costs, and delivering results more quickly.

As a fully managed service, Batch can run batch computing workloads of any scale. Batch automatically provisions compute resources and optimizes workload distribution based on the quantity and scale of your specific workloads. With Batch, there's no need to install or manage batch computing software. This means that you can focus on analyzing results and solving your specific problems instead.

", "operations": { - "CancelJob": "

Cancels a job in an Batch job queue. Jobs that are in the SUBMITTED or PENDING are canceled. A job inRUNNABLE remains in RUNNABLE until it reaches the head of the job queue. Then the job status is updated to FAILED.

Jobs that progressed to the STARTING or RUNNING state aren't canceled. However, the API operation still succeeds, even if no job is canceled. These jobs must be terminated with the TerminateJob operation.

", - "CreateComputeEnvironment": "

Creates an Batch compute environment. You can create MANAGED or UNMANAGED compute environments. MANAGED compute environments can use Amazon EC2 or Fargate resources. UNMANAGED compute environments can only use EC2 resources.

In a managed compute environment, Batch manages the capacity and instance types of the compute resources within the environment. This is based on the compute resource specification that you define or the launch template that you specify when you create the compute environment. Either, you can choose to use EC2 On-Demand Instances and EC2 Spot Instances. Or, you can use Fargate and Fargate Spot capacity in your managed compute environment. You can optionally set a maximum price so that Spot Instances only launch when the Spot Instance price is less than a specified percentage of the On-Demand price.

Multi-node parallel jobs aren't supported on Spot Instances.

In an unmanaged compute environment, you can manage your own EC2 compute resources and have flexibility with how you configure your compute resources. For example, you can use custom AMIs. However, you must verify that each of your AMIs meet the Amazon ECS container instance AMI specification. For more information, see container instance AMIs in the Amazon Elastic Container Service Developer Guide. After you created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that's associated with it. Then, launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS container instance in the Amazon Elastic Container Service Developer Guide.

To create a compute environment that uses EKS resources, the caller must have permissions to call eks:DescribeCluster.

Batch doesn't automatically upgrade the AMIs in a compute environment after it's created. For example, it also doesn't update the AMIs in your compute environment when a newer version of the Amazon ECS optimized AMI is available. You're responsible for the management of the guest operating system. This includes any updates and security patches. You're also responsible for any additional application software or utilities that you install on the compute resources. There are two ways to use a new AMI for your Batch jobs. The original method is to complete these steps:

  1. Create a new compute environment with the new AMI.

  2. Add the compute environment to an existing job queue.

  3. Remove the earlier compute environment from your job queue.

  4. Delete the earlier compute environment.

In April 2022, Batch added enhanced support for updating compute environments. For more information, see Updating compute environments. To use the enhanced updating of compute environments to update AMIs, follow these rules:

If these rules are followed, any update that starts an infrastructure update causes the AMI ID to be re-selected. If the version setting in the launch template (launchTemplate) is set to $Latest or $Default, the latest or default version of the launch template is evaluated up at the time of the infrastructure update, even if the launchTemplate wasn't updated.

", + "CancelJob": "

Cancels a job in an Batch job queue. Jobs that are in the SUBMITTED or PENDING are canceled. A job inRUNNABLE remains in RUNNABLE until it reaches the head of the job queue. Then the job status is updated to FAILED.

A PENDING job is canceled after all dependency jobs are completed. Therefore, it may take longer than expected to cancel a job in PENDING status.

When you try to cancel an array parent job in PENDING, Batch attempts to cancel all child jobs. The array parent job is canceled when all child jobs are completed.

Jobs that progressed to the STARTING or RUNNING state aren't canceled. However, the API operation still succeeds, even if no job is canceled. These jobs must be terminated with the TerminateJob operation.

", + "CreateComputeEnvironment": "

Creates an Batch compute environment. You can create MANAGED or UNMANAGED compute environments. MANAGED compute environments can use Amazon EC2 or Fargate resources. UNMANAGED compute environments can only use EC2 resources.

In a managed compute environment, Batch manages the capacity and instance types of the compute resources within the environment. This is based on the compute resource specification that you define or the launch template that you specify when you create the compute environment. Either, you can choose to use EC2 On-Demand Instances and EC2 Spot Instances. Or, you can use Fargate and Fargate Spot capacity in your managed compute environment. You can optionally set a maximum price so that Spot Instances only launch when the Spot Instance price is less than a specified percentage of the On-Demand price.

Multi-node parallel jobs aren't supported on Spot Instances.

In an unmanaged compute environment, you can manage your own EC2 compute resources and have flexibility with how you configure your compute resources. For example, you can use custom AMIs. However, you must verify that each of your AMIs meet the Amazon ECS container instance AMI specification. For more information, see container instance AMIs in the Amazon Elastic Container Service Developer Guide. After you created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that's associated with it. Then, launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS container instance in the Amazon Elastic Container Service Developer Guide.

To create a compute environment that uses EKS resources, the caller must have permissions to call eks:DescribeCluster.

Batch doesn't automatically upgrade the AMIs in a compute environment after it's created. For example, it also doesn't update the AMIs in your compute environment when a newer version of the Amazon ECS optimized AMI is available. You're responsible for the management of the guest operating system. This includes any updates and security patches. You're also responsible for any additional application software or utilities that you install on the compute resources. There are two ways to use a new AMI for your Batch jobs. The original method is to complete these steps:

  1. Create a new compute environment with the new AMI.

  2. Add the compute environment to an existing job queue.

  3. Remove the earlier compute environment from your job queue.

  4. Delete the earlier compute environment.

In April 2022, Batch added enhanced support for updating compute environments. For more information, see Updating compute environments. To use the enhanced updating of compute environments to update AMIs, follow these rules:

If these rules are followed, any update that starts an infrastructure update causes the AMI ID to be re-selected. If the version setting in the launch template (launchTemplate) is set to $Latest or $Default, the latest or default version of the launch template is evaluated up at the time of the infrastructure update, even if the launchTemplate wasn't updated.

", "CreateJobQueue": "

Creates an Batch job queue. When you create a job queue, you associate one or more compute environments to the queue and assign an order of preference for the compute environments.

You also set a priority to the job queue that determines the order that the Batch scheduler places jobs onto its associated compute environments. For example, if a compute environment is associated with more than one job queue, the job queue with a higher priority is given preference for scheduling jobs to that compute environment.

", "CreateSchedulingPolicy": "

Creates an Batch scheduling policy.

", "DeleteComputeEnvironment": "

Deletes an Batch compute environment.

Before you can delete a compute environment, you must set its state to DISABLED with the UpdateComputeEnvironment API operation and disassociate it from any job queues with the UpdateJobQueue API operation. Compute environments that use Fargate resources must terminate all active jobs on that compute environment before deleting the compute environment. If this isn't done, the compute environment enters an invalid state.

", @@ -211,7 +211,7 @@ } }, "ContainerOverrides": { - "base": "

The overrides that should be sent to a container.

", + "base": "

The overrides that should be sent to a container.

For information about using Batch overrides when you connect event sources to targets, see BatchContainerOverrides.

", "refs": { "NodePropertyOverride$containerOverrides": "

The overrides that are sent to a node range.

", "SubmitJobRequest$containerOverrides": "

An object with various properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a command override. You can also override existing environment variables on a container or add new environment variables to it with an environment override.

" @@ -693,13 +693,13 @@ "AttemptContainerDetail$exitCode": "

The exit code for the job attempt. A non-zero exit code is considered failed.

", "ComputeEnvironmentDetail$unmanagedvCpus": "

The maximum number of VCPUs expected to be used for an unmanaged compute environment.

", "ComputeEnvironmentOrder$order": "

The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first.

", - "ComputeResource$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain (even if the compute environment is DISABLED).

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", - "ComputeResource$maxvCpus": "

The maximum number of Amazon EC2 vCPUs that a compute environment can reach.

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies using On-Demand or Spot Instances, and the BEST_FIT strategy using Spot Instances, Batch might need to exceed maxvCpus to meet your capacity requirements. In this event, Batch never exceeds maxvCpus by more than a single instance. For example, no more than a single instance from among those specified in your compute environment is allocated.

", - "ComputeResource$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment. Batch modifies this value between the minimum and maximum values based on job queue demand.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", + "ComputeResource$minvCpus": "

The minimum number of vCPUs that a compute environment should maintain (even if the compute environment is DISABLED).

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", + "ComputeResource$maxvCpus": "

The maximum number of vCPUs that a compute environment can support.

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies using On-Demand or Spot Instances, and the BEST_FIT strategy using Spot Instances, Batch might need to exceed maxvCpus to meet your capacity requirements. In this event, Batch never exceeds maxvCpus by more than a single instance. For example, no more than a single instance from among those specified in your compute environment is allocated.

", + "ComputeResource$desiredvCpus": "

The desired number of vCPUS in the compute environment. Batch modifies this value between the minimum and maximum values based on job queue demand.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", "ComputeResource$bidPercentage": "

The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, then the Spot price must be less than 20% of the current On-Demand price for that Amazon EC2 instance. You always pay the lowest (market) price and never more than your maximum percentage. If you leave this field empty, the default value is 100% of the On-Demand price. For most use cases, we recommend leaving this field empty.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", - "ComputeResourceUpdate$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain (even if the compute environment is DISABLED).

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", + "ComputeResourceUpdate$minvCpus": "

The minimum number of vCPUs that an environment should maintain (even if the compute environment is DISABLED).

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", "ComputeResourceUpdate$maxvCpus": "

The maximum number of Amazon EC2 vCPUs that an environment can reach.

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies using On-Demand or Spot Instances, and the BEST_FIT strategy using Spot Instances, Batch might need to exceed maxvCpus to meet your capacity requirements. In this event, Batch never exceeds maxvCpus by more than a single instance. That is, no more than a single instance from among those specified in your compute environment.

", - "ComputeResourceUpdate$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment. Batch modifies this value between the minimum and maximum values based on job queue demand.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

Batch doesn't support changing the desired number of vCPUs of an existing compute environment. Don't specify this parameter for compute environments using Amazon EKS clusters.

When you update the desiredvCpus setting, the value must be between the minvCpus and maxvCpus values.

Additionally, the updated desiredvCpus value must be greater than or equal to the current desiredvCpus value. For more information, see Troubleshooting Batch in the Batch User Guide.

", + "ComputeResourceUpdate$desiredvCpus": "

The desired number of vCPUS in the compute environment. Batch modifies this value between the minimum and maximum values based on job queue demand.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

Batch doesn't support changing the desired number of vCPUs of an existing compute environment. Don't specify this parameter for compute environments using Amazon EKS clusters.

When you update the desiredvCpus setting, the value must be between the minvCpus and maxvCpus values.

Additionally, the updated desiredvCpus value must be greater than or equal to the current desiredvCpus value. For more information, see Troubleshooting Batch in the Batch User Guide.

", "ComputeResourceUpdate$bidPercentage": "

The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, the Spot price must be less than 20% of the current On-Demand price for that Amazon EC2 instance. You always pay the lowest (market) price and never more than your maximum percentage. For most use cases, we recommend leaving this field empty.

When updating a compute environment, changing the bid percentage requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

", "ContainerDetail$vcpus": "

The number of vCPUs reserved for the container. For jobs that run on EC2 resources, you can specify the vCPU requirement for the job using resourceRequirements, but you can't specify the vCPU requirements in both the vcpus and resourceRequirements object. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places. It must be specified for each node at least once.

This parameter isn't applicable to jobs that run on Fargate resources. For jobs that run on Fargate resources, you must specify the vCPU requirement for the job using resourceRequirements.

", "ContainerDetail$memory": "

For jobs running on EC2 resources that didn't specify memory requirements using resourceRequirements, the number of MiB of memory reserved for the job. For other jobs, including all run on Fargate resources, see resourceRequirements.

", @@ -1121,6 +1121,13 @@ "SubmitJobRequest$retryStrategy": "

The retry strategy to use for failed jobs from this SubmitJob operation. When a retry strategy is specified here, it overrides the retry strategy defined in the job definition.

" } }, + "RuntimePlatform": { + "base": "

An object that represents the compute environment architecture for Batch jobs on Fargate.

", + "refs": { + "ContainerDetail$runtimePlatform": null, + "ContainerProperties$runtimePlatform": null + } + }, "SchedulingPolicyDetail": { "base": "

An object that represents a scheduling policy.

", "refs": { @@ -1335,6 +1342,8 @@ "RegisterJobDefinitionResponse$jobDefinitionName": "

The name of the job definition.

", "RegisterJobDefinitionResponse$jobDefinitionArn": "

The Amazon Resource Name (ARN) of the job definition.

", "ResourceRequirement$value": "

The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type=\"GPU\"

The number of physical GPUs to reserve for the container. Make sure that the number of GPUs reserved for all containers in a job doesn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs aren't available for jobs that are running on Fargate resources.

type=\"MEMORY\"

The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory management in the Batch User Guide.

For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 or 0.5

value = 2048

VCPU = 0.25, 0.5, or 1

value = 3072

VCPU = 0.5, or 1

value = 4096

VCPU = 0.5, 1, or 2

value = 5120, 6144, or 7168

VCPU = 1 or 2

value = 8192

VCPU = 1, 2, or 4

value = 9216, 10240, 11264, 12288, 13312, 14336, or 15360

VCPU = 2 or 4

value = 16384

VCPU = 2, 4, or 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696, or 30720

VCPU = 4

value = 20480, 24576, or 28672

VCPU = 4 or 8

value = 36864, 45056, 53248, or 61440

VCPU = 8

value = 32768, 40960, 49152, or 57344

VCPU = 8 or 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

VCPU = 16

type=\"VCPU\"

The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

The default for the Fargate On-Demand vCPU resource count quota is 6 vCPUs. For more information about Fargate quotas, see Fargate quotas in the Amazon Web Services General Reference.

For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, 4, 8, and 16

value = 0.25

MEMORY = 512, 1024, or 2048

value = 0.5

MEMORY = 1024, 2048, 3072, or 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, or 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688, or 122880

", + "RuntimePlatform$operatingSystemFamily": "

The operating system for the compute environment. Valid values are: LINUX (default), WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2022_CORE, and WINDOWS_SERVER_2022_FULL.

The following parameters can’t be set for Windows containers: linuxParameters, privileged, user, ulimits, readonlyRootFilesystem, and efsVolumeConfiguration.

The Batch Scheduler checks before registering a task definition with Fargate. If the job requires a Windows container and the first compute environment is LINUX, the compute environment is skipped and the next is checked until a Windows-based compute environment is found.

Fargate Spot is not supported for Windows-based containers on Fargate. A job queue will be blocked if a Fargate Windows job is submitted to a job queue with only Fargate Spot compute environments. However, you can attach both FARGATE and FARGATE_SPOT compute environments to the same job queue.

", + "RuntimePlatform$cpuArchitecture": "

The vCPU architecture. The default value is X86_64. Valid values are X86_64 and ARM64.

This parameter must be set to X86_64 for Windows containers.

", "SchedulingPolicyDetail$name": "

The name of the scheduling policy.

", "SchedulingPolicyDetail$arn": "

The Amazon Resource Name (ARN) of the scheduling policy. An example is arn:aws:batch:us-east-1:123456789012:scheduling-policy/HighPriority .

", "SchedulingPolicyListingDetail$arn": "

Amazon Resource Name (ARN) of the scheduling policy.

", @@ -1345,7 +1354,7 @@ "StringList$member": null, "SubmitJobRequest$jobName": "

The name of the job. It can be up to 128 letters long. The first character must be alphanumeric, can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).

", "SubmitJobRequest$jobQueue": "

The job queue where the job is submitted. You can specify either the name or the Amazon Resource Name (ARN) of the queue.

", - "SubmitJobRequest$shareIdentifier": "

The share identifier for the job. If the job queue doesn't have a scheduling policy, then this parameter must not be specified. If the job queue has a scheduling policy, then this parameter must be specified.

", + "SubmitJobRequest$shareIdentifier": "

The share identifier for the job. Don't specify this parameter if the job queue doesn't have a scheduling policy. If the job queue has a scheduling policy, then this parameter must be specified.

This string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).

", "SubmitJobRequest$jobDefinition": "

The job definition used by this job. This value can be one of definition-name, definition-name:revision, or the Amazon Resource Name (ARN) for the job definition, with or without the revision (arn:aws:batch:region:account:job-definition/definition-name:revision , or arn:aws:batch:region:account:job-definition/definition-name ).

If the revision is not specified, then the latest active revision is used.

", "SubmitJobResponse$jobArn": "

The Amazon Resource Name (ARN) for the job.

", "SubmitJobResponse$jobName": "

The name of the job.

", @@ -1380,7 +1389,7 @@ "ComputeResourceUpdate$securityGroupIds": "

The Amazon EC2 security groups that are associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. For Fargate compute resources, providing an empty list is handled as if this parameter wasn't specified and no change is made. For EC2 compute resources, providing an empty list removes the security groups from the compute resource.

When updating a compute environment, changing the EC2 security groups requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

", "ComputeResourceUpdate$instanceTypes": "

The instances types that can be launched. You can specify instance families to launch any instance type within those families (for example, c5 or p3), or you can specify specific sizes within a family (such as c5.8xlarge). You can also choose optimal to select instance types (from the C4, M4, and R4 instance families) that match the demand of your job queues.

When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see Updating compute environments in the Batch User Guide.

This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.

When you create a compute environment, the instance types that you select for the compute environment must share the same architecture. For example, you can't mix x86 and ARM instances in the same compute environment.

Currently, optimal uses instance types from the C4, M4, and R4 instance families. In Regions that don't have instance types from those instance families, instance types from the C5, M5, and R5 instance families are used.

", "ContainerDetail$command": "

The command that's passed to the container.

", - "ContainerOverrides$command": "

The command to send to the container that overrides the default command from the Docker image or the job definition.

", + "ContainerOverrides$command": "

The command to send to the container that overrides the default command from the Docker image or the job definition.

This parameter can't contain an empty string.

", "ContainerProperties$command": "

The command that's passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#cmd.

", "DescribeComputeEnvironmentsRequest$computeEnvironments": "

A list of up to 100 compute environment names or full Amazon Resource Name (ARN) entries.

", "DescribeJobDefinitionsRequest$jobDefinitions": "

A list of up to 100 job definitions. Each entry in the list can either be an ARN in the format arn:aws:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision} or a short version using the form ${JobDefinitionName}:${Revision}.

", diff --git a/models/apis/batch/2016-08-10/endpoint-tests-1.json b/models/apis/batch/2016-08-10/endpoint-tests-1.json index 6deeaba31ae..ae9a2e7ca0a 100644 --- a/models/apis/batch/2016-08-10/endpoint-tests-1.json +++ b/models/apis/batch/2016-08-10/endpoint-tests-1.json @@ -8,9 +8,9 @@ } }, "params": { - "UseDualStack": false, "Region": "af-south-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -21,9 +21,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -34,9 +34,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-northeast-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -47,9 +47,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-northeast-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-northeast-3", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-south-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-southeast-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -99,9 +99,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-southeast-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -112,9 +112,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ap-southeast-3", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -125,9 +125,9 @@ } }, "params": { - "UseDualStack": false, "Region": "ca-central-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -138,9 +138,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-central-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -151,9 +151,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -164,9 +164,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-south-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -177,9 +177,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-west-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -190,9 +190,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-west-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -203,9 +203,9 @@ } }, "params": { - "UseDualStack": false, "Region": "eu-west-3", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -216,9 +216,9 @@ } }, "params": { - "UseDualStack": false, "Region": "me-south-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -229,9 +229,9 @@ } }, "params": { - "UseDualStack": false, "Region": "sa-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -242,9 +242,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -255,9 +255,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -268,9 +268,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -281,9 +281,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-2", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -294,9 +294,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-west-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -307,9 +307,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-west-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -320,9 +320,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-west-2", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -333,9 +333,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-west-2", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -346,9 +346,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -359,9 +359,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -372,9 +372,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -385,9 +385,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-northwest-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -398,9 +398,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -411,9 +411,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -424,9 +424,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -437,9 +437,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -450,9 +450,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -463,9 +463,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-west-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -476,9 +476,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-gov-west-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -489,9 +489,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-gov-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -502,9 +502,9 @@ } }, "params": { - "UseDualStack": true, "Region": "us-gov-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -513,9 +513,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-iso-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -526,9 +526,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-iso-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -537,9 +537,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-iso-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -550,9 +550,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-iso-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -561,9 +561,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -574,9 +574,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -585,9 +585,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -598,9 +598,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { @@ -611,9 +611,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -625,8 +625,8 @@ } }, "params": { - "UseDualStack": false, "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -636,9 +636,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -648,9 +648,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } }, diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index 520a12797e1..bc5dee05f34 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -10155,11 +10155,11 @@ }, "EndpointInputConfiguration":{ "type":"structure", - "required":["InstanceType"], "members":{ "InstanceType":{"shape":"ProductionVariantInstanceType"}, "InferenceSpecificationName":{"shape":"InferenceSpecificationName"}, - "EnvironmentParameterRanges":{"shape":"EnvironmentParameterRanges"} + "EnvironmentParameterRanges":{"shape":"EnvironmentParameterRanges"}, + "ServerlessConfig":{"shape":"ProductionVariantServerlessConfig"} } }, "EndpointInputConfigurations":{ @@ -10192,15 +10192,14 @@ "type":"structure", "required":[ "EndpointName", - "VariantName", - "InstanceType", - "InitialInstanceCount" + "VariantName" ], "members":{ "EndpointName":{"shape":"String"}, "VariantName":{"shape":"String"}, "InstanceType":{"shape":"ProductionVariantInstanceType"}, - "InitialInstanceCount":{"shape":"Integer"} + "InitialInstanceCount":{"shape":"InitialInstanceCount"}, + "ServerlessConfig":{"shape":"ProductionVariantServerlessConfig"} } }, "EndpointPerformance":{ @@ -12135,6 +12134,10 @@ "min":1, "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}$" }, + "InitialInstanceCount":{ + "type":"integer", + "min":1 + }, "InitialNumberOfUsers":{ "type":"integer", "min":1 @@ -15323,6 +15326,10 @@ "CrossAccountModelRegisterRoleArn":{"shape":"RoleArn"} } }, + "ModelSetupTime":{ + "type":"integer", + "min":0 + }, "ModelSortKey":{ "type":"string", "enum":[ @@ -17675,7 +17682,8 @@ "PayloadConfig":{"shape":"RecommendationJobPayloadConfig"}, "NearestModelName":{"shape":"String"}, "SupportedInstanceTypes":{"shape":"RecommendationJobSupportedInstanceTypes"}, - "DataInputConfig":{"shape":"RecommendationJobDataInputConfig"} + "DataInputConfig":{"shape":"RecommendationJobDataInputConfig"}, + "SupportedEndpointType":{"shape":"RecommendationJobSupportedEndpointType"} } }, "RecommendationJobDataInputConfig":{ @@ -17765,6 +17773,13 @@ "type":"list", "member":{"shape":"String"} }, + "RecommendationJobSupportedEndpointType":{ + "type":"string", + "enum":[ + "RealTime", + "Serverless" + ] + }, "RecommendationJobSupportedInstanceTypes":{ "type":"list", "member":{"shape":"String"} @@ -17823,7 +17838,8 @@ "MaxInvocations":{"shape":"Integer"}, "ModelLatency":{"shape":"Integer"}, "CpuUtilization":{"shape":"UtilizationMetric"}, - "MemoryUtilization":{"shape":"UtilizationMetric"} + "MemoryUtilization":{"shape":"UtilizationMetric"}, + "ModelSetupTime":{"shape":"ModelSetupTime"} } }, "RecommendationStatus":{ diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 97167fa526c..a9673ccc8bd 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -1553,8 +1553,8 @@ "CapacitySize": { "base": "

Specifies the type and size of the endpoint capacity to activate for a blue/green deployment, a rolling deployment, or a rollback strategy. You can specify your batches as either instance count or the overall percentage or your fleet.

For a rollback strategy, if you don't specify the fields in this object, or if you set the Value to 100%, then SageMaker uses a blue/green rollback strategy and rolls all traffic back to the blue fleet.

", "refs": { - "RollingUpdatePolicy$MaximumBatchSize": "

Batch size for each rolling step to provision capacity and turn on traffic on the new endpoint fleet, and terminate capacity on the old endpoint fleet. Value must be between 5% to 50% of the variant's total instance count.

", - "RollingUpdatePolicy$RollbackMaximumBatchSize": "

Batch size for rollback to the old endpoint fleet. Each rolling step to provision capacity and turn on traffic on the old endpoint fleet, and terminate capacity on the new endpoint fleet. If this field is absent, the default value will be set to 100% of total capacity which means to bring up the whole capacity of the old fleet at once during rollback.

", + "RollingUpdatePolicy$MaximumBatchSize": null, + "RollingUpdatePolicy$RollbackMaximumBatchSize": null, "TrafficRoutingConfig$CanarySize": "

Batch size for the first step to turn on traffic on the new endpoint fleet. Value must be less than or equal to 50% of the variant's total instance count.

", "TrafficRoutingConfig$LinearStepSize": "

Batch size for each step to turn on traffic on the new endpoint fleet. Value must be 10-50% of the variant's total instance count.

" } @@ -6745,6 +6745,12 @@ "ModelConfiguration$InferenceSpecificationName": "

The inference specification name in the model package version.

" } }, + "InitialInstanceCount": { + "base": null, + "refs": { + "EndpointOutputConfiguration$InitialInstanceCount": "

The number of instances recommended to launch initially.

" + } + }, "InitialNumberOfUsers": { "base": null, "refs": { @@ -6846,7 +6852,6 @@ "EdgeDeploymentStatus$EdgeDeploymentSuccessInStage": "

The number of edge devices with the successful deployment in the current stage.

", "EdgeDeploymentStatus$EdgeDeploymentPendingInStage": "

The number of edge devices yet to pick up the deployment in current stage, or in progress.

", "EdgeDeploymentStatus$EdgeDeploymentFailedInStage": "

The number of edge devices that failed the deployment in current stage.

", - "EndpointOutputConfiguration$InitialInstanceCount": "

The number of instances recommended to launch initially.

", "HyperParameterTuningJobCompletionDetails$NumberOfTrainingJobsObjectiveNotImproving": "

The number of training jobs launched by a tuning job that are not improving (1% or less) as measured by model performance evaluated against an objective function.

", "HyperParameterTuningJobConsumedResources$RuntimeInSeconds": "

The wall clock runtime in seconds used by your hyperparameter tuning job.

", "InferenceMetrics$MaxInvocations": "

The expected maximum number of requests per minute for the instance.

", @@ -9154,6 +9159,12 @@ "CanvasAppSettings$ModelRegisterSettings": "

The model registry settings for the SageMaker Canvas application.

" } }, + "ModelSetupTime": { + "base": null, + "refs": { + "RecommendationMetrics$ModelSetupTime": "

The time it takes to launch new compute resources for a serverless endpoint. The time can vary depending on the model size, how long it takes to download the model, and the start-up time of the container.

NaN indicates that the value is not available.

" + } + }, "ModelSortKey": { "base": null, "refs": { @@ -11006,6 +11017,8 @@ "ProductionVariantServerlessConfig": { "base": "

Specifies the serverless configuration for an endpoint variant.

", "refs": { + "EndpointInputConfiguration$ServerlessConfig": null, + "EndpointOutputConfiguration$ServerlessConfig": null, "PendingProductionVariantSummary$CurrentServerlessConfig": "

The serverless configuration for the endpoint.

", "PendingProductionVariantSummary$DesiredServerlessConfig": "

The serverless configuration requested for this deployment, as specified in the endpoint configuration for the endpoint.

", "ProductionVariant$ServerlessConfig": "

The serverless configuration for an endpoint. Specifies a serverless endpoint configuration instead of an instance-based endpoint configuration.

", @@ -11499,6 +11512,12 @@ "RecommendationJobPayloadConfig$SupportedContentTypes": "

The supported MIME types for the input data.

" } }, + "RecommendationJobSupportedEndpointType": { + "base": null, + "refs": { + "RecommendationJobContainerConfig$SupportedEndpointType": "

The endpoint type to receive recommendations for. By default this is null, and the results of the inference recommendation job return a combined list of both real-time and serverless benchmarks. By specifying a value for this field, you can receive a longer list of benchmarks for the desired endpoint type.

" + } + }, "RecommendationJobSupportedInstanceTypes": { "base": null, "refs": { @@ -12254,7 +12273,7 @@ "ServerlessProvisionedConcurrency": { "base": null, "refs": { - "ProductionVariantServerlessConfig$ProvisionedConcurrency": "

The amount of provisioned concurrency to allocate for the serverless endpoint. Should be less than or equal to MaxConcurrency.

", + "ProductionVariantServerlessConfig$ProvisionedConcurrency": "

The amount of provisioned concurrency to allocate for the serverless endpoint. Should be less than or equal to MaxConcurrency.

This field is not supported for serverless endpoint recommendations for Inference Recommender jobs. For more information about creating an Inference Recommender job, see CreateInferenceRecommendationsJobs.

", "ProductionVariantServerlessUpdateConfig$ProvisionedConcurrency": "

The updated amount of provisioned concurrency to allocate for the serverless endpoint. Should be less than or equal to MaxConcurrency.

" } }, @@ -13358,7 +13377,7 @@ "TimeSeriesForecastingJobConfig": { "base": "

The collection of settings used by an AutoML job V2 for the time-series forecasting problem type.

The TimeSeriesForecastingJobConfig problem type is only available in private beta. Contact Amazon Web Services Support or your account manager to learn more about access privileges.

", "refs": { - "AutoMLProblemTypeConfig$TimeSeriesForecastingJobConfig": "

Settings used to configure an AutoML job V2 for a time-series forecasting problem type.

" + "AutoMLProblemTypeConfig$TimeSeriesForecastingJobConfig": "

Settings used to configure an AutoML job V2 for a time-series forecasting problem type.

The TimeSeriesForecastingJobConfig problem type is only available in private beta. Contact Amazon Web Services Support or your account manager to learn more about access privileges.

" } }, "TimeSeriesForecastingSettings": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 344555c7d05..4f3162af01d 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -1990,6 +1990,12 @@ "deprecated" : true, "hostname" : "athena-fips.us-west-2.amazonaws.com" }, + "me-central-1" : { + "variants" : [ { + "hostname" : "athena.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "me-south-1" : { "variants" : [ { "hostname" : "athena.me-south-1.api.aws", @@ -2189,9 +2195,32 @@ }, "backupstorage" : { "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, + "ap-south-1" : { }, + "ap-south-2" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ca-central-1" : { }, + "eu-central-1" : { }, + "eu-central-2" : { }, + "eu-north-1" : { }, + "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "me-central-1" : { }, + "me-south-1" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, + "us-west-1" : { }, "us-west-2" : { } } }, @@ -14416,23 +14445,6 @@ "tags" : [ "dualstack" ] } ] }, - "servicediscovery" : { - "credentialScope" : { - "region" : "ca-central-1" - }, - "deprecated" : true, - "variants" : [ { - "hostname" : "servicediscovery-fips.ca-central-1.amazonaws.com", - "tags" : [ "fips" ] - } ] - }, - "servicediscovery-fips" : { - "credentialScope" : { - "region" : "ca-central-1" - }, - "deprecated" : true, - "hostname" : "servicediscovery-fips.ca-central-1.amazonaws.com" - }, "us-east-1" : { "variants" : [ { "hostname" : "servicediscovery-fips.us-east-1.amazonaws.com", @@ -15292,6 +15304,74 @@ } } }, + "ssm-contacts" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ca-central-1" : { }, + "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "ssm-contacts-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "ssm-contacts-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "ssm-contacts-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "ssm-contacts-fips.us-west-2.amazonaws.com" + }, + "sa-east-1" : { }, + "us-east-1" : { + "variants" : [ { + "hostname" : "ssm-contacts-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "ssm-contacts-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "ssm-contacts-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "ssm-contacts-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "ssm-incidents" : { "endpoints" : { "ap-northeast-1" : { }, @@ -15537,13 +15617,6 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, - "fips" : { - "credentialScope" : { - "region" : "ca-central-1" - }, - "deprecated" : true, - "hostname" : "storagegateway-fips.ca-central-1.amazonaws.com" - }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -17873,6 +17946,12 @@ "cn-northwest-1" : { } } }, + "backupstorage" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "batch" : { "endpoints" : { "cn-north-1" : { }, @@ -19508,6 +19587,12 @@ "us-gov-west-1" : { } } }, + "backupstorage" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "batch" : { "defaults" : { "variants" : [ { diff --git a/service/batch/api.go b/service/batch/api.go index 7f1b6e6e8e9..fecbceef57d 100644 --- a/service/batch/api.go +++ b/service/batch/api.go @@ -60,6 +60,13 @@ func (c *Batch) CancelJobRequest(input *CancelJobInput) (req *request.Request, o // are canceled. A job inRUNNABLE remains in RUNNABLE until it reaches the head // of the job queue. Then the job status is updated to FAILED. // +// A PENDING job is canceled after all dependency jobs are completed. Therefore, +// it may take longer than expected to cancel a job in PENDING status. +// +// When you try to cancel an array parent job in PENDING, Batch attempts to +// cancel all child jobs. The array parent job is canceled when all child jobs +// are completed. +// // Jobs that progressed to the STARTING or RUNNING state aren't canceled. However, // the API operation still succeeds, even if no job is canceled. These jobs // must be terminated with the TerminateJob operation. @@ -207,7 +214,9 @@ func (c *Batch) CreateComputeEnvironmentRequest(input *CreateComputeEnvironmentI // or SPOT_CAPACITY_OPTIMIZED. // // - Set the update to latest image version (updateToLatestImageVersion) -// parameter to true. +// parameter to true. The updateToLatestImageVersion parameter is used when +// you update a compute environment. This parameter is ignored when you create +// a compute environment. // // - Don't specify an AMI ID in imageId, imageIdOverride (in ec2Configuration // (https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html)), @@ -3259,9 +3268,8 @@ type ComputeResource struct { // Don't specify it. BidPercentage *int64 `locationName:"bidPercentage" type:"integer"` - // The desired number of Amazon EC2 vCPUS in the compute environment. Batch - // modifies this value between the minimum and maximum values based on job queue - // demand. + // The desired number of vCPUS in the compute environment. Batch modifies this + // value between the minimum and maximum values based on job queue demand. // // This parameter isn't applicable to jobs that are running on Fargate resources. // Don't specify it. @@ -3341,7 +3349,7 @@ type ComputeResource struct { // Don't specify it. LaunchTemplate *LaunchTemplateSpecification `locationName:"launchTemplate" type:"structure"` - // The maximum number of Amazon EC2 vCPUs that a compute environment can reach. + // The maximum number of vCPUs that a compute environment can support. // // With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies // using On-Demand or Spot Instances, and the BEST_FIT strategy using Spot Instances, @@ -3353,8 +3361,8 @@ type ComputeResource struct { // MaxvCpus is a required field MaxvCpus *int64 `locationName:"maxvCpus" type:"integer" required:"true"` - // The minimum number of Amazon EC2 vCPUs that an environment should maintain - // (even if the compute environment is DISABLED). + // The minimum number of vCPUs that a compute environment should maintain (even + // if the compute environment is DISABLED). // // This parameter isn't applicable to jobs that are running on Fargate resources. // Don't specify it. @@ -3650,9 +3658,8 @@ type ComputeResourceUpdate struct { // Don't specify it. BidPercentage *int64 `locationName:"bidPercentage" type:"integer"` - // The desired number of Amazon EC2 vCPUS in the compute environment. Batch - // modifies this value between the minimum and maximum values based on job queue - // demand. + // The desired number of vCPUS in the compute environment. Batch modifies this + // value between the minimum and maximum values based on job queue demand. // // This parameter isn't applicable to jobs that are running on Fargate resources. // Don't specify it. @@ -3788,8 +3795,8 @@ type ComputeResourceUpdate struct { // compute environment. MaxvCpus *int64 `locationName:"maxvCpus" type:"integer"` - // The minimum number of Amazon EC2 vCPUs that an environment should maintain - // (even if the compute environment is DISABLED). + // The minimum number of vCPUs that an environment should maintain (even if + // the compute environment is DISABLED). // // This parameter isn't applicable to jobs that are running on Fargate resources. // Don't specify it. @@ -4163,6 +4170,10 @@ type ContainerDetail struct { // resources include GPU, MEMORY, and VCPU. ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"` + // An object that represents the compute environment architecture for Batch + // jobs on Fargate. + RuntimePlatform *RuntimePlatform `locationName:"runtimePlatform" type:"structure"` + // The secrets to pass to the container. For more information, see Specifying // sensitive data (https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) // in the Batch User Guide. @@ -4350,6 +4361,12 @@ func (s *ContainerDetail) SetResourceRequirements(v []*ResourceRequirement) *Con return s } +// SetRuntimePlatform sets the RuntimePlatform field's value. +func (s *ContainerDetail) SetRuntimePlatform(v *RuntimePlatform) *ContainerDetail { + s.RuntimePlatform = v + return s +} + // SetSecrets sets the Secrets field's value. func (s *ContainerDetail) SetSecrets(v []*Secret) *ContainerDetail { s.Secrets = v @@ -4387,11 +4404,16 @@ func (s *ContainerDetail) SetVolumes(v []*Volume) *ContainerDetail { } // The overrides that should be sent to a container. +// +// For information about using Batch overrides when you connect event sources +// to targets, see BatchContainerOverrides (https://docs.aws.amazon.com/eventbridge/latest/pipes-reference/API_BatchContainerOverrides.html). type ContainerOverrides struct { _ struct{} `type:"structure"` // The command to send to the container that overrides the default command from // the Docker image or the job definition. + // + // This parameter can't contain an empty string. Command []*string `locationName:"command" type:"list"` // The environment variables to send to the container. You can add new environment @@ -4679,6 +4701,10 @@ type ContainerProperties struct { // resources include GPU, MEMORY, and VCPU. ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"` + // An object that represents the compute environment architecture for Batch + // jobs on Fargate. + RuntimePlatform *RuntimePlatform `locationName:"runtimePlatform" type:"structure"` + // The secrets for the container. For more information, see Specifying sensitive // data (https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) // in the Batch User Guide. @@ -4897,6 +4923,12 @@ func (s *ContainerProperties) SetResourceRequirements(v []*ResourceRequirement) return s } +// SetRuntimePlatform sets the RuntimePlatform field's value. +func (s *ContainerProperties) SetRuntimePlatform(v *RuntimePlatform) *ContainerProperties { + s.RuntimePlatform = v + return s +} + // SetSecrets sets the Secrets field's value. func (s *ContainerProperties) SetSecrets(v []*Secret) *ContainerProperties { s.Secrets = v @@ -11436,6 +11468,66 @@ func (s *RetryStrategy) SetEvaluateOnExit(v []*EvaluateOnExit) *RetryStrategy { return s } +// An object that represents the compute environment architecture for Batch +// jobs on Fargate. +type RuntimePlatform struct { + _ struct{} `type:"structure"` + + // The vCPU architecture. The default value is X86_64. Valid values are X86_64 + // and ARM64. + // + // This parameter must be set to X86_64 for Windows containers. + CpuArchitecture *string `locationName:"cpuArchitecture" type:"string"` + + // The operating system for the compute environment. Valid values are: LINUX + // (default), WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2022_CORE, + // and WINDOWS_SERVER_2022_FULL. + // + // The following parameters can’t be set for Windows containers: linuxParameters, + // privileged, user, ulimits, readonlyRootFilesystem, and efsVolumeConfiguration. + // + // The Batch Scheduler checks before registering a task definition with Fargate. + // If the job requires a Windows container and the first compute environment + // is LINUX, the compute environment is skipped and the next is checked until + // a Windows-based compute environment is found. + // + // Fargate Spot is not supported for Windows-based containers on Fargate. A + // job queue will be blocked if a Fargate Windows job is submitted to a job + // queue with only Fargate Spot compute environments. However, you can attach + // both FARGATE and FARGATE_SPOT compute environments to the same job queue. + OperatingSystemFamily *string `locationName:"operatingSystemFamily" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RuntimePlatform) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RuntimePlatform) GoString() string { + return s.String() +} + +// SetCpuArchitecture sets the CpuArchitecture field's value. +func (s *RuntimePlatform) SetCpuArchitecture(v string) *RuntimePlatform { + s.CpuArchitecture = &v + return s +} + +// SetOperatingSystemFamily sets the OperatingSystemFamily field's value. +func (s *RuntimePlatform) SetOperatingSystemFamily(v string) *RuntimePlatform { + s.OperatingSystemFamily = &v + return s +} + // An object that represents a scheduling policy. type SchedulingPolicyDetail struct { _ struct{} `type:"structure"` @@ -11845,9 +11937,12 @@ type SubmitJobInput struct { // The minimum supported value is 0 and the maximum supported value is 9999. SchedulingPriorityOverride *int64 `locationName:"schedulingPriorityOverride" type:"integer"` - // The share identifier for the job. If the job queue doesn't have a scheduling - // policy, then this parameter must not be specified. If the job queue has a - // scheduling policy, then this parameter must be specified. + // The share identifier for the job. Don't specify this parameter if the job + // queue doesn't have a scheduling policy. If the job queue has a scheduling + // policy, then this parameter must be specified. + // + // This string is limited to 255 alphanumeric characters, and can be followed + // by an asterisk (*). ShareIdentifier *string `locationName:"shareIdentifier" type:"string"` // The tags that you apply to the job request to help you categorize and organize diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index dd782fb74df..595f5655f6c 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -32729,6 +32729,10 @@ type AutoMLProblemTypeConfig struct { // Settings used to configure an AutoML job V2 for a time-series forecasting // problem type. + // + // The TimeSeriesForecastingJobConfig problem type is only available in private + // beta. Contact Amazon Web Services Support or your account manager to learn + // more about access privileges. TimeSeriesForecastingJobConfig *TimeSeriesForecastingJobConfig `type:"structure"` } @@ -66652,9 +66656,10 @@ type EndpointInputConfiguration struct { InferenceSpecificationName *string `min:"1" type:"string"` // The instance types to use for the load test. - // - // InstanceType is a required field - InstanceType *string `type:"string" required:"true" enum:"ProductionVariantInstanceType"` + InstanceType *string `type:"string" enum:"ProductionVariantInstanceType"` + + // Specifies the serverless configuration for an endpoint variant. + ServerlessConfig *ProductionVariantServerlessConfig `type:"structure"` } // String returns the string representation. @@ -66681,14 +66686,16 @@ func (s *EndpointInputConfiguration) Validate() error { if s.InferenceSpecificationName != nil && len(*s.InferenceSpecificationName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InferenceSpecificationName", 1)) } - if s.InstanceType == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceType")) - } if s.EnvironmentParameterRanges != nil { if err := s.EnvironmentParameterRanges.Validate(); err != nil { invalidParams.AddNested("EnvironmentParameterRanges", err.(request.ErrInvalidParams)) } } + if s.ServerlessConfig != nil { + if err := s.ServerlessConfig.Validate(); err != nil { + invalidParams.AddNested("ServerlessConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -66714,6 +66721,12 @@ func (s *EndpointInputConfiguration) SetInstanceType(v string) *EndpointInputCon return s } +// SetServerlessConfig sets the ServerlessConfig field's value. +func (s *EndpointInputConfiguration) SetServerlessConfig(v *ProductionVariantServerlessConfig) *EndpointInputConfiguration { + s.ServerlessConfig = v + return s +} + // The metadata of the endpoint. type EndpointMetadata struct { _ struct{} `type:"structure"` @@ -66788,14 +66801,13 @@ type EndpointOutputConfiguration struct { EndpointName *string `type:"string" required:"true"` // The number of instances recommended to launch initially. - // - // InitialInstanceCount is a required field - InitialInstanceCount *int64 `type:"integer" required:"true"` + InitialInstanceCount *int64 `min:"1" type:"integer"` // The instance type recommended by Amazon SageMaker Inference Recommender. - // - // InstanceType is a required field - InstanceType *string `type:"string" required:"true" enum:"ProductionVariantInstanceType"` + InstanceType *string `type:"string" enum:"ProductionVariantInstanceType"` + + // Specifies the serverless configuration for an endpoint variant. + ServerlessConfig *ProductionVariantServerlessConfig `type:"structure"` // The name of the production variant (deployed model) made during a recommendation // job. @@ -66840,6 +66852,12 @@ func (s *EndpointOutputConfiguration) SetInstanceType(v string) *EndpointOutputC return s } +// SetServerlessConfig sets the ServerlessConfig field's value. +func (s *EndpointOutputConfiguration) SetServerlessConfig(v *ProductionVariantServerlessConfig) *EndpointOutputConfiguration { + s.ServerlessConfig = v + return s +} + // SetVariantName sets the VariantName field's value. func (s *EndpointOutputConfiguration) SetVariantName(v string) *EndpointOutputConfiguration { s.VariantName = &v @@ -98031,6 +98049,10 @@ type ProductionVariantServerlessConfig struct { // The amount of provisioned concurrency to allocate for the serverless endpoint. // Should be less than or equal to MaxConcurrency. + // + // This field is not supported for serverless endpoint recommendations for Inference + // Recommender jobs. For more information about creating an Inference Recommender + // job, see CreateInferenceRecommendationsJobs (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateInferenceRecommendationsJob.html). ProvisionedConcurrency *int64 `min:"1" type:"integer"` } @@ -100168,6 +100190,13 @@ type RecommendationJobContainerConfig struct { // Specifies the SamplePayloadUrl and all other sample payload-related fields. PayloadConfig *RecommendationJobPayloadConfig `type:"structure"` + // The endpoint type to receive recommendations for. By default this is null, + // and the results of the inference recommendation job return a combined list + // of both real-time and serverless benchmarks. By specifying a value for this + // field, you can receive a longer list of benchmarks for the desired endpoint + // type. + SupportedEndpointType *string `type:"string" enum:"RecommendationJobSupportedEndpointType"` + // A list of the instance types that are used to generate inferences in real-time. SupportedInstanceTypes []*string `type:"list"` @@ -100245,6 +100274,12 @@ func (s *RecommendationJobContainerConfig) SetPayloadConfig(v *RecommendationJob return s } +// SetSupportedEndpointType sets the SupportedEndpointType field's value. +func (s *RecommendationJobContainerConfig) SetSupportedEndpointType(v string) *RecommendationJobContainerConfig { + s.SupportedEndpointType = &v + return s +} + // SetSupportedInstanceTypes sets the SupportedInstanceTypes field's value. func (s *RecommendationJobContainerConfig) SetSupportedInstanceTypes(v []*string) *RecommendationJobContainerConfig { s.SupportedInstanceTypes = v @@ -100866,6 +100901,13 @@ type RecommendationMetrics struct { // // ModelLatency is a required field ModelLatency *int64 `type:"integer" required:"true"` + + // The time it takes to launch new compute resources for a serverless endpoint. + // The time can vary depending on the model size, how long it takes to download + // the model, and the start-up time of the container. + // + // NaN indicates that the value is not available. + ModelSetupTime *int64 `type:"integer"` } // String returns the string representation. @@ -100922,6 +100964,12 @@ func (s *RecommendationMetrics) SetModelLatency(v int64) *RecommendationMetrics return s } +// SetModelSetupTime sets the ModelSetupTime field's value. +func (s *RecommendationMetrics) SetModelSetupTime(v int64) *RecommendationMetrics { + s.ModelSetupTime = &v + return s +} + // Configuration for Redshift Dataset Definition input. type RedshiftDatasetDefinition struct { _ struct{} `type:"structure"` @@ -102336,9 +102384,13 @@ func (s *RetryStrategy) SetMaximumRetryAttempts(v int64) *RetryStrategy { type RollingUpdatePolicy struct { _ struct{} `type:"structure"` - // Batch size for each rolling step to provision capacity and turn on traffic - // on the new endpoint fleet, and terminate capacity on the old endpoint fleet. - // Value must be between 5% to 50% of the variant's total instance count. + // Specifies the type and size of the endpoint capacity to activate for a blue/green + // deployment, a rolling deployment, or a rollback strategy. You can specify + // your batches as either instance count or the overall percentage or your fleet. + // + // For a rollback strategy, if you don't specify the fields in this object, + // or if you set the Value to 100%, then SageMaker uses a blue/green rollback + // strategy and rolls all traffic back to the blue fleet. // // MaximumBatchSize is a required field MaximumBatchSize *CapacitySize `type:"structure" required:"true"` @@ -102346,11 +102398,13 @@ type RollingUpdatePolicy struct { // The time limit for the total deployment. Exceeding this limit causes a timeout. MaximumExecutionTimeoutInSeconds *int64 `min:"600" type:"integer"` - // Batch size for rollback to the old endpoint fleet. Each rolling step to provision - // capacity and turn on traffic on the old endpoint fleet, and terminate capacity - // on the new endpoint fleet. If this field is absent, the default value will - // be set to 100% of total capacity which means to bring up the whole capacity - // of the old fleet at once during rollback. + // Specifies the type and size of the endpoint capacity to activate for a blue/green + // deployment, a rolling deployment, or a rollback strategy. You can specify + // your batches as either instance count or the overall percentage or your fleet. + // + // For a rollback strategy, if you don't specify the fields in this object, + // or if you set the Value to 100%, then SageMaker uses a blue/green rollback + // strategy and rolls all traffic back to the blue fleet. RollbackMaximumBatchSize *CapacitySize `type:"structure"` // The length of the baking period, during which SageMaker monitors alarms for @@ -121878,6 +121932,22 @@ func RecommendationJobStatus_Values() []string { } } +const ( + // RecommendationJobSupportedEndpointTypeRealTime is a RecommendationJobSupportedEndpointType enum value + RecommendationJobSupportedEndpointTypeRealTime = "RealTime" + + // RecommendationJobSupportedEndpointTypeServerless is a RecommendationJobSupportedEndpointType enum value + RecommendationJobSupportedEndpointTypeServerless = "Serverless" +) + +// RecommendationJobSupportedEndpointType_Values returns all elements of the RecommendationJobSupportedEndpointType enum +func RecommendationJobSupportedEndpointType_Values() []string { + return []string{ + RecommendationJobSupportedEndpointTypeRealTime, + RecommendationJobSupportedEndpointTypeServerless, + } +} + const ( // RecommendationJobTypeDefault is a RecommendationJobType enum value RecommendationJobTypeDefault = "Default"