Automatische Amazon ECS-Aufgabe und -Image-Bereinigung - Amazon Elastic Container Service

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.

Automatische Amazon ECS-Aufgabe und -Image-Bereinigung

Jedes Mal, wenn eine Aufgabe auf einer Container-Instance platziert wird, prüft der Amazon-ECS-Container-Agent, ob die Images, auf die in der Aufgabe verwiesen wird, die neuesten Images des im Repository spezifizierten Tag sind. Wenn dies nicht der Fall ist, gestattet das Standardverhalten dem Agenten, die Images aus den jeweiligen Repositorys abrufen. Wenn Sie die Images in Aufgaben und Services häufig aktualisieren, kann sich der Container-Instance-Speicher schnell mit Docker-Images füllen, die Sie nicht mehr benötigen. Beispielsweise verwenden Sie vielleicht eine Pipeline für fortlaufende Integration und fortlaufende Bereitstellung (Continous Integration and continous deployment (CI/CD)).

Anmerkung

Das Verhalten des Amazon-ECS-Agenten beim Abrufen von Images kann mit dem Parameter ECS_IMAGE_PULL_BEHAVIOR angepasst werden. Weitere Informationen finden Sie unter Konfiguration des Amazon-ECS-Container-Agenten.

Ebenso können Container, die zu gestoppten Aufgaben gehören, mit ihren Protokollinformationen, Datenvolumen und anderen Artefakten Container-Instance-Speicherplatz einnehmen. Diese Artefakte eignen sich für das Debugging von Containern, die unerwarteterweise gestoppt wurden. Doch der Großteil dieses Speichers kann nach einem gewissen Zeitraum problemlos freigemacht werden.

Standardmäßig bereinigt der Amazon-ECS-Container-Agent automatisch gestoppte Aufgaben und Docker-Images, die nicht von Aufgaben auf Ihren Container-Instances verwendet werden.

Anmerkung

Das Feature der automatischen Image-Bereinigung erfordert mindestens die Amazon-ECS-Container-Agenten-Version 1.13.0. Die neueste Version für Ihren Agent finden Sie unter Überprüfen des Amazon-ECS-Container-Agenten.

Mit den folgenden Agentenkonfigurationsvariablen können Sie Ihre automatische Aufgaben- und Image-Bereinigung an Ihre Bedürfnisse anpassen. Weitere Informationen zum Einrichten dieser Variablen auf Ihren Container-Instances finden Sie unter Konfiguration des Amazon-ECS-Container-Agenten.

ECS_ENGINE_TASK_CLEANUP_WAIT_DURATION

Diese Variable gibt die Zeit an, die gewartet wird, bevor Container, die zu gestoppten Aufgaben gehören, entfernt werden. Der Image-Bereinigungsvorgang kann kein Image löschen, wenn noch ein Container darauf verweist. Wenn ein Image keine Referenzen zu Containern (entweder gestoppt oder noch in Ausführung) mehr hat, wird dieses Image ein Kandidat für die Bereinigung. Standardmäßig ist dieser Parameter auf 3 Stunden eingestellt. Sie können diesen Zeitraum jedoch auf bis zu 1 Sekunde verkürzen, wenn dies für Ihre Anwendung erforderlich ist. Der Parameter wird ignoriert, wenn Sie den Wert auf weniger als 1 Sekunde festlegen.

ECS_DISABLE_IMAGE_CLEANUP

Wenn Sie diese Variable auf true einstellen, ist die automatische Image-Bereinigung auf Ihrer Container-Instance deaktiviert und es werden keine Images automatisch entfernt.

ECS_IMAGE_CLEANUP_INTERVAL

Diese Variable gibt an, wie häufig der automatische Image-Bereinigungsvorgang prüft, ob zu löschende Images vorhanden sind. Die Standardeinstellung ist 30 Minuten. Sie können diesen Zeitraum jedoch auch bis zu 10 Minuten verkürzen, wenn die Images häufiger gelöscht werden sollen.

ECS_IMAGE_MINIMUM_CLEANUP_AGE

Über diese Variable wird festgelegt, wie viel Zeit mindestens zwischen dem Abrufen eines Image und dem Löschen vergehen muss. So wird verhindert, dass gerade erst abgerufene Images gelöscht werden. Die Standardeinstellung ist 1 Stunde.

ECS_NUM_IMAGES_DELETE_PER_CYCLE

Diese Variable gibt an, wie viele Images bei einem einzigen Bereinigungszyklus entfernt werden. Der Standardwert ist 5 und der Minimumwert beträgt 1.

Wenn der Amazon-ECS-Container-Agent ausgeführt wird und die automatische Image-Bereinigung nicht deaktiviert ist, prüft der Agent mit einer Häufigkeit, die durch die Variable ECS_IMAGE_CLEANUP_INTERVAL angegeben wird, ob Docker-Images vorhanden sind, auf die nicht von laufenden oder gestoppten Containern verwiesen wird. Werden ungenutzte Images gefunden und diese sind älter als die durch die Variable ECS_IMAGE_MINIMUM_CLEANUP_AGE angegebene Mindestbereinigungszeit, entfernt der Agent die maximale Anzahl an Images, die durch die Variable ECS_NUM_IMAGES_DELETE_PER_CYCLE festgelegt ist. Das Image, dessen Referenz am längsten her ist, wird als erstes gelöscht. Nach dem Entfernen der Images wartet der Agent das nächste Intervall ab und wiederholt dann den Vorgang.