Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie lineare Verkehrsverlagerung
Durch die lineare Verkehrsverlagerung können Sie den Verkehr schrittweise von Ihrer alten Flotte (blaue Flotte) auf Ihre neue Flotte (grüne Flotte) verlagern. Mit der linearen Verkehrsverlagerung können Sie den Verkehr in mehreren Schritten verlagern und so das Risiko einer Störung an Ihrem Endpunkt minimieren. Diese blaue/grüne Bereitstellungsoption bietet Ihnen die genaueste Kontrolle über die Verkehrsverlagerung.
Sie können entweder die Anzahl der Instances oder den Prozentsatz der Kapazität der grünen Flotte wählen, die bei jedem Schritt aktiviert werden sollen. Jeder lineare Schritt sollte nur zwischen 10 und 50% der Kapazität der grünen Flotte liegen. Für jeden Schritt gibt es eine Backphase, in der Ihre vordefinierten CloudWatch Amazon-Alarme die Messwerte der grünen Flotte überwachen. Sobald die Backphase abgelaufen ist und keine Alarme ausgelöst werden, empfängt der aktive Teil Ihrer grünen Flotte weiterhin Traffic und ein neuer Schritt beginnt. Wenn während einer der Back-Phasen Alarme ausgelöst werden, werden 100% des Endpunktverkehrs wieder auf die blaue Flotte übertragen.
Das folgende Diagramm zeigt, wie die lineare Verkehrsverlagerung den Verkehr an die blauen und grünen Flotten weiterleitet.
Sobald SageMaker die neue Flotte bereitgestellt ist, wird der erste Teil der grünen Flotte eingeschaltet und empfängt Verkehr. SageMaker deaktiviert den gleichen Teil der blauen Flotte und die Backphase beginnt. Wenn Alarme ausgelöst werden, wird der gesamte Datenverkehr an den Endpunkten wieder auf die blaue Flotte übertragen. Wenn die Backzeit beendet ist, beginnt der nächste Schritt. Ein anderer Teil der grünen Flotte wird aktiviert und empfängt Verkehr, ein Teil der blauen Flotte wird deaktiviert und eine weitere Backphase beginnt. Derselbe Vorgang wiederholt sich, bis die blaue Flotte vollständig deaktiviert ist und die grüne Flotte voll aktiv ist und den gesamten Verkehr empfängt. Wenn zu irgendeinem Zeitpunkt ein Alarm ausgelöst wird, wird der SageMaker Schichtvorgang beendet und 100% des Verkehrs werden wieder der blauen Flotte zugewiesen.
Voraussetzungen
Bevor Sie eine Bereitstellung mit linearer Verkehrsverlagerung einrichten, müssen Sie CloudWatch Alarme einrichten, um die Messwerte von Ihrem Endpunkt aus zu überwachen. Die Alarme sind während der Backphase aktiv, und wenn Alarme ausgelöst werden, wird der gesamte Endpunktverkehr auf die blaue Flotte zurückgesetzt. Informationen zum Einrichten von CloudWatch Alarmen auf einem Endpunkt finden Sie auf der Seite mit den VoraussetzungenKonfiguration und Überwachung von Auto-Rollback. Weitere Informationen zu CloudWatch Alarmen finden Sie unter Verwenden von CloudWatch Amazon-Alarmen im CloudWatch Amazon-Benutzerhandbuch.
Konfigurieren Sie die lineare Verkehrsverlagerung
Sobald Sie für Ihre Bereitstellung bereit sind und CloudWatch Alarme für Ihren Endpunkt eingerichtet haben, können Sie entweder den Befehl Amazon SageMaker UpdateEndpointAPIoder den Befehl update-endpoint in der verwenden, AWS CLI um die Bereitstellung zu initiieren.
Themen
Wie aktualisiert man einen Endpunkt () API
Das folgende Beispiel UpdateEndpointAPIzeigt, wie Sie einen Endpunkt mit linearer Verkehrsverlagerung aktualisieren können.
import boto3 client = boto3.client("sagemaker") response = client.update_endpoint( EndpointName="
<your-endpoint-name>
", EndpointConfigName="<your-config-name>
", DeploymentConfig={ "BlueGreenUpdatePolicy": { "TrafficRoutingConfiguration": { "Type": "LINEAR", "LinearStepSize": { "Type": "CAPACITY_PERCENT", "Value": 20 }, "WaitIntervalInSeconds": 300 }, "TerminationWaitInSeconds": 300, "MaximumExecutionTimeoutInSeconds": 3600 }, "AutoRollbackConfiguration": { "Alarms": [ { "AlarmName": "<your-cw-alarm>
" } ] } } )
Um die Optionen Linear Traffic Shifting zu konfigurieren, machen Sie Folgendes:
Verwenden Sie für
EndpointName
den Namen des vorhandenen Endpunkts, den Sie aktualisieren möchten.Verwenden Sie für
EndpointConfigName
den Namen der Endpunkt-Konfiguration, die Sie verwenden möchten.Stellen Sie unter
DeploymentConfig
undBlueGreenUpdatePolicy
, inTrafficRoutingConfiguration
,, denType
Parameter aufLINEAR
ein. Dies gibt an, dass bei der Bereitstellung eine lineare Verkehrsverlagerung verwendet wird.Im Feld
LinearStepSize
können Sie die Größe der Schritte ändern, indem Sie die ParameterType
undValue
ändern. FürType
verwenden SieCAPACITY_PERCENT
, d. h. den Prozentsatz Ihrer grünen Flotte, den Sie als Schrittgröße verwenden wollen, und setzen SieValue
auf20
. In diesem Beispiel schalten Sie für jeden Schritt der Verkehrsverlagerung 20% der Kapazität der umweltfreundlichen Flotte ein. Beachten Sie, dass Sie bei der Anpassung Ihrer linearen Schrittgröße nur Stufen verwenden sollten, die 10-50% der Kapazität der grünen Flotte ausmachen.Geben Sie als
WaitIntervalInSeconds
300
ein. Der Parameter weist SageMaker an, dass zwischen jeder Verkehrsverlagerung die angegebene Zeit (in Sekunden) abgewartet werden soll. Dieses Intervall ist die Dauer der Backzeit zwischen den einzelnen linearen Schritten. Im vorherigen Beispiel wird zwischen jeder Verkehrsschicht 5 Minuten SageMaker gewartet.Geben Sie als
TerminationWaitInSeconds
300
ein. Dieser Parameter weist SageMaker an, dass Sie die angegebene Zeit (in Sekunden) warten sollen, nachdem Ihre grüne Flotte voll aktiv ist, bevor die Instances in der blauen Flotte beendet werden. In diesem Beispiel wird nach der letzten Backphase 5 Minuten SageMaker gewartet, bevor die blaue Flotte beendet wird.Geben Sie als
MaximumExecutionTimeoutInSeconds
3600
ein. Dieser Parameter legt die maximale Zeit fest, die die Bereitstellung ausgeführt werden kann, bevor eine Zeitbeschränkung auftritt. Im vorherigen Beispiel gilt für Ihre Bereitstellung ein Limit von 1 Stunde bis zum Abschluss.AutoRollbackConfiguration
In demAlarms
Feld können Sie Ihre CloudWatch Alarme nach Namen hinzufügen. Erstellen Sie einenAlarmName:
Eintrag für jeden Alarm, den Sie verwenden möchten.<your-cw-alarm>
So aktualisieren Sie einen Endpunkt mit einer vorhandenen blau/grünen Aktualisierungsrichtlinie () API
Wenn Sie den verwenden, CreateEndpointAPIum einen Endpunkt zu erstellen, können Sie optional eine Bereitstellungskonfiguration angeben, die für future Endpunkt-Updates wiederverwendet werden soll. Sie können dieselben DeploymentConfig
Optionen wie im vorherigen UpdateEndpoint API Beispiel verwenden. Es gibt keine Änderungen am CreateEndpoint API Verhalten. Durch die Angabe der Bereitstellungskonfiguration wird nicht automatisch ein blau/grünes Update auf Ihrem Endpunkt durchgeführt.
Die Option, eine frühere Bereitstellungskonfiguration zu verwenden, wird angezeigt, wenn Sie den UpdateEndpointAPIzur Aktualisierung Ihres Endpunkts verwenden. Wenn Sie Ihren Endpunkt aktualisieren, können Sie die RetainDeploymentConfig
Option verwenden, um die Bereitstellungskonfiguration beizubehalten, die Sie bei der Erstellung des Endpunkts angegeben haben.
Stellen Sie beim Aufrufen von RetainDeploymentConfig
auf ein UpdateEndpointAPI, True
um die DeploymentConfig
Optionen aus Ihrer ursprünglichen Endpunktkonfiguration beizubehalten.
response = client.update_endpoint( EndpointName="
<your-endpoint-name>
", EndpointConfigName="<your-config-name>
", RetainDeploymentConfig=True )
Wie aktualisiert man einen Endpunkt (CLI)
Wenn Sie den verwenden AWS CLI, zeigt das folgende Beispiel, wie Sie mit dem Befehl update-endpoint eine lineare Blau/Grün-Bereitstellung starten.
update-endpoint --endpoint-name
<your-endpoint-name>
--endpoint-config-name<your-config-name>
--deployment-config '{"BlueGreenUpdatePolicy": {"TrafficRoutingConfiguration": {"Type": "LINEAR", "LinearStepSize": {"Type": "CAPACITY_PERCENT", "Value": 20}, "WaitIntervalInSeconds": 300}, "TerminationWaitInSeconds": 300, "MaximumExecutionTimeoutInSeconds": 3600}, "AutoRollbackConfiguration": {"Alarms": [{"AlarmName": "<your-alarm>
"}]}'
Um die Optionen Linear Traffic Shifting zu konfigurieren, machen Sie Folgendes:
Verwenden Sie für
endpoint-name
den Namen des Endpunkts, den Sie aktualisieren möchten.Verwenden Sie für
endpoint-config-name
den Namen der Endpunkt-Konfiguration, die Sie verwenden möchten.Verwenden Sie für
deployment-config
ein Objekt. BlueGreenUpdatePolicyJSON
Anmerkung
Wenn Sie Ihr JSON Objekt lieber in einer Datei speichern möchten, finden Sie weitere Informationen unter Generieren von AWS CLI Skelett- und Eingabeparametern im AWS CLI Benutzerhandbuch.