0Pricing
Cloud & IT Cert Prep · Lektion

Launch Templates und ASG-Konfiguration

Erstellen Sie ein Launch Template mit dem passenden AMI, Instance-Typ und User Data und verknüpfen Sie es anschließend mit einer Auto Scaling Group mit minimaler, maximaler und gewünschter Kapazität.

Launch Templates und ASG-Konfiguration ist eine kostenlose Cloud & IT Cert Prep-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cloud & IT Cert Prep-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.

Was ist ein Launch Template?

Ein Launch Template ist ein versionierter Bauplan, der Auto Scaling Groups (und EC2 direkt) darüber informiert, wie Instances gestartet werden sollen. Es fasst die AMI-ID, den Instance-Typ, das Schlüsselpaar, die Sicherheitsgruppen und optionale Benutzerdaten in einem einzigen wiederverwendbaren Dokument zusammen. Im Gegensatz zur älteren Launch Configuration unterstützt ein Launch Template mehrere Versionen und kann aktualisiert werden, ohne die ASG zu ersetzen.

Launch Template über die CLI erstellen

Sie können ein Launch Template mit der AWS CLI über create-launch-template erstellen. Der Parameter --launch-template-data akzeptiert ein JSON-Objekt, das alle Instance-Einstellungen definiert. Dank der Versionierung können Sie das Template weiterentwickeln, ohne laufende Instances zu beeinflussen, bis Sie zur Bereitstellung bereit sind.

aws ec2 create-launch-template \
  --launch-template-name 'MyAppTemplate' \
  --version-description 'v1 initial' \
  --launch-template-data '{
    "ImageId": "ami-0abcdef1234567890",
    "InstanceType": "t3.medium",
    "KeyName": "my-key-pair",
    "SecurityGroupIds": ["sg-0123456789abcdef0"],
    "UserData": "IyEvYmluL2Jhc2gKZWNobyAnSGVsbG8n"
  }'

Versionen und Standardversionen von Launch Templates

Jedes Launch Template beginnt mit der Version 1. Beim Erstellen einer neuen Version müssen Sie nur die geänderten Felder überschreiben; alle anderen Einstellungen werden von der Quellversion übernommen. Sie können die ASG so konfigurieren, dass sie die Version $Latest (immer die neueste) oder die Version $Default (explizit festgelegt) verwendet. Mit $Default erhalten Sie kontrollierte Rollouts, während $Latest in Entwicklungsumgebungen praktisch ist.

# Create a new version based on version 1, changing only instance type
aws ec2 create-launch-template-version \
  --launch-template-name 'MyAppTemplate' \
  --source-version 1 \
  --launch-template-data '{"InstanceType": "t3.large"}'

Grundlegende Konzepte von Auto Scaling Groups

Eine Auto Scaling Group (ASG) verwaltet eine Gruppe von EC2-Instances innerhalb festgelegter Grenzen: Minimum (Untergrenze), Maximum (Obergrenze) und gewünschte Kapazität (die zu jedem Zeitpunkt angestrebte Anzahl). Wenn Instances die Zustandsprüfungen nicht bestehen oder die Scaling-Richtlinie ausgelöst wird, startet oder beendet die ASG automatisch Instances, um die gewünschte Anzahl zwischen Minimum und Maximum beizubehalten.

Erstellen einer an ein Launch Template angehängten ASG

Beim Erstellen einer ASG verweisen Sie auf ein Launch Template (nicht direkt auf eine bestimmte AMI). Außerdem geben Sie die VPC-Subnetze an, in denen Instances gestartet werden. Die Verteilung auf mehrere Subnetze (je eines pro AZ) bietet integrierte Multi-AZ-Redundanz: Wenn eine AZ ausfällt, startet die ASG automatisch Ersatz-Instances in den verbleibenden AZs.

aws autoscaling create-auto-scaling-group \
  --auto-scaling-group-name 'MyAppASG' \
  --launch-template 'LaunchTemplateName=MyAppTemplate,Version=$Default' \
  --min-size 2 \
  --max-size 10 \
  --desired-capacity 4 \
  --vpc-zone-identifier 'subnet-aaa111,subnet-bbb222,subnet-ccc333'

Zustandsprüfungen der ASG: EC2 oder ELB

Standardmäßig verwendet eine ASG EC2-Zustandsprüfungen. Dabei wird eine Instance nur dann als fehlerhaft eingestuft, wenn sie gestoppt oder beendet wurde oder der Hypervisor einen Fehler meldet. Wenn Sie einen Load Balancer anbinden, sollten Sie zu ELB-Zustandsprüfungen wechseln, damit die ASG Instances ersetzt, die zwar ausgeführt werden, aber HTTP-5xx-Fehler zurückgeben. Dies ist eine häufige Prüfungsfrage: Wenn die Architektur einen Load Balancer enthält, wählen Sie immer ELB-Zustandsprüfungen.

# Enable ELB health checks on an existing ASG
aws autoscaling update-auto-scaling-group \
  --auto-scaling-group-name 'MyAppASG' \
  --health-check-type ELB \
  --health-check-grace-period 300

Kapazitätseinstellungen: Minimum, Maximum, gewünschte Kapazität

Die korrekte Festlegung der Kapazitätsgrenzen ist entscheidend. Das Minimum stellt sicher, dass Ihre Anwendung immer Datenverkehr bedienen kann (es wird nie unterschritten). Das Maximum verhindert eine unkontrollierte Skalierung, durch die Service-Limits oder Ihr Budget ausgeschöpft werden könnten. Die gewünschte Kapazität ist das anfängliche Ziel; Scaling-Richtlinien passen sie dynamisch an. Wenn Sie min=max=desired setzen, verhält sich die ASG wie eine Gruppe mit fester Größe. Das ist für Bereitstellungen mit Launch Templates oder eine festgelegte Kapazität nützlich.

Anbinden einer ALB-Target-Gruppe an eine ASG

Bei Anwendungen der Webschicht binden Sie die ASG an eine Target-Gruppe eines Application Load Balancers an. Jede von der ASG gestartete neue Instance wird automatisch in der Target-Gruppe registriert, und beendete Instances werden automatisch deregistriert. Dadurch wird sichergestellt, dass Datenverkehr nur an fehlerfreie, ausgeführte Instances weitergeleitet wird. Außerdem müssen Sie den Typ der Zustandsprüfung auf ELB setzen, damit die ASG über Fehler auf Load-Balancer-Ebene informiert ist.

aws autoscaling attach-load-balancer-target-groups \
  --auto-scaling-group-name 'MyAppASG' \
  --target-group-arns 'arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/MyTG/abc123'

Benutzerdaten in Launch Templates

Benutzerdaten sind ein Shell-Skript (Base64-codiert), das beim ersten Start einer Instance einmalig ausgeführt wird. In einem Launch Template sind sie der richtige Ort, um Pakete zu installieren, Agents (CloudWatch, SSM) zu konfigurieren und Anwendungscode abzurufen. Sorgen Sie dafür, dass Benutzerdaten idempotent sind: Skripte, die problemlos mehr als einmal ausgeführt werden können, verhindern Probleme bei der Instance-Aktualisierung. Bei komplexen Setups sollten Sie stattdessen AWS Systems Manager oder ein Konfigurationsverwaltungstool aufrufen, anstatt umfangreiche Skripte einzubetten.

#!/bin/bash
yum update -y
yum install -y amazon-cloudwatch-agent
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \
  -a fetch-config -m ec2 -c ssm:/MyApp/CWConfig -s
# Start application
cd /opt/myapp && ./start.sh

Warm Pools für schnelleres Aufskalieren

Ein Warm Pool initialisiert eine Gruppe gestoppter (oder ausgeführter) EC2-Instances außerhalb der ASG vor und hält sie in einem bereiten Zustand. Wenn die ASG aufskaliert werden muss, verwendet sie Instances aus dem Warm Pool, statt neue Instances vollständig neu zu starten. Dadurch wird die Zeit zum Hinzufügen von Kapazität deutlich verkürzt. Für Instances im Warm Pool fallen Kosten für den gestoppten Zustand an (nur für EBS, keine CPU-Kosten), wodurch diese Lösung deutlich günstiger ist, als vollständig ausgeführte Reserve-Instances bereitzuhalten.

Beendigungsrichtlinien und AZ-Ausgleich

Wenn die ASG herunterskaliert, muss sie entscheiden, welche Instances beendet werden. Die standardmäßige Beendigungsrichtlinie wählt zuerst die AZ mit den meisten Instances aus (um einen Ausgleich herzustellen), anschließend das älteste Launch Template und danach die Instance, die ihrer Abrechnungsstunde am nächsten ist. Sie können diese Reihenfolge anpassen – beispielsweise OldestLaunchTemplate wählen, um zuerst Instances mit veralteten Konfigurationen zu entfernen. Die ASG führt außerdem automatisch einen AZ-Ausgleich durch, nachdem ein Subnetz verfügbar wird oder manuelle Änderungen vorgenommen wurden.

Schnelltest

Testen Sie Ihr Verständnis der AWS-Solutions-Architect-Konzepte (SAA-C03) aus dieser Lektion.

Zusammenfassung der Lektion

In dieser Lektion haben Sie gelernt: Launch Templates bieten eine versionierte, wiederverwendbare Vorlage für Instances und unterstützen mehrere Versionen sowie die Versionszeiger $Latest/$Default; die ASG-Kapazitätsgrenzen (Minimum/Maximum/gewünschte Kapazität) steuern die Größe der Gruppe mit automatischer Multi-AZ-Verteilung über Subnetze; und ELB-Zustandsprüfungen müssen aktiviert werden, wenn sich eine ASG hinter einem Load Balancer befindet, damit Fehler auf Anwendungsebene eine Ersetzung auslösen. Als Nächstes sehen wir uns Scaling-Richtlinien an, darunter Target Tracking und Step Scaling.

Häufig gestellte Fragen

Ist die Lektion „Launch Templates und ASG-Konfiguration“ kostenlos?

Ja — der vollständige Text von „Launch Templates und ASG-Konfiguration“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cloud & IT Cert Prep-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Launch Templates und ASG-Konfiguration“?

Erstellen Sie ein Launch Template mit dem passenden AMI, Instance-Typ und User Data und verknüpfen Sie es anschließend mit einer Auto Scaling Group mit minimaler, maximaler und gewünschter Kapazität. Du übst Cloud & IT Cert Prep mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Cloud & IT Cert Prep zu starten?

Keine Vorkenntnisse erforderlich. Cloud & IT Cert Prep auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Launch Templates und ASG-Konfiguration“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Cloud & IT Cert Prep-Lektion Code schreiben und ausführen?

Ja. Jede Cloud & IT Cert Prep-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Launch Templates und ASG-Konfiguration
  2. Skalierungsrichtlinien: Target Tracking und Step Scaling
  3. Geplante und prädiktive Skalierung
  4. Instance Refresh und Lifecycle Hooks
← Zurück zu Cloud & IT Cert Prep