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.
Aktualisieren von Datenverarbeitungsumgebungen
Nachdem Sie eine Datenverarbeitungsumgebung erstellt haben, die EC2-Ressourcen verwendet, können Sie viele der Einstellungen der Datenverarbeitungsumgebung direkt aktualisieren. Das Ändern einiger Einstellungen erfordert jedoch, dass die Instances in der Datenverarbeitungsumgebung AWS Batch ersetzt.
Für Datenverarbeitungsumgebungen, die Fargate-Ressourcen verwenden, können Sie Folgendes aktualisieren.
-
securityGroupIds
-
subnets
-
desiredvCpus
-
maxvCpus
-
minvCpus
AWS Batch verfügt über zwei Aktualisierungsmechanismen. Die erste ist eine Skalierungsaktualisierung, bei der Instances der Datenverarbeitungsumgebung hinzugefügt oder daraus entfernt werden. Die zweite ist eine Infrastrukturaktualisierung, bei der die Instances in der Datenverarbeitungsumgebung ersetzt werden. Ein Infrastruktur-Update dauert viel länger als ein Skalierungs-Update.
Wenn Sie Datenverarbeitungsumgebungen mit aktualisierenAWS Batch, führt das Ändern nur dieser Einstellungen zu einer Skalierungsaktualisierung: gewünschte vCPUs (desiredvCpus
), maximale vCPUs (maxvCpus
), minimale vCPUs (minvCpus
), Servicerolle (serviceRole
) und Status (state
).
Anmerkung
Wenn Sie die desiredvCpus
Einstellung aktualisieren, muss der Wert zwischen den maxvCpus
Werten minvCpus
und liegen.
Darüber hinaus muss der aktualisierte desiredvCpus
Wert größer oder gleich dem aktuellen desiredvCpus
Wert sein. Weitere Informationen finden Sie unter Fehlermeldung beim Aktualisieren der desiredvCpus Einstellung.
Wenn eine der folgenden Einstellungen in einer UpdateComputeEnvironment API-Aktion geändert wird, AWS Batch initiiert eine Infrastrukturaktualisierung. Ein Infrastruktur-Update erfordert, dass die Servicerolle auf AWSServiceRoleForBatch (Standard) gesetzt ist und dass die Zuweisungsstrategie BEST_FIT_PROGRESSIVE
SPOT_CAPACITY_OPTIMIZED
, oder istSPOT_PRICE_CAPACITY_OPTIMIZED
. BEST_FIT
wird nicht unterstützt. Mit Ausnahme der Servicerolle können alle Einstellungen, die für ein Skalierungs-Update geändert werden können, auch für ein Infrastruktur-Update geändert werden.
Anmerkung
Wir empfehlen, in den meisten SPOT_PRICE_CAPACITY_OPTIMIZED
Instances anstelle von SPOT_CAPACITY_OPTIMIZED
n zu verwenden.
Während einer Infrastrukturaktualisierung ändert sich der Status der Datenverarbeitungsumgebung in UPDATING
. Neue Instances werden mit den aktualisierten Einstellungen gestartet. Neue Aufträge werden für die neuen Instances geplant. Aufträge, die derzeit ausgeführt werden, werden gemäß der Infrastruktur-Aktualisierungsrichtlinie versendet. Weitere Informationen finden Sie unter UpdateComputeEnvironment und UpdatePolicy in der AWS Batch-API-Referenz.
Berücksichtigen Sie im UpdatePolicy
Datentyp die folgenden Szenarien:
Anmerkung
In diesen Szenarien gilt Folgendes. Wenn eine Instance beendet wird, werden laufende Aufträge gestoppt. Standardmäßig werden diese Aufträge nicht erneut versucht. Um einen dieser Aufträge nach dem Beenden einer Instance erneut zu versuchen, konfigurieren Sie eine Strategie für den erneuten Versuch von Aufträgen. Weitere Informationen finden Sie unter Automatisierte Auftragswiederholungen im AWS Batch-Benutzerhandbuch.
-
Wenn die
terminateJobsOnUpdate
Einstellung auf festgelegt isttrue
, werden laufende Aufträge während einer Infrastrukturaktualisierung beendet. DiejobExecutionTimeoutMinutes
Einstellung wird ignoriert. -
Wenn die
terminateJobsOnUpdate
Einstellung auf festgelegt istfalse
, können Aufträge nach dem Infrastruktur-Update noch länger ausgeführt werden. Diese zusätzliche Zeit wird in der -jobExecutionTimeoutMinutes
Einstellung konfiguriert. Standardmäßig ist diejobExecutionTimeoutMinutes
Einstellung 30 Minuten.
Sobald Kapazität in der Datenverarbeitungsumgebung verfügbar ist, werden neue Instances mit den aktualisierten Einstellungen gestartet und Aufträge werden auf den neuen Instances gestartet. Da alle Aufträge auf Instances mit den alten Einstellungen abgeschlossen werden, werden die alten Instances beendet. Welche Kapazität verfügbar wird, bedeutet, dass die gewünschte Anzahl von vCPUs um mindestens so viele vCPUs unter der maximalen Anzahl von vCPUs liegt, wie für den kleinsten Instance-Typ erforderlich.
Infrastruktur-Updates
Ein Infrastruktur-Update ist erforderlich, um einige Einstellungen für eine Datenverarbeitungsumgebung zu ändern. Wenn eine der folgenden Einstellungen geändert wird, wird ein Infrastruktur-Update gestartet:
Wichtig
Die Datenverarbeitungsumgebung muss die AWSServiceRoleForBatch serviceverknüpfte Rolle verwenden, um Änderungen vorzunehmen, die eine Infrastrukturaktualisierung erfordern.
Wenn die Datenverarbeitungsumgebung eine serviceverknüpfte Rolle verwendet, kann sie nicht geändert werden, um eine reguläre IAM-Rolle zu verwenden. Ebenso kann die Datenverarbeitungsumgebung nicht geändert werden, um eine serviceverknüpfte Rolle zu verwenden, wenn sie über eine reguläre IAM-Rolle verfügt. Daher können Sie Infrastrukturaktualisierungen nur für Datenverarbeitungsumgebungen durchführen, die mithilfe einer serviceverknüpften Rolle erstellt wurden.
-
Zuweisungsstrategie (
allocationStrategy
, muss entwederBEST_FIT_PROGRESSIVE
,SPOT_CAPACITY_OPTIMIZED
oder seinSPOT_PRICE_CAPACITY_OPTIMIZED
. Wenn die ursprüngliche Zuweisungsstrategie lautetBEST_FIT
, werden Infrastruktur-Updates nicht unterstützt.)Anmerkung
Wir empfehlen, in den meisten
SPOT_PRICE_CAPACITY_OPTIMIZED
Instances anstelle vonSPOT_CAPACITY_OPTIMIZED
n zu verwenden. -
Bid-Prozentsatz (
bidPercentage
) -
EC2-Konfiguration (
ec2Configuration
) -
Schlüsselpaar (
ec2KeyPair
) -
Image-ID (
imageId
) -
Instance-Rolle (
instanceRole
) -
Instance-Typen (
instanceTypes
) -
Startvorlage (
launchTemplate
) -
Platzierungsgruppe (
placementGroup
) -
Sicherheitsgruppen (
securityGroupIds
) -
VPC-Subnetze (
subnets
) -
EC2-Tags (
tags
) -
Datenverarbeitungsumgebungstyp (
type
, kann einer vonEC2
oder seinSPOT
) -
Ob auf das neueste AMI aktualisiert werden soll, das von AWS Batch während eines Infrastruktur-Updates unterstützt wird
updateToLatestImageVersion
Aktualisieren der AMI-ID
Während einer Infrastrukturaktualisierung kann sich die AMI-ID der Datenverarbeitungsumgebung ändern, je nachdem, ob AMIs in einer dieser drei Einstellungen angegeben sind. AMIs werden in der imageId
(in computeResources
), imageIdOverride
(in ec2Configuration
) oder der in angegebenen Startvorlage angegebenlaunchTemplate
. Angenommen, in einer dieser Einstellungen sind keine AMI-IDs angegeben und die updateToLatestImageVersion
Einstellung ist true
. Anschließend wird das neueste Amazon-ECS-optimierte AMI, das von unterstützt AWS Batch wird, für jedes Infrastruktur-Update verwendet.
Wenn in mindestens einer dieser Einstellungen eine AMI-ID angegeben ist, hängt das Update davon ab, welche Einstellung die AMI-ID bereitgestellt hat, die vor dem Update verwendet wurde. Wenn Sie eine Datenverarbeitungsumgebung erstellen, ist die Priorität für die Auswahl einer AMI-ID zuerst die Startvorlage, dann die imageId
Einstellung und schließlich die imageIdOverride
Einstellung. Wenn jedoch die verwendete AMI-ID aus der Startvorlage stammt, wird die AMI-ID durch das Aktualisieren der imageIdOverride
Einstellungen imageId
oder nicht aktualisiert. Die einzige Möglichkeit, eine aus der Startvorlage ausgewählte AMI-ID zu aktualisieren, besteht darin, die Startvorlage zu aktualisieren. Wenn der Versionsparameter der Startvorlage $Default
oder ist$Latest
, wird die Standardversion oder die neueste Version der angegebenen Startvorlage ausgewertet. Wenn standardmäßig eine andere AMI-ID oder die neueste Version der Startvorlage ausgewählt ist, wird diese AMI-ID bei der Aktualisierung verwendet.
Wenn die Startvorlage nicht zur Auswahl der AMI-ID verwendet wurde, wird die AMI-ID verwendet, die in den imageIdOverride
Parametern imageId
oder angegeben ist. Wenn beide angegeben sind, wird die im imageIdOverride
Parameter angegebene AMI-ID verwendet.
Angenommen, die Datenverarbeitungsumgebung verwendet eine AMI-IDimageIdOverride
, die durch die launchTemplate
Parameter imageId
, oder angegeben wird, und Sie möchten das neueste Amazon-ECS-optimierte AMI verwenden, das von unterstützt wirdAWS Batch. Anschließend muss das Update die Einstellungen entfernen, die AMI-IDs bereitgestellt haben. Für erfordert dies imageId
die Angabe einer leeren Zeichenfolge für diesen Parameter. Für erfordert dies imageIdOverride
die Angabe einer leeren Zeichenfolge für den -ec2Configuration
Parameter.
Wenn die AMI-ID aus der Startvorlage stammt, können Sie zum neuesten Amazon-ECS-optimierten AMI wechseln, das AWS Batch von auf eine der folgenden Arten unterstützt wird:
-
Entfernen Sie die Startvorlage, indem Sie eine leere Zeichenfolge für den
launchTemplateName
ParameterlaunchTemplateId
oder angeben. Dadurch wird die gesamte Startvorlage entfernt und nicht nur die AMI-ID. -
Wenn die aktualisierte Version der Startvorlage keine AMI-ID angibt, muss der
updateToLatestImageVersion
Parameter auf gesetzt werdentrue
.