03 - computing Flashcards
Aus welchen Komponenten besteht eine Serverless Applikation?
Eine AWS Serverless Applikation besteht typischerweise aus:
- AWS Lambda Funktionen für die Geschäftslogik
- API Gateway für HTTP Endpoints
- Persistenzlayer (z.B. DynamoDB, S3)
- Event Sources/Triggers (z.B. S3, DynamoDB Streams, EventBridge)
- IAM Rollen und Berechtigungen
- Monitoring über CloudWatch
Diese Komponenten ermöglichen die Entwicklung und den Betrieb serverloser Anwendungen in AWS.
Welche Vorteile sehen Sie durch den Einsatz von Serverless Applikationen für das Hosting?
Die Hauptvorteile sind:
- Keine Server-Administration notwendig
- Automatische Skalierung
- Pay-per-use Preismodell (nur tatsächliche Nutzung wird berechnet)
- Hohe Verfügbarkeit durch AWS-Infrastruktur
- Schnelle Entwicklung und Deployment möglich
- Integrierte Monitoring- und Logging-Funktionen
Diese Vorteile machen Serverless zu einer attraktiven Option für viele Anwendungen.
Welche Limitationen und Nachteile können durch den Einsatz von Serverless entstehen?
Die Limitationen und Nachteile sind:
- Ausführungszeitbeschränkungen (z.B. max. 15 Min bei Lambda)
- Cold Start Verzögerungen
- Weniger direkte Kontrolle über die Infrastruktur
- Vendor Lock-in bei AWS-spezifischen Services
- Debugging kann komplexer sein
- Kostenkontrolle bei hoher Last schwieriger
Diese Aspekte sollten bei der Entscheidung für Serverless berücksichtigt werden.
Welche Übergabeparameter besitzt eine Lambda Funktion?
Eine Lambda Funktion erhält:
- Event-Objekt: Enthält die Input-Daten
- Context-Objekt: Enthält Runtime-Informationen wie:
- Funktion Name
- Version
- Memory Limits
- Execution Time
- Identity Information
- Request ID
Diese Parameter sind entscheidend für die Ausführung und das Verhalten von Lambda-Funktionen.
Wie können Daten persistent innerhalb einer Serverless Funktion gespeichert werden?
Möglichkeiten für persistente Datenspeicherung:
- Amazon S3 für Objekt-Storage
- DynamoDB für NoSQL Datenbank
- Amazon RDS für relationale Datenbanken
- Amazon ElastiCache für In-Memory Caching
- EFS (Elastic File System) für Dateisystem-Zugriff
Diese Speicherlösungen bieten verschiedene Ansätze zur Datenpersistenz in Serverless Architekturen.
Erklären Sie bitte mit Hilfe eines Zustandsdiagrammes die einzelnen Zustände in der sich EC2-Instanzen befinden können.
EC2 Instance Lifecycle States:
- pending: Launch
- running: Läuft
- stopping: Anhalten / Ruhezustand wird vorbereitet
- shutting-down: Beenden wird vorbereitet
- stopped: Beendet, kann neugestartet werden
- terminated: Deleted
- rebooting: Reboot
Die Zustände zeigen den Lebenszyklus einer EC2-Instanz und deren Übergänge.
Was ist eine Elastic IP und welche Eigenschaften hat sie?
Eine Elastic IP ist eine statische, öffentliche IPv4-Adresse, die folgende Eigenschaften hat:
- Sie bleibt konstant und ist mit dem AWS Account verknüpft
- Kann flexibel zwischen EC2-Instanzen verschoben werden
- Bleibt auch beim Stoppen/Starten einer Instanz erhalten
- Ermöglicht High Availability Setups durch schnelles Umschalten
- Hilfreich für Dienste die eine konstante IP benötigen (z.B. DNS)
- Bleibt reserviert bis sie explizit freigegeben wird
Diese Eigenschaften machen Elastic IPs nützlich für verschiedene Anwendungen, die eine stabile IP-Adresse benötigen.
Wie können Compute Instanzen vollständig automatisiert gestartet und gestoppt werden?
Es gibt mehrere Möglichkeiten:
- AWS Auto Scaling Groups
- AWS EventBridge (CloudWatch Events)
- AWS CLI/SDK
- AWS Systems Manager
- AWS Lambda
Diese Mechanismen bieten Flexibilität und Effizienz bei der Verwaltung von Compute-Ressourcen.