Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation du déplacement de trafic tout à la fois
Avec le déplacement tout à la fois du trafic, vous pouvez rapidement déployer une mise à jour du point de terminaison à l'aide des barrières de protection de sécurité d'un déploiement bleu/vert. Vous pouvez utiliser cette option de transfert de trafic pour minimiser la durée de mise à jour tout en profitant des garanties de disponibilité des déploiements bleu/vert. La fonction de période de préparation vous aide à contrôler les performances et les fonctionnalités de vos nouvelles instances avant de mettre fin à vos anciennes instances, garantissant que votre nouvelle flotte est pleinement opérationnelle.
Le diagramme suivant montre comment le déplacement de trafic gère simultanément les anciennes et les nouvelles flottes.
Lorsque vous utilisez le déplacement de trafic tout à la fois, SageMaker AI achemine l’intégralité du trafic vers la nouvelle flotte (flotte verte). Une fois que la flotte verte commence à recevoir du trafic, la période de préparation commence. La période de préparation est une durée définie pendant laquelle des alarmes Amazon CloudWatch prédéfinies surveillent les performances de la flotte verte. Si aucune alarme ne se déclenche pendant la période de préparation, SageMaker AI résilie l’ancienne flotte (flotte bleue). Si des alarmes se déclenchent pendant la période de préparation, une restauration automatique se déclenche et l'intégralité du trafic est restauré sur la flotte bleue.
Prérequis
Avant de configurer un déploiement avec un déplacement de trafic All at once (Tout à la fois), vous devez créer des alarmes Amazon CloudWatch pour contrôler les métriques à partir de votre point de terminaison. Si l'une des alarmes se déclenche pendant la période de préparation, le trafic est restauré sur votre flotte bleue. Pour savoir comment configurer des alarmes CloudWatch sur un point de terminaison, consultez la page des prérequis Configuration et surveillance de la restauration automatique. Pour en savoir plus sur les alarmes CloudWatch, consultez Utilisation des alarmes Amazon CloudWatch dans le Guide de l’utilisateur Amazon CloudWatch.
Configurer le déplacement de trafic All in once (Tout à la fois)
Une fois que vous êtes prêt pour le déploiement et que vous avez configuré les alarmes CloudWatch pour le point de terminaison, vous pouvez utiliser l’API UpdateEndpoint SageMaker AI ou la commande update-endpoint dans l’AWS Command Line Interface pour lancer le déploiement.
Rubriques
Comment mettre à jour un point de terminaison (API)
L'exemple suivant montre comment vous pouvez mettre à jour votre point de terminaison avec un déplacement de trafic All at once (Tout à la fois) à l'aide de UpdateEndpoint dans l'API Amazon SageMaker.
import boto3 client = boto3.client("sagemaker") response = client.update_endpoint( EndpointName="<your-endpoint-name>", EndpointConfigName="<your-config-name>", DeploymentConfig={ "BlueGreenUpdatePolicy": { "TrafficRoutingConfiguration": { "Type": "ALL_AT_ONCE" }, "TerminationWaitInSeconds": 600, "MaximumExecutionTimeoutInSeconds": 1800 }, "AutoRollbackConfiguration": { "Alarms": [ { "AlarmName": "<your-cw-alarm>" }, ] } } )
Pour configurer l'option de déplacement de trafic tout à la fois, procédez comme suit :
Pour
EndpointName, utilisez le nom du point de terminaison existant que vous souhaitez mettre à jour.Pour
EndpointConfigName, utilisez le nom de la configuration de point de terminaison que vous souhaitez utiliser.Sous
DeploymentConfigetBlueGreenUpdatePolicy, dansTrafficRoutingConfiguration, définissez le paramètreTypesurALL_AT_ONCE. Il est ainsi spécifié que le déploiement utilise le mode de déplacement de trafic All at once (Tout à la fois).Pour
TerminationWaitInSeconds, utilisez600. Ce paramètre indique à SageMaker AI d’attendre le laps de temps spécifié (en secondes) une fois que la flotte verte est entièrement active avant de résilier les instances de la flotte bleue. Dans cet exemple, SageMaker AI attend 10 minutes après la dernière période de préparation avant de résilier la flotte bleue.Pour
MaximumExecutionTimeoutInSeconds, utilisez1800. Ce paramètre définit la durée maximale pendant laquelle le déploiement peut s'exécuter avant qu'il n'expire. Dans l'exemple précédent, votre déploiement doit être exécuté en moins de 30 minutes.Dans
AutoRollbackConfiguration, dans le champAlarms, vous pouvez ajouter vos alarmes CloudWatch par nom. Créez unAlarmName:pour chaque alarme que vous souhaitez utiliser.<your-cw-alarm>
Comment mettre à jour un point de terminaison avec une politique de mise à jour bleue/verte (API) existante
Lorsque vous utilisez l'API CreateEndpoint pour créer un point de terminaison, vous pouvez éventuellement spécifier une configuration de déploiement à réutiliser pour les futures mises à jour du point de terminaison. Vous pouvez utiliser les mêmes options DeploymentConfig que l'exemple d'API UpdateEndpoint précédent. Il n'y a aucun changement dans le comportement de l'API CreateEndpoint. La spécification de la configuration de déploiement n'effectue pas automatiquement une mise à jour bleu/vert sur votre point de terminaison.
La possibilité d'utiliser une configuration de déploiement précédente se produit lorsque vous utilisez l'API UpdateEndpoint pour mettre à jour votre point de terminaison. Lors de la mise à jour de votre point de terminaison, vous pouvez utiliser l'option RetainDeploymentConfig pour conserver la configuration de déploiement que vous avez spécifiée lors de la création du point de terminaison.
Lorsque vous appelez l'API UpdateEndpoint, définissez RetainDeploymentConfig sur True pour conserver les options DeploymentConfig de votre configuration de point de terminaison d'origine.
response = client.update_endpoint( EndpointName="<your-endpoint-name>", EndpointConfigName="<your-config-name>", RetainDeploymentConfig=True )
Comment mettre à jour un point de terminaison (CLI)
Si vous utilisez la AWS CLI, l'exemple suivant montre comment démarrer un déploiement bleu/vert tout à la fois à l'aide de la commande update-endpoint.
update-endpoint --endpoint-name<your-endpoint-name>--endpoint-config-name<your-config-name>--deployment-config '"BlueGreenUpdatePolicy": {"TrafficRoutingConfiguration": {"Type": "ALL_AT_ONCE"}, "TerminationWaitInSeconds": 600, "MaximumExecutionTimeoutInSeconds": 1800}, "AutoRollbackConfiguration": {"Alarms": [{"AlarmName": "<your-alarm>"}]}'
Pour configurer l'option de déplacement de trafic tout à la fois, procédez comme suit :
Pour
endpoint-name, utilisez le nom du point de terminaison que vous souhaitez mettre à jour.Pour
endpoint-config-name, utilisez le nom de la configuration de point de terminaison que vous souhaitez utiliser.Pour
deployment-config, utilisez un objet JSON BlueGreenUpdatePolicy.
Note
Si vous préférez enregistrer votre objet JSON dans un fichier, consultez Générer un squelette AWS CLI et des paramètres d’entrée dans le Guide de l’utilisateur AWS CLI.