So erstellen Sie eine Lambda -Funktion mit Python -Laufzeit

So erstellen Sie eine Lambda -Funktion mit Python -Laufzeit
„Lambda ist ein serverloser Computerdienst, der von AWS bereitgestellt wird, um Ihren Code auszuführen, ohne die Skalierung und die hohe Verfügbarkeit der Server zu verwalten. Mit dem Begriff serverless meinen wir, dass Sie keinen Server haben und ihn verwalten müssen, um Ihre Anwendung auszuführen. Lambda führt Aufgaben in Ihrem Namen aus und verwaltet alles selbst. Es hat also ein einzigartiges Merkmal des automatischen Skalierens und der Verwaltung der Quellen und Dienste gemäß den Anforderungen. Denken Sie daran, dass es in Echtzeit nicht möglich ist, eine Anwendung ohne Server und seine Verwaltung auszuführen. Daher ist es die AWS, die einen Server zuweist und all diese Dienste selbst verwaltet, was nicht Ihre Kopfschmerzen sind.”

Im Folgenden finden Sie einige der wichtigsten Aufgaben, die AWS in unserem Namen übernimmt und in unserem Namen ausführen, wenn Sie Ihre Bewerbung auf Lambda bereitstellen.

  1. Server und Betriebssystemwartung
  2. Verwaltung von Speicher, CPU, Netzwerk und anderen Ressourcen
  3. Automatische Skalierung
  4. Hohe Verfügbarkeit
  5. Überwachung der Flottengesundheit
  6. Sicherheitsmethoden anwenden
  7. Lambda -Funktionen verfolgen (Cloud Watch)

Die Lambda -Funktion unterstützt mehrere Sprachen, darunter Java, Go, Powershell, Knoten.JS, C#, Python und Ruby. Um eine andere Programmiersprache zu verwenden, bietet es auch Laufzeit -API -Service. In diesem Tutorial erklären wir, wie wir eine Lambda -Funktion mit Python -Laufzeit von Grund auf neu erstellen können.

Abrechnung von Lambda

Nach einer kurzen Einführung des Lambda -Dienstes, das uns als erstes in den Sinn kommt, ist, wenn es sich um serverlose Computing handelt, wie würde AWS diesen Dienst berechnen? Im Gegensatz zur Abrechnung von EC2 -Servern, bei denen AWS für die Zeit, die der Server ausgeführt hat. Der Lambda -Dienst wird also nur in Rechnung gestellt, wenn unser Code abgelaufen ist, nicht ab dem Zeitpunkt, an dem unsere Lambda -Funktion erstellt wurde. Daher wird die Dauer der Rechnung für die Lambda -Funktion für die Codeausführungszeit berechnet, die auf die nächste 1 ms abgerundet ist.

Erstellen einer Lambda -Funktion mit Python -Laufzeit

Um eine Lambda -Funktion mit Python -Laufzeit zu erstellen, werden wir eine Funktion erstellen und dann konfigurieren wir sie so, dass sie die Python -Laufzeit verwenden. In diesem Tutorial wird das gesamte Verfahren zur Erstellung und Konfiguration der Lambda -Funktion diskutiert.

Melden Sie sich zunächst bei der AWS -Verwaltungskonsole an und suchen Sie dann nach Lambda in der Suchleiste und gehen Sie dafür

Klicken Sie auf der linken Seitenleiste auf die Funktionen Taste, um alle Funktionen in der Lambda -Konsole zu erhalten.

Klicken Sie auf der rechten Seite des Bildschirms auf die Funktion erstellen Schaltfläche zum Erstellen der Funktion.

Nach der Auswahl der Funktion für Erstellen werden wir auf die Konfigurationsseite der Lambda -Funktion gerichtet. Dort finden wir vier Möglichkeiten, eine Lambda -Funktion zu erstellen. Im Moment werden wir uns für die "entscheiden"Autor von Grund auf neu" Möglichkeit.

Im Menü Basic Information werden wir a festlegen Funktionsname unserer Wahl für unsere Funktion.

Im nächsten Schritt werden wir eine Sprache auswählen, mit der wir unsere Funktion schreiben möchten. In diesem Tutorial werden wir wählen Python 3.9 als unsere Laufzeit.

Dann werden die folgenden zwei Optionen für die Architektur erscheinen.

  • X86_64
  • ARM64

Für diese Demo werden wir wählen x86_64 Als Architektur, die wir für den Funktionscode verwenden möchten.

Standardmäßig erstellt AWS eine IAM -Rolle, die die Erlaubnis hat, Protokolle für Cloudwatch zu werfen. Wir können unsere eigene Rolle mit den Richtlinien schaffen, die wir für unsere Lambda -Funktion gemäß unseren Anforderungen verwenden möchten. Für dieses Tutorial in der “Standardausführungsrolle ändern"Menü, wir werden gehen"Erstellen Sie eine neue Rolle mit grundlegenden Lambda -Berechtigungen.

In der unteren rechten Ecke klicken wir dann auf eine Funktion erstellen So erstellen Sie die Funktion.

Ein neuer Bildschirm erscheint mit einer Erfolgsnachricht und Übersicht über die Funktion wie unten. Auf dieser Seite können wir Auslöser und Ziele für unsere Funktion hinzufügen. Außerdem können auch andere Informationen zur Funktion gesehen werden, die Beschreibung, letzte Änderungsinformationen, Funktions -ARN und URL zur Funktion umfassen.

Testen einer Lambda -Funktion

Im Menü Code -Quellen können wir unseren Hello World Python -Code sehen, wie im Bild unten gezeigt.

Hier können wir unseren Code testen, indem wir einfach auf die klicken Prüfen Taste.

Es wird a fordern Testereignis Bildschirm konfigurieren, Und hier können Sie ein Testereignis konfigurieren, indem Sie es benennen, die Verfügbarkeit des Testereignisses als privat oder gemeinsam genutzt haben, und für die von uns ausgewählte Standard-Hello-World-Vorlage.

Klicken Sie dann auf die speichern Schaltfläche zum Speichern des Ereignisses.

Es führt uns zurück zum Hauptmenü der Funktion, in dem die Erfolgsnachricht oben angezeigt wird. Hier klicken wir erneut auf die Prüfen Schaltfläche, und unser Code wird ausgeführt.

Wie wir die Ausführungsergebnisse unseres Code auf der neuen Registerkarte gesehen haben. Jetzt können wir unseren Code überschreiben, bearbeiten und auf die gleiche Weise testen.

Lesen von Protokollen einer Lambda -Funktion

Da wir unserer Lambda -Funktion die Erlaubnis erteilt haben, Protokolle in CloudWatch hochzuladen. Daher werden Protokolle jedes Mal, wenn wir unseren Code ausführen, in Cloud Watch hochgeladen.

In der linken Seite von CloudWatch klicken wir auf Protokolle. Hier können wir zwei Optionen in Protokollen sehen.

  • Protokollgruppen
  • Log -Erkenntnisse

In Protokollgruppen können wir Protokolle für die Hello-World-Funktion als sehen /AWS/Lambda/Hello-World-Funktion.

In Log -Erkenntnissen können wir unsere Protokolle durchsuchen und analysieren. Hier können wir Fragen vornehmen, um unsere Arbeit mit Protokollen effizienter auszuführen.

Hier in Log Insights, wenn wir unsere Protokollgruppe auswählen und auf klicken Abfrage führen, Wir werden unsere gewünschten Ergebnisse erzielen.

Und wir werden unsere Ergebnisse mit erzielen @timestamp Und @Nachricht folgendermaßen

Auf die gleiche Weise können wir bis zu 1000 Lambda -Funktionen erstellen. Wir können unseren Python -Code schreiben, um unsere Anforderungen zu erfüllen und ihn auszuführen. Darüber hinaus können mehrere Aufgaben auch mit der Lambda -Funktion automatisiert werden. Wir haben einige grundlegende Aufgaben unten erwähnt, die von der Lambda -Funktion über den Python -Code mit dem Boto3, dem Python SDK für AWS, verwaltet werden.

  • EC2 -Instanz -Bedingungswarnungen erhalten
  • Planen Sie den Start- und Stopp von EC2 -Instanzen
  • Einen Element in die AWS -Dynamodb -Tabelle einfügen

Abschluss

Die Lambda -Funktion ist ein serverloser Computerdienst, der von AWS bereitgestellt wird, in dem AWS alle Aufgaben in unserem Namen ausführt, von der Zuweisung eines Servers auf Wartung, Verwaltung, Netzwerk und Sicherheit dieses Servers für unseren Code. AWS -Gebühren für Lambda nur dann, wenn die Lambda -Funktion ausgelöst wird, und sie kann sogar in Millisekunden in Rechnung gestellt werden. Daher hat dieser Lambda-Funktionsdienst das Feld des Cloud Computing revolutioniert und eine Reihe von Cloud-Aufgaben einfach zu erledigen.