View a markdown version of this page

Bewährte Methoden für Lambda MicroVMS - AWS Lambda

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.

Bewährte Methoden für Lambda MicroVMS

Folgen Sie diesen bewährten Methoden, um zuverlässige, kostengünstige und sichere Anwendungen mit MicroVMS zu erstellen. AWS Lambda

Entwurf der Anwendung

Entwerfen Sie Ihre Anwendung so, dass sie mit MicroVM-Snapshots und Lifecycle-Hooks gut funktioniert:

  • Verwenden Sie Lifecycle-Hooks — Implementieren Sie sie /run für die Initialisierung nach der Ausführung, /suspend für eine reibungslose Bereinigung, für die Wiederherstellung der Verbindung und /resume für die Datenspülung. /terminate

  • Wiederverwendung von Snapshots handhaben — Generieren Sie UUIDs, Geheimnisse und Zufallswerte im Hook, nicht während der Image-Erstellung. /run Verwenden Sie CSPRNGs für die gesamte Generierung von Zufallszahlen.

  • Design for Resume — Validiert alle Netzwerkverbindungen und den Cache-Status im Hook. /resume AWS SDK-Verbindungen werden normalerweise automatisch wiederhergestellt, benutzerdefinierte Verbindungen jedoch möglicherweise nicht.

Leistung

Optimieren Sie die Leistung von MicroVM mit den folgenden Methoden:

  • Right-size Ihre microVM — Wählen Sie die kleinste microVM-Größe, die Ihren CPU-, Speicher- und Bandbreitenanforderungen entspricht. Die Bandbreite skaliert mit dem konfigurierten Speicher.

  • Minimierung der Snapshot-Größe — Halten Sie den Platzbedarf Ihrer Anwendung gering, um die Lauf- und Wiederaufnahmezeiten zu reduzieren. Entfernen Sie Abhängigkeiten bei der Erstellung und temporäre Dateien, bevor der Image-Snapshot erfasst wird.

  • suspend/resume Für latenzempfindliche Workloads verwenden — Halten Sie häufig genutzte Umgebungen im Ruhezustand, um die Ausführung schnell wieder aufnehmen zu können.

Sicherheit

Folgen Sie diesen Methoden, um Ihre MicroVM-Workloads zu sichern:

  • Authentifizierungstoken rotieren — Generieren Sie kurzlebige Token (15—30 Minuten). Implementieren Sie die Token-Aktualisierungslogik in Ihrem Client vor Ablauf.

  • Tokens auf bestimmte Ports beschränken — Verwenden Sie den allowedPorts Parameter, um den Tokenbereich auf die Ports zu beschränken, die Ihre Anwendung verwendet.

  • Verwenden Sie VPC-Egress für sensiblen Datenverkehr — Leiten Sie den Datenverkehr zu Datenbanken und internen APIs über einen VPC-Ausgangsconnector statt über das öffentliche Internet weiter.

  • Wenden Sie IAM mit den geringsten Rechten an — Trennen Sie Build-Rollen (Image-Erstellung) von Ausführungsrollen (Runtime). Gewähren Sie die erforderlichen Mindestberechtigungen.

Kostenoptimierung

Reduzieren Sie die Kosten mit den folgenden Strategien:

  • Richtlinien für Leerlauf konfigurieren — Stellen Sie einmaxIdleDurationSeconds, dass MicroVMs im Leerlauf automatisch angehalten werden. Bei gesperrten MicroVMs fallen keine Rechengebühren an.

  • Höchstwert festlegen DurationInSeconds — Vermeiden Sie unvorhergesehene Kosten, indem Sie für jede MicroVM eine feste Terminierungszeit festlegen.

  • Ungenutzte MicroVMs beenden — Lassen Sie MicroVMs nicht auf unbestimmte Zeit laufen. Wird verwendetsuspendedDurationSeconds, um nach längeren Leerlaufzeiten automatisch zu beenden.

  • Tag-Ressourcen — Verwenden Sie Tags auf MicroVM-Images für die Kostenzuweisung und Berichterstattung im AWS Cost Explorer.

  • Right-size Ihre MicroVMs — Beginnen Sie mit der kleinsten Basisversion, die Ihren Leistungsanforderungen entspricht. Bei Spitzenaktivität können Sie den Ausgangswert auf das Vierfache steigern, ohne dass eine erneute Bereitstellung erforderlich ist.

  • Ungenutzte Images bereinigen — Löschen Sie MicroVM-Image-Versionen, die Sie nicht mehr benötigen, um die Speicherkosten zu senken.

Überwachen

Überwachen Sie Ihre MicroVMs effektiv:

  • Review stateReason — Wenn MicroVMs unerwartet beendet werden, enthält die get-microvm Antwort eine stateReason mit dem Grund für den unerwarteten Fehler.