UpdateEndpoint
Deploys the EndpointConfig
specified in the request to a new fleet of
instances. SageMaker shifts endpoint traffic to the new instances with the updated endpoint
configuration and then deletes the old instances using the previous
EndpointConfig
(there is no availability loss). For more information
about how to control the update and traffic shifting process, see Update
models in production.
When SageMaker receives the request, it sets the endpoint status to Updating
.
After updating the endpoint, it sets the status to InService
. To check the
status of an endpoint, use the DescribeEndpoint API.
Note
You must not delete an EndpointConfig
in use by an endpoint that is
live or while the UpdateEndpoint
or CreateEndpoint
operations are being performed on the endpoint. To update an endpoint, you must
create a new EndpointConfig
.
If you delete the EndpointConfig
of an endpoint that is active or
being created or updated you may lose visibility into the instance type the endpoint
is using. The endpoint must be deleted in order to stop incurring charges.
Request Syntax
{
"DeploymentConfig": {
"AutoRollbackConfiguration": {
"Alarms": [
{
"AlarmName": "string
"
}
]
},
"BlueGreenUpdatePolicy": {
"MaximumExecutionTimeoutInSeconds": number
,
"TerminationWaitInSeconds": number
,
"TrafficRoutingConfiguration": {
"CanarySize": {
"Type": "string
",
"Value": number
},
"LinearStepSize": {
"Type": "string
",
"Value": number
},
"Type": "string
",
"WaitIntervalInSeconds": number
}
},
"RollingUpdatePolicy": {
"MaximumBatchSize": {
"Type": "string
",
"Value": number
},
"MaximumExecutionTimeoutInSeconds": number
,
"RollbackMaximumBatchSize": {
"Type": "string
",
"Value": number
},
"WaitIntervalInSeconds": number
}
},
"EndpointConfigName": "string
",
"EndpointName": "string
",
"ExcludeRetainedVariantProperties": [
{
"VariantPropertyType": "string
"
}
],
"RetainAllVariantProperties": boolean
,
"RetainDeploymentConfig": boolean
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- DeploymentConfig
-
The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations.
Type: DeploymentConfig object
Required: No
- EndpointConfigName
-
The name of the new endpoint configuration.
Type: String
Length Constraints: Maximum length of 63.
Pattern:
^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}
Required: Yes
- EndpointName
-
The name of the endpoint whose configuration you want to update.
Type: String
Length Constraints: Maximum length of 63.
Pattern:
^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}
Required: Yes
- ExcludeRetainedVariantProperties
-
When you are updating endpoint resources with
RetainAllVariantProperties
, whose value is set totrue
,ExcludeRetainedVariantProperties
specifies the list of type VariantProperty to override with the values provided byEndpointConfig
. If you don't specify a value forExcludeRetainedVariantProperties
, no variant properties are overridden.Type: Array of VariantProperty objects
Array Members: Minimum number of 0 items. Maximum number of 3 items.
Required: No
- RetainAllVariantProperties
-
When updating endpoint resources, enables or disables the retention of variant properties, such as the instance count or the variant weight. To retain the variant properties of an endpoint when updating it, set
RetainAllVariantProperties
totrue
. To use the variant properties specified in a newEndpointConfig
call when updating an endpoint, setRetainAllVariantProperties
tofalse
. The default isfalse
.Type: Boolean
Required: No
- RetainDeploymentConfig
-
Specifies whether to reuse the last deployment configuration. The default value is false (the configuration is not reused).
Type: Boolean
Required: No
Response Syntax
{
"EndpointArn": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- EndpointArn
-
The Amazon Resource Name (ARN) of the endpoint.
Type: String
Length Constraints: Minimum length of 20. Maximum length of 2048.
Pattern:
arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:endpoint/.*
Errors
For information about the errors that are common to all actions, see Common Errors.
- ResourceLimitExceeded
-
You have exceeded an SageMaker resource limit. For example, you might have too many training jobs created.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: