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.
Installieren des Amazon-ECS-Container-Agenten
Wenn Sie eine EC2 Amazon-Instance bei Ihrem Amazon ECS-Cluster registrieren möchten und diese Instance kein AMI verwendet, das auf dem Amazon ECS-optimierten AMI basiert, können Sie den Amazon ECS-Container-Agenten mithilfe des folgenden Verfahrens manuell installieren. Sie können dazu den Agent entweder von einem der regionalen Amazon-S3-Buckets oder vom öffentlichen Amazon Elastic Container Registry herunterladen. Wenn Sie den Agenten aus einem der regionalen Amazon-S3-Buckets herunterladen, können Sie optional die Gültigkeit der Container-Agentendatei mithilfe der PGP-Signatur prüfen.
Anmerkung
Die systemd-Einheiten für die Amazon ECS- und Docker-Services enthalten die Anweisung, auf die Beendigung von cloud-init zu warten, bevor beide Services gestartet werden. Der cloud-init Vorgang gilt erst als abgeschlossen, wenn Ihre EC2 Amazon-Benutzerdaten vollständig ausgeführt wurden. Daher kann das Starten von Amazon ECS oder Docker über EC2 Amazon-Benutzerdaten zu einem Deadlock führen. Um den Container-Agenten mit EC2 Amazon-Benutzerdaten zu starten, können Sie verwendensystemctl enable --now --no-block ecs.service.
Installation des Amazon ECS-Container-Agenten auf einer Amazon Linux EC2 Nicht-Instance
Um den Amazon ECS-Container-Agenten auf einer EC2 Amazon-Instance zu installieren, können Sie den Agenten aus einem der regionalen Amazon S3-Buckets herunterladen und installieren.
Anmerkung
Wenn Sie ein Nicht-Amazon-Linux-AMI verwenden, benötigt Ihre EC2 Amazon-Instance cgroupfs Unterstützung für den cgroup Treiber, damit der Amazon ECS-Agent Ressourcenlimits auf Aufgabenebene unterstützen kann. Weitere Informationen finden Sie unter Amazon ECS-Agent unter GitHub
Die neuesten Dateien des Container-Agents von Amazon ECS nach Region für jede Systemarchitektur sind unten als Referenz aufgeführt.
Um den Amazon ECS-Container-Agenten auf einer EC2 Amazon-Instance mit einem Amazon Linux Nicht-AMI zu installieren
-
Starten Sie eine EC2 Amazon-Instance mit einer IAM-Rolle, die den Zugriff auf Amazon ECS ermöglicht. Weitere Informationen finden Sie unter IAM-Rolle für Amazon-ECS-Container-Instance.
-
Verbinden Sie sich mit der Instance.
-
Installieren Sie die neueste Docker-Version auf Ihrer Instance.
-
Prüfen Sie Ihre Docker-Version, um sicherzustellen, dass Ihr System den Anforderungen der Mindestversion entspricht. Weitere Informationen zur Docker-Unterstützung finden Sie unter Amazon EC2 ECS-Container-Instances.
docker --version -
Laden Sie die entsprechende Amazon-ECS-Agent-Datei für Ihr Betriebssystem und Ihre Systemarchitektur herunter und installieren Sie sie.
Für
deb-Architekturen:ubuntu:~$curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.amd64.debubuntu:~$sudo dpkg -i amazon-ecs-init-latest.amd64.debFür
rpm-Architekturen:fedora:~$curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.x86_64.rpmfedora:~$sudo yum localinstall -y amazon-ecs-init-latest.x86_64.rpm -
Bearbeiten Sie die
/lib/systemd/system/ecs.service-Datei und fügen Sie am Ende des[Unit]-Abschnitts die folgende Zeile hinzu.After=cloud-final.service -
(Optional) Um die Instance bei einem anderen Cluster als dem
default-Cluster anzumelden, bearbeiten Sie die/etc/ecs/ecs.config-Datei und fügen Sie den folgenden Inhalt hinzu. Das folgende Beispiel gibt denMyCluster-Cluster an.ECS_CLUSTER=MyClusterWeitere Informationen zu diesen und anderen Agenten-Laufzeitoptionen erhalten Sie unterKonfiguration des Amazon-ECS-Container-Agenten.
Anmerkung
Sie können Ihre Agentenumgebungsvariablen optional in Amazon S3 speichern (die beim Start mithilfe von EC2 Amazon-Benutzerdaten auf Ihre Container-Instances heruntergeladen werden können). Dies empfiehlt sich für sensible Daten, wie beispielsweise Authentifizierungs-Anmeldeinformationen für private Repositorys. Weitere Informationen erhalten Sie unter Speichern der Konfiguration von Amazon-ECS-Container-Instances in Amazon S3 und Verwenden von AWS Nicht-Container-Images in Amazon ECS.
-
Starten Sie den Service
ecs.ubuntu:~$sudo systemctl start ecs
Ausführen des Amazon-ECS-Agenten mit dem Host-Netzwerkmodus
Beim Ausführen des Amazon-ECS-Container-Agenten erstellt ecs-init den Container-Agent-Container mit dem Netzwerkmodus host. Dies ist der einzige unterstützte Netzwerkmodus für den Container-Agent-Container.
Auf diese Weise können Sie den Zugriff auf den EC2 Amazon-Instance-Metadatendienst-Endpunkt (http://169.254.169.254) für die vom Container-Agenten gestarteten Container blockieren. Auf diese Weise wird sichergestellt, dass Container vom Container-Instance-Profil aus keinen Zugriff auf Anmeldeinformationen der IAM-Rolle haben, und erzwungen, dass die Aufgabe nur die Anmeldeinformationen der IAM-Aufgabenrolle verwendet. Weitere Informationen finden Sie unter Aufgaben-IAM-Rolle für Amazon ECS.
Dies sorgt auch dafür, dass der Container-Agent nicht um Verbindungen und Netzwerkdatenverkehr auf der docker0-Brücke konkurrieren muss.