Generieren Sie eine statische ausgehende IP-Adresse mithilfe einer Lambda-Funktion, Amazon VPC und einer serverlosen Architektur - AWS Prescriptive Guidance

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.

Generieren Sie eine statische ausgehende IP-Adresse mithilfe einer Lambda-Funktion, Amazon VPC und einer serverlosen Architektur

Erstellt von Thomas Scott (AWS)

Umgebung: Produktion

Technologien: Container und Mikroservices; DevelopmentAndTesting

AWS-Dienste: AWS Lambda

Übersicht

Dieses Muster beschreibt, wie eine statische ausgehende IP-Adresse in der Amazon Web Services (AWS) -Cloud mithilfe einer serverlosen Architektur generiert wird. Ihr Unternehmen kann von diesem Ansatz profitieren, wenn es Dateien mithilfe des Secure File Transfer Protocol (SFTP) an eine separate Geschäftseinheit senden möchte. Das bedeutet, dass die Geschäftseinheit Zugriff auf eine IP-Adresse haben muss, über die Dateien ihre Firewall passieren können. 

Der Ansatz des Musters hilft Ihnen bei der Erstellung einer AWS Lambda Lambda-Funktion, die eine Elastic IP-Adresse als ausgehende IP-Adresse verwendet. Wenn Sie die Schritte in diesem Muster befolgen, können Sie eine Lambda-Funktion und eine Virtual Private Cloud (VPC) erstellen, die ausgehenden Datenverkehr über ein Internet-Gateway mit einer statischen IP-Adresse weiterleitet. Um die statische IP-Adresse zu verwenden, fügen Sie die Lambda-Funktion der VPC und ihren Subnetzen hinzu. 

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives AWS-Konto. 

  • AWS Identity and Access Management (IAM) -Berechtigungen zum Erstellen und Bereitstellen einer Lambda-Funktion sowie zum Erstellen einer VPC und ihrer Subnetze. Weitere Informationen dazu finden Sie unter Ausführungsrolle und Benutzerberechtigungen in der AWS Lambda Lambda-Dokumentation.

  • Wenn Sie den Ansatz dieses Musters mithilfe von Infrastructure as Code (IaC) implementieren möchten, benötigen Sie eine integrierte Entwicklungsumgebung (IDE) wie AWS Cloud9. Weitere Informationen dazu finden Sie unter Was ist AWS Cloud9? in der AWS Cloud9 Cloud9-Dokumentation.

Architektur

Das folgende Diagramm zeigt die serverlose Architektur für dieses Muster.

Das Diagramm zeigt den folgenden Workflow:

  1. Ausgehender Verkehr geht NAT gateway 1 rein. Public subnet 1

  2. Ausgehender Verkehr geht NAT gateway 2 rein. Public subnet 2

  3. Die Lambda-Funktion kann in Private subnet 1 oder Private subnet 2 ausgeführt werden.

  4. Private subnet 1und leitet Private subnet 2 den Verkehr zu den NAT-Gateways in den öffentlichen Subnetzen weiter.

  5. Die NAT-Gateways senden ausgehenden Datenverkehr von den öffentlichen Subnetzen an das Internet-Gateway.

  6. Ausgehende Daten werden vom Internet-Gateway zum externen Server übertragen.

Technologie-Stack

  • Lambda

  • Amazon Virtual Private Cloud (Amazon VPC)

 

Automatisierung und Skalierung

Sie können Hochverfügbarkeit (HA) sicherstellen, indem Sie zwei öffentliche und zwei private Subnetze in unterschiedlichen Availability Zones verwenden. Selbst wenn eine Availability Zone nicht mehr verfügbar ist, funktioniert die Pattern-Lösung weiterhin.

Tools

  • AWS Lambda — AWS Lambda ist ein Rechenservice, der die Ausführung von Code unterstützt, ohne Server bereitzustellen oder zu verwalten. Lambda führt Ihren Code nur bei Bedarf aus und skaliert automatisch – von einigen Anforderungen pro Tag bis zu Tausenden pro Sekunde. Sie bezahlen nur für die Datenverarbeitungszeit, die Sie wirklich nutzen und es werden keine Gebühren in Rechnung gestellt, wenn Ihr Code nicht ausgeführt wird.

  • Amazon VPC — Amazon Virtual Private Cloud (Amazon VPC) stellt einen logisch isolierten Bereich der AWS-Cloud bereit, in dem Sie AWS-Ressourcen in einem von Ihnen definierten virtuellen Netzwerk starten können. Dieses virtuelle Netzwerk entspricht weitgehend einem herkömmlichen Netzwerk, wie Sie es in Ihrem Rechenzentrum betreiben, kann jedoch die Vorzüge der skalierbaren Infrastruktur von AWS nutzen.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen einer neuen VPC.

Melden Sie sich bei der AWS-Managementkonsole an, öffnen Sie die Amazon VPC-Konsole und erstellen Sie dann eine VPC mit dem Namen Lambda VPC IPv4 10.0.0.0/25 CIDR-Bereich.

Weitere Informationen zum Erstellen einer VPC finden Sie unter Erste Schritte mit Amazon VPC in der Amazon VPC-Dokumentation. 

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie das erste öffentliche Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Subnets und dann Create Subnet aus. 

  2. Geben Sie für Name Tag public-one ein.

  3. Wählen Sie für VPC Lambda VPC aus.

  4. Wählen Sie eine Availability Zone und zeichnen Sie sie auf. 

  5. Geben Sie für IPv4 CIDR-Block den Wert Subnetz erstellen ein 10.0.0.0/28 und wählen Sie dann Create subnet aus.

AWS-Administrator
Erstellen Sie das zweite öffentliche Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Subnets und dann Create Subnet aus. 

  2. Geben Sie für Name Tag public-two ein.

  3. Wählen Sie für VPC Lambda VPC aus.

  4. Wählen Sie eine Availability Zone und zeichnen Sie sie auf. Wichtig: Sie können die Availability Zone, die das public-one Subnetz enthält, nicht verwenden. 

  5. Geben Sie für IPv4 CIDR-Block Subnetz erstellen ein 10.0.0.16/28 und wählen Sie dann Create subnet aus.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie das erste private Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Subnets und dann Create Subnet aus. 

  2. Geben Sie für Name Tag private-one ein.

  3. Wählen Sie für VPC Lambda VPC aus.

  4. Wählen Sie die Availability Zone aus, die das public-one Subnetz enthält, das Sie zuvor erstellt haben. 

  5. Geben Sie für IPv4 CIDR-Block Subnetz erstellen ein 10.0.0.32/28 und wählen Sie dann Create subnet aus.

AWS-Administrator
Erstellen Sie das zweite private Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Subnets und dann Create Subnet aus. 

  2. Geben Sie für Name Tag private-two ein.

  3. Wählen Sie für VPC Lambda VPC aus.

  4. Wählen Sie dieselbe Availability Zone, die das public-two Subnetz enthält, das Sie zuvor erstellt haben. 

  5. Geben Sie für IPv4 CIDR-Block Subnetz erstellen ein 10.0.0.64/28 und wählen Sie dann Create subnet aus.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie die erste Elastic IP-Adresse.
  1. Wählen Sie in der Amazon VPC-Konsole Elastic IPs und dann Allocate new address aus.

  2. Wählen Sie Allocate und notieren Sie die Allocation ID für Ihre neu erstellte Elastic IP-Adresse.

Hinweis: Diese Elastic IP-Adresse wird für Ihr erstes NAT-Gateway verwendet. 

AWS-Administrator
Erstellen Sie die zweite Elastic IP-Adresse.
  1. Wählen Sie in der Amazon VPC-Konsole Elastic IPs und dann Allocate new address aus.

  2. Wählen Sie Allocate und notieren Sie die Allocation ID für diese zweite Elastic IP-Adresse.

Hinweis: Diese Elastic IP-Adresse wird für Ihr zweites NAT-Gateway verwendet.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen eines Internet-Gateways
  1. Wählen Sie in der Amazon VPC-Konsole Internet Gateways und dann Create Internet Gateway aus.

  2. Geben Sie Lambda internet gateway den Namen ein und wählen Sie dann Internet-Gateway erstellen. Stellen Sie sicher, dass Sie die Internet-Gateway-ID notieren. 

AWS-Administrator
Verbinden Sie das Internet-Gateway mit der VPC.

Wählen Sie zuerst das Internet-Gateway aus, das Sie eben erstellt haben, und anschließend Actions, Attach to VPC (Aktionen, An VPC anfügen).

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie das erste NAT-Gateway.
  1. Wählen Sie auf der Amazon VPC-Konsole NAT Gateways und dann Create NAT Gateway aus.

  2. Geben Sie den nat-one Namen des NAT-Gateways ein.

  3. Wählen Sie public-one als Subnetz, in dem das NAT-Gateway erstellt werden soll.

  4. Wählen Sie als Konnektivitätstyp die Option Öffentlich aus.

  5. Wählen Sie für Elastic IP Allocation ID die erste Elastic IP-Adresse aus, die Sie zuvor erstellt haben, und verknüpfen Sie sie mit dem NAT-Gateway.

  6. Wählen Sie NAT-Gateway erstellen aus.

AWS-Administrator
Erstellen Sie das zweite NAT-Gateway.
  1. Wählen Sie auf der Amazon VPC-Konsole NAT Gateways und dann Create NAT Gateway aus.

  2. Geben Sie den nat-two Namen des NAT-Gateways ein.

  3. Wählen Sie public-two als Subnetz, in dem das NAT-Gateway erstellt werden soll.

  4. Wählen Sie als Konnektivitätstyp die Option Öffentlich aus.

  5. Wählen Sie für Elastic IP Allocation ID die zweite Elastic IP-Adresse aus, die Sie zuvor erstellt haben, und verknüpfen Sie sie mit dem NAT-Gateway.

  6. Wählen Sie NAT-Gateway erstellen aus.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie die Routing-Tabelle für das öffentliche Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Route Tables und dann Create Route Table aus.

  2. Geben Sie public-one-subnet den Namen der Routentabelle ein und wählen Sie dann Routentabelle erstellen.

  3. Wählen Sie die public-one-subnet Routentabelle aus, klicken Sie auf Routen bearbeiten und wählen Sie dann Route hinzufügen.

  4. Geben Sie 0.0.0.0 dies im Feld Ziel an und wählen Sie dann die Internet-Gateway-ID in der Zielliste aus.

  5. Wählen Sie auf der Registerkarte Subnetzzuordnungen die Option Subnetzzuordnungen bearbeiten aus, wählen Sie das public-one Subnetz mit dem 10.0.0.0/28 CIDR-Bereich aus, und klicken Sie dann auf Verknüpfungen speichern.

  6. Wählen Sie Save Changes.

AWS-Administrator
Erstellen Sie die Routing-Tabelle für das Public-Two-Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Route Tables und dann Create Route Table aus.

  2. Geben Sie public-two-subnet den Namen der Routentabelle ein und wählen Sie dann Routentabelle erstellen.

  3. Wählen Sie die public-two-subnet Routentabelle aus, klicken Sie auf Routen bearbeiten und wählen Sie dann Route hinzufügen.

  4. Geben Sie 0.0.0.0 dies im Feld Ziel an und wählen Sie dann die Internet-Gateway-ID in der Zielliste aus.

  5. Wählen Sie auf der Registerkarte Subnetzzuordnungen die Option Subnetzzuordnungen bearbeiten aus, wählen Sie das public-two Subnetz mit dem 10.0.0.16/28 CIDR-Bereich aus, und klicken Sie dann auf Verknüpfungen speichern.

  6. Wählen Sie Save Changes.

AWS-Administrator
Erstellen Sie die Routing-Tabelle für das private One-Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Route Tables und dann Create Route Table aus.

  2. Geben Sie private-one-subnet den Namen der Routentabelle ein und wählen Sie dann Routentabelle erstellen.

  3. Wählen Sie die private-one-subnet Routentabelle aus, klicken Sie auf Routen bearbeiten und wählen Sie dann Route hinzufügen.

  4. Geben Sie 0.0.0.0 dies im Feld Ziel an und wählen Sie dann das NAT-Gateway im public-one Subnetz in der Zielliste aus.

  5. Wählen Sie auf der Registerkarte Subnetzzuordnungen die Option Subnetzzuordnungen bearbeiten aus, wählen Sie das private-one Subnetz mit dem 10.0.0.32/28 CIDR-Bereich aus, und klicken Sie dann auf Verknüpfungen speichern.

  6. Wählen Sie Save Changes.

AWS-Administrator
Erstellen Sie die Routing-Tabelle für das Private-Two-Subnetz.
  1. Wählen Sie in der Amazon VPC-Konsole Route Tables und dann Create Route Table aus.

  2. Geben Sie private-two-subnet den Namen der Routentabelle ein und wählen Sie dann Routentabelle erstellen.

  3. Wählen Sie die private-two-subnet Routentabelle aus, klicken Sie auf Routen bearbeiten und wählen Sie dann Route hinzufügen.

  4. Geben Sie 0.0.0.0 dies im Feld Ziel an und wählen Sie dann das NAT-Gateway im public-two Subnetz in der Zielliste aus.

  5. Wählen Sie auf der Registerkarte Subnetzzuordnungen die Option Subnetzzuordnungen bearbeiten aus, wählen Sie das private-two Subnetz mit dem 10.0.0.64/28 CIDR-Bereich aus, und klicken Sie dann auf Verknüpfungen speichern.

  6. Wählen Sie Save Changes.

AWS-Administrator
AufgabeBeschreibungErforderliche Fähigkeiten
Erstellen Sie eine neue Lambda-Funktion.
  1. Öffnen Sie die AWS Lambda Lambda-Konsole und wählen Sie Create function.

  2. Geben Sie unter Basisinformationen Lambda test unter Funktionsname ein und wählen Sie dann unter Runtime die Sprache Ihrer Wahl aus.

  3. Wählen Sie Funktion erstellen.

AWS-Administrator
Fügen Sie die Lambda-Funktion zu Ihrer VPC hinzu.
  1. Wählen Sie in der AWS Lambda Lambda-Konsole Funktionen und dann die Funktion aus, die Sie zuvor erstellt haben. 

  2. Wählen Sie Konfiguration und dann VPC aus.

  3. Wählen Sie Bearbeiten und anschließend beide privaten Subnetze aus Lambda VPC.

  4. Wählen Sie zu Testzwecken die Standardsicherheitsgruppe und dann Speichern aus.

AWS-Administrator
Schreiben Sie Code, um einen externen Service aufzurufen.
  1. Schreiben Sie in der Programmiersprache Ihrer Wahl Code, um einen externen Dienst aufzurufen, der Ihre IP-Adresse zurückgibt.

  2. Stellen Sie sicher, dass die zurückgegebene IP-Adresse mit einer Ihrer Elastic IP-Adressen übereinstimmt.

AWS-Administrator

Zugehörige Ressourcen