AWS Bits: Neues von den Amazon ECS Task Definitions

AWS Bits: Neues von den Amazon ECS Task Definitions

Avatar von Amina Wittmann

AWS hat angekündigt, dass eines der auf der AWS Containers Roadmap meist angefragten ECS-Features ermöglicht wird: in Amazon ECS (Elastic Container Services) können ab sofort Task Definition Revisions gelöscht werden. Bisher konnten sie lediglich abgemeldet werden.

Durch die Neuerung wird das Ressourcenmanagement vereinfacht und der Sicherheitsstatus – sensible Daten können nun endgültig gelöscht werden – verbessert.

Wie kann die neue Funktionalität genutzt werden?

Durch Nutzen des DeleteTaskDefinition-API können Task Definitions sowie inaktive Revisionen gelöscht werden. Dafür können sowohl die AWS CLI, das AWS CDK oder andere AWS SDKs verwendet werden.

Nutzen der AWS CLI

Um die Task Definitions mit Status INACTIVE auszugeben, wird der folgende Befehl ausgeführt:

aws ecs list-task-definitions --status INACTIVE --no-cli-pager

Sollten Task Definitions mit Status ACTIVE abgemeldet werden müssen, wird der folgende Befehl verwendet:

aws ecs deregister-task-definition --task-definition <task name:revision>

Im Anschluss kann die Revision mit folgendem Befehl gelöscht werden:

aws ecs delete-task-definitions --task-definitions <task name:revision>

Weitere News aus dem AWS-Universum


Bulk Actions

Ist jedoch eine große Menge an Revisionen abzumelden, sollte ein Script verwendet werden. Das erste Script führt eine Schleife aus und durchläuft die Revisionen, wobei sichergestellt wird, dass keine Drosselungsprobleme auftreten. Im Anschluss (Script 2) werden die Revisionen gelöscht.

Natürlich können zwei Scripte auch zu einem einzigen Script kombiniert werden. Ein Beispiel dafür findet ihr im dritten Listing.

#!/bin/bash -ex
 
TASKNAME=<task name>
START=1 # the first number of the task revision to loop through
END=1000 # The last number to stop the delete loop at
 
for (( x=$START; x<=$END; x++ ))
do
        aws ecs deregister-task-definition --task-definition $TASKNAME:$x --no-cli-pager
        sleep 5
        echo "The task $TASKNAME and revision $x has been deregistered"
done
#!/bin/bash -ex
 
TASKNAME=<task name>
START=1 # the first number of the task revision to loop through
END=1000 # The last number to stop the delete loop at
 
for (( y=$START; y<=$END; x++ ))
do
        aws ecs delete-task-definitions --task-definitions $TASKNAME:$y --no-cli-pager
        sleep 5
        echo "The task $TASKNAME and revision $x has been deleted"
done
#!/bin/bash -ex
 
TASKNAME=<task name>
START=1 # the first number of the task revision to loop through
END=1000 # The last number to stop the delete loop at
 
# This function will deregister the task definition
for (( x=$START; x<=$END; x++ ))
do
        aws ecs deregister-task-definition --task-definition $TASKNAME:$x --no-cli-pager
        sleep 5
        echo "The task $TASKNAME and revision $x has been deregistered"
done
 
# This function will delete the task definition
for (( y=$START; y<=$END; y++ ))
do
        aws ecs delete-task-definitions --task-definitions $TASKNAME:$y --no-cli-pager
        sleep 5
        echo "The task $TASKNAME and revision $y has been deleted"
done

Nach einem Löschen von Revisionen, wechselt der Status von INACTIVE zu DELETE_IN_PROGRESS. Um das einzusehen oder zu überprüfen, kann das describeTaskDefinition-API oder folgender Befehl verwendet werden:

aws ecs describe-task-definition --task-definition <task name:revision>

Außerdem können alle zur Löschung markierten Task Definitions abgerufen werden:

aws ecs list-task-definitions --status DELETE_IN_PROGRESS --no-cli-pager

Ausblick

Doch das ist nicht alles, was AWS in petto hat. Künftig soll es auch eine Möglichkeit geben, die Abmeldung und Löschung von Task Definitions mithilfe von Policies zu automatisieren.

Die offizielle Ankündigung von AWS findet ihr auf Amazon ECS unterstützt jetzt dass Löschen von Revisionen inaktiver Aufgabendefinitionen. Noch ausführlichere Informationen gibt es im Blogpost Announcing Amazon ECS Task Definition Deletion.

Avatar von Amina Wittmann

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert


Für das Handling unseres Newsletters nutzen wir den Dienst HubSpot. Mehr Informationen, insbesondere auch zu Deinem Widerrufsrecht, kannst Du jederzeit unserer Datenschutzerklärung entnehmen.