Ihre erste EC2-Instance starten
Gehen Sie den Startassistenten durch, wählen Sie ein AMI und einen Instance-Typ, konfigurieren Sie Schlüsselpaar und stellen Sie eine Verbindung über SSH her.
Ihre erste EC2-Instance starten ist eine kostenlose AWS Solutions Architect-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 AWS Solutions Architect-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AWS Solutions Architect-Kurs umfasst insgesamt 4 Lektionen.
Was ist Amazon EC2?
Amazon Elastic Compute Cloud (EC2) stellt in der Cloud anpassbare virtuelle Maschinen bereit, die als Instances bezeichnet werden. Sie wählen Betriebssystem, CPU, Arbeitsspeicher, Speicher und Netzwerkkapazität aus. EC2 ist der grundlegende Compute-Service von AWS – fast jede Architektur, die dauerhafte, zustandsbehaftete Rechenleistung benötigt, verwendet EC2 direkt oder über darauf aufbauende Services (ECS, EKS, EMR). Instances laufen innerhalb Ihrer VPC und können nach Bedarf gestartet, angehalten, neu gestartet oder beendet werden.
Amazon Machine Images (AMIs)
Ein Amazon Machine Image (AMI) ist eine Vorlage, die das Betriebssystem, die Software und die Konfiguration einer EC2-Instance festlegt. AWS stellt Tausende von AMIs bereit (Amazon Linux 2023, Ubuntu, Windows Server), Marketplace-Anbieter veröffentlichen AMIs mit vorkonfigurierter Software, und Sie können eigene benutzerdefinierte AMIs erstellen, indem Sie eine laufende Instance erfassen. Beim Starten einer Instance wählen Sie ein AMI aus. Es bestimmt den Inhalt des Root-Volumes und die Architektur (x86_64 oder ARM).
# Find latest Amazon Linux 2023 AMI in us-east-1
aws ec2 describe-images \
--owners amazon \
--filters 'Name=name,Values=al2023-ami-*-x86_64' \
--query 'sort_by(Images, &CreationDate)[-1].ImageId' \
--output textDer EC2-Startassistent: Schritt für Schritt
Der EC2-Startassistent in der Konsole führt Sie durch folgende Schritte: 1) Name und Tags; 2) AMI-Auswahl; 3) Instance-Typ (Kombination aus CPU und Arbeitsspeicher); 4) Schlüsselpaar für den SSH-Zugriff; 5) Netzwerkeinstellungen (VPC, Subnetz, Sicherheitsgruppe); 6) Speicher (Größe und Typ des Root-EBS-Volumes); 7) Erweiterte Einstellungen (IAM-Rolle, User-Data-Skript, Metadatenoptionen). Wenn Sie jeden Schritt verstehen, können Sie konfigurationsbezogene Prüfungsfragen sicher beantworten.
# Equivalent CLI launch
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--instance-type t3.micro \
--key-name MyKeyPair \
--security-group-ids sg-12345678 \
--subnet-id subnet-12345678 \
--iam-instance-profile Name=MyEC2Role \
--user-data file://user-data.shSchlüsselpaare für die SSH-Authentifizierung
Ein Schlüsselpaar besteht aus einem öffentlichen Schlüssel (von AWS gespeichert) und einem privaten Schlüssel (von Ihnen heruntergeladen – nur einmal). Beim Starten einer EC2-Instance fügt AWS den öffentlichen Schlüssel in die Datei ~/.ssh/authorized_keys des Standardbenutzers ein (z. B. ec2-user für Amazon Linux oder ubuntu für Ubuntu). Sie stellen die Verbindung mit dem privaten Schlüssel her: ssh -i my-key.pem ec2-user@<public-ip>. Wenn Sie den privaten Schlüssel verlieren, können Sie sich nicht mehr per SSH mit der Instance verbinden, es sei denn, Sie verwenden alternativ Systems Manager Session Manager.
# Generate a new key pair and save the private key
aws ec2 create-key-pair \
--key-name MyKeyPair \
--query 'KeyMaterial' \
--output text > MyKeyPair.pem
chmod 400 MyKeyPair.pem
# Connect to the instance
ssh -i MyKeyPair.pem ec2-user@54.123.45.67Zustände im Lebenszyklus einer Instance
Eine EC2-Instance durchläuft mehrere Zustände. Pending: Die Instance wird gestartet (keine Abrechnung). Running: Die Instance ist aktiv (Abrechnung pro Sekunde oder Stunde). Stopping: Die Instance wechselt in den angehaltenen Zustand (nur bei EBS-basierten Instances). Stopped: Die Instance ist ausgeschaltet – Sie zahlen nur für die verbundenen EBS-Speicher. Terminated: Die Instance wurde dauerhaft gelöscht und kann nicht neu gestartet werden. Das Verständnis dieser Zustände ist für die Abrechnung wichtig (On-Demand-Kosten fallen nur im Zustand Running an) und für die Architektur (Spot-Instances werden beendet, ohne den Zustand Stopped zu durchlaufen).
# Stop and start an instance
aws ec2 stop-instances --instance-ids i-0abcdef1234567890
aws ec2 start-instances --instance-ids i-0abcdef1234567890
# Terminate permanently
aws ec2 terminate-instances --instance-ids i-0abcdef1234567890Öffentliche und private IP-Adressen von EC2
Instances in öffentlichen Subnetzen erhalten standardmäßig eine öffentliche IPv4-Adresse (dynamisch – sie ändert sich beim Anhalten und Starten) und eine private IPv4-Adresse (innerhalb der VPC über das Anhalten und Starten hinweg beständig). Für eine beständige öffentliche IP-Adresse reservieren Sie eine Elastic IP (EIP) – eine statische öffentliche IPv4-Adresse, die Ihnen gehört, bis Sie sie freigeben. EIPs sind kostenlos, wenn sie einer laufenden Instance zugewiesen sind, verursachen jedoch Kosten, wenn sie nicht zugewiesen sind oder wenn Sie mehr als eine EIP pro laufender Instance verwenden.
# Allocate an Elastic IP and associate it with an instance
aws ec2 allocate-address --domain vpc
aws ec2 associate-address \
--instance-id i-0abcdef1234567890 \
--allocation-id eipalloc-12345678User Data: Bootstrap-Skripte
User Data ist ein Shell-Skript (oder eine cloud-init-Konfiguration), das beim ersten Start einer Instance einmalig ausgeführt wird. Verwenden Sie es, um Pakete zu installieren, Software zu konfigurieren oder Anwendungscode aus S3 abzurufen. User Data wird als Root ausgeführt und standardmäßig beim Neustart nicht erneut ausgeführt. Die Daten werden als Base64-kodierter Text über die Startkonfiguration übergeben. Wenn Sie User Data kurz halten und für umfangreiche Einrichtung auf vorbereitete AMIs setzen, verkürzen Sie die Startzeiten beim automatischen Skalieren.
#!/bin/bash
# user-data.sh — runs on first boot
yum update -y
yum install -y httpd
echo '<h1>Hello from EC2</h1>' > /var/www/html/index.html
systemctl start httpd
systemctl enable httpdVerbindung herstellen: SSH oder Systems Manager
Es gibt zwei primäre Möglichkeiten, auf EC2-Instances zuzugreifen. SSH: Erfordert, dass Port 22 in der Sicherheitsgruppe geöffnet ist, sowie die Datei mit dem privaten Schlüssel. AWS Systems Manager Session Manager: Bietet Shell-Zugriff über Browser oder CLI, ohne Ports zu öffnen und ohne Schlüsselpaar, mit vollständiger Nachvollziehbarkeit über CloudTrail. Session Manager erfordert den SSM-Agenten (in den AMIs von Amazon Linux und Windows Server vorinstalliert) und eine IAM-Rolle mit der Richtlinie AmazonSSMManagedInstanceCore. Session Manager ist die bevorzugte Zugriffsmethode für Produktions-Instances.
# Start a Session Manager session (no SSH needed)
aws ssm start-session --target i-0abcdef1234567890EC2-Instance-Metadaten
Der EC2 Instance Metadata Service (IMDS) ist ein HTTP-Endpunkt unter 169.254.169.254, der nur innerhalb der Instance erreichbar ist. Er stellt Laufzeitinformationen bereit: Instance-ID, AMI-ID, öffentliche IP-Adresse, Anmeldeinformationen der IAM-Rolle, Availability Zone und mehr. IMDSv2 (die aktuelle Best Practice) erfordert ein sitzungsbezogenes Token und verhindert dadurch, dass Server-Side-Request-Forgery-(SSRF-)Angriffe über eine verwundbare Anwendung Metadaten auslesen. Konfigurieren Sie Instances immer so, dass IMDSv2 erforderlich ist.
# Get instance ID using IMDSv2
TOKEN=$(curl -X PUT 'http://169.254.169.254/latest/api/token' \
-H 'X-aws-ec2-metadata-token-ttl-seconds: 21600' -s)
curl -H "X-aws-ec2-metadata-token: $TOKEN" -s \
http://169.254.169.254/latest/meta-data/instance-idPlacement Groups
Placement Groups steuern, wie Instances auf der zugrunde liegenden Hardware verteilt werden. Cluster: Platziert Instances in einer AZ möglichst nahe beieinander, um extrem niedrige Netzwerklatenzen und eine hohe Bandbreite zu erreichen – ideal für HPC. Spread: Platziert jede Instance auf separater Hardware, um korrelierte Ausfälle zu reduzieren – ideal für kleine Gruppen kritischer Instances (maximal 7 pro AZ). Partition: Teilt Instances in logische Partitionen auf getrennten Racks auf – ideal für große verteilte Systeme wie Hadoop oder Cassandra, bei denen Rack-Awareness wichtig ist.
# Create a cluster placement group
aws ec2 create-placement-group \
--group-name HighPerfCluster \
--strategy clusterBeendigungsschutz für EC2
Beendigungsschutz verhindert, dass eine Instance versehentlich über die Konsole, CLI oder API beendet wird. Aktivieren Sie ihn beim Starten kritischer Instances. Hinweis: Auch bei aktiviertem Beendigungsschutz können Auto Scaling Groups Instances während einer Verkleinerung weiterhin beenden, sofern Sie den Instance-Schutz nicht separat konfigurieren. Das Attribut DeleteOnTermination des Root-EBS-Volumes steuert, ob das Volume beim Beenden der Instance automatisch gelöscht wird. Als Best Practice gilt true für Root-Volumes und false für Daten-Volumes, die Sie behalten möchten.
# Enable termination protection
aws ec2 modify-instance-attribute \
--instance-id i-0abcdef1234567890 \
--disable-api-terminationSchnelltest
Testen Sie Ihr Verständnis der Konzepte aus dieser Lektion für AWS Solutions Architect (SAA-C03).
Zusammenfassung der Lektion
In dieser Lektion haben Sie gelernt: EC2-Instances werden aus AMIs mit einem ausgewählten Instance-Typ, Schlüsselpaar, einer Sicherheitsgruppe und optionalen User Data gestartet; Elastic IPs stellen beständige öffentliche Adressen bereit, während sich normale öffentliche IP-Adressen beim Anhalten und Starten ändern; und Systems Manager Session Manager ist für Produktions-Instances die bevorzugte Zugriffsmethode gegenüber SSH. Als Nächstes vergleichen wir Instance-Typen und Preismodelle.
Häufig gestellte Fragen
Ist die Lektion „Ihre erste EC2-Instance starten“ kostenlos?
Ja — der vollständige Text von „Ihre erste EC2-Instance starten“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AWS Solutions Architect-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AWS Solutions Architect-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Ihre erste EC2-Instance starten“?
Gehen Sie den Startassistenten durch, wählen Sie ein AMI und einen Instance-Typ, konfigurieren Sie Schlüsselpaar und stellen Sie eine Verbindung über SSH her. Du übst AWS Solutions Architect 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 AWS Solutions Architect zu starten?
Keine Vorkenntnisse erforderlich. AWS Solutions Architect 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 „Ihre erste EC2-Instance starten“?
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 AWS Solutions Architect-Lektion Code schreiben und ausführen?
Ja. Jede AWS Solutions Architect-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
- Ihre erste EC2-Instance starten
- Instance-Typen und Preismodelle
- Security Groups und Schlüsselpaare
- EC2-Speicher: Instance Store vs. EBS