Alle Begriffe

Glossar

NAT Gateway

Auch: Network Address Translation Gateway · NAT-Gateway

Der Dienst, über den Ressourcen aus privaten Subnetzen ins Internet gelangen. Rechnet nach Stunde und nach verarbeiteten Daten.

Ein NAT Gateway kostet zweimal: eine feste Stundenrate je Gateway und Verfügbarkeitszone, und einen Betrag je verarbeitetem Gigabyte. Die Stundenrate ist überschaubar und vorhersehbar. Der Datenanteil ist es nicht, und er ist der Grund, warum dieser Posten in gewachsenen Accounts regelmäßig vierstellig pro Monat wird, ohne dass jemand eine Entscheidung dazu getroffen hätte.

Der teuerste Fall ist zugleich der unnötigste: Verkehr aus einem privaten Subnetz zu einem AWS-Dienst in derselben Region, etwa S3 oder DynamoDB. Der Standardpfad führt durch das NAT Gateway ins Internet und wieder zurück, obwohl Quelle und Ziel im selben Rechenzentrum stehen. Bezahlt wird das wie jeder andere Verkehr.

Die Lösung dafür ist ein Gateway-Endpunkt. Er leitet den Verkehr AWS-intern, kostet nichts und ist in zwanzig Minuten eingerichtet: eine Ressource in Terraform, ein Eintrag in den Routingtabellen der privaten Subnetze. Für S3 und DynamoDB gibt es diese Art von Endpunkt, für andere Dienste die kostenpflichtigen Interface-Endpunkte.

Interface-Endpunkte kosten wiederum eine Stundenrate je Verfügbarkeitszone. Bei viel Verkehr rechnen sie sich gegen die NAT-Gebühren, bei wenig nicht. Die Rechnung gehört pro Endpunkt aufgemacht, nicht pauschal.

Der zweite große Posten ist Verkehr zwischen Verfügbarkeitszonen. Er kostet in beide Richtungen und entsteht, wenn eine Anwendung in Zone A eine Datenbank in Zone B anspricht. Zonenbewusstes Routing hilft, steht aber im Zielkonflikt mit Ausfallsicherheit: Was mehrzonig sein muss, bleibt mehrzonig, auch wenn es kostet.

Woran Sie es erkennen

  • In der Rechnung steht eine nennenswerte Position NatGateway-Bytes.
  • Anwendungen in privaten Subnetzen lesen oder schreiben regelmäßig große Mengen aus S3.
  • Es gibt kein VPC-Endpunkt-Objekt in der Infrastrukturbeschreibung.
  • In Test- und Entwicklungsumgebungen läuft ein NAT Gateway je Verfügbarkeitszone.

Nicht zu verwechseln mit

Internet Gateway
Die Verbindung eines öffentlichen Subnetzes zum Internet. Kostenlos, verarbeitet aber keinen Verkehr aus privaten Subnetzen und ersetzt kein NAT Gateway.
Gateway-Endpunkt
Kostenlose Abkürzung zu S3 und DynamoDB innerhalb der Region. Der wichtigste Hebel gegen NAT-Kosten und in zwanzig Minuten eingerichtet.
Interface-Endpunkt
Für alle übrigen AWS-Dienste, kostet eine Stundenrate je Zone plus Datenanteil. Lohnt sich erst ab einem gewissen Verkehrsaufkommen.
Egress-Kosten
Der Oberbegriff für ausgehenden Verkehr. NAT-Gebühren sind ein Sonderfall davon, der auch dann anfällt, wenn die Daten die AWS-Region gar nicht verlassen.

Wann es trägt

  • Private Subnetze müssen ausgehend erreichbar sein, etwa für Paketquellen oder externe Schnittstellen.
  • Ausgehender Verkehr soll über feste Adressen laufen, die beim Gegenüber freigeschaltet sind.

Wann nicht

  • Für Verkehr zu S3 oder DynamoDB in derselben Region. Dafür gibt es den kostenlosen Gateway-Endpunkt.
  • In Umgebungen ohne ausgehenden Bedarf. Ein NAT Gateway, das nur Stundenrate produziert, gehört gelöscht.
  • Ein Gateway je Zone in einer Testumgebung. Dort reicht eines, die Ausfallsicherheit ist den Preis nicht wert.

Wie man rangeht

  1. NatGateway-Bytes im CUR prüfenDiese Verbrauchsart aufschlüsseln und mit dem Gesamtbetrag vergleichen. Ich habe noch keinen gewachsenen Account gesehen, auf dem dort kein Fund war.
  2. Gateway-Endpunkte für S3 und DynamoDB anlegenEine Terraform-Ressource, die Routingtabellen der privaten Subnetze eintragen, fertig. Kostenlos, ohne Ausfall, sofort wirksam.
  3. Verkehr nach Ziel aufschlüsselnÜber VPC Flow Logs sehen, wohin die Bytes tatsächlich gehen. Oft ist ein einzelner Dienst oder ein einzelner Job für den größten Teil verantwortlich.
  4. Interface-Endpunkte einzeln durchrechnenStundenrate je Zone gegen ersparte NAT-Gebühren stellen. Ungenutzte Interface-Endpunkte sind ein eigener stiller Posten.
  5. Zonenverkehr prüfen, aber Ausfallsicherheit nicht opfernWo Anwendung und Datenbank grundlos in verschiedenen Zonen liegen, lohnt die Korrektur. Wo Mehrzonigkeit Absicht ist, bleibt sie.

Häufig gefragt

Wie groß ist der Hebel wirklich?

Das hängt am Datenvolumen. Bei einem Job, der stündlich mehrere Gigabyte aus S3 liest, sind es schnell mehrere hundert Euro im Monat für Verkehr, der AWS nie verlassen hat. Der Gateway-Endpunkt kostet nichts und ist in zwanzig Minuten eingerichtet: kaum eine Maßnahme hat ein besseres Verhältnis von Aufwand zu Wirkung.

Kann man das NAT Gateway ganz weglassen?

Nur wenn nichts aus den privaten Subnetzen nach außen muss. In der Praxis bleibt fast immer etwas übrig, etwa Paketquellen oder externe Schnittstellen. In Test- und Entwicklungsumgebungen lässt sich aber oft von drei Gateways auf eines reduzieren.

Gateway-Endpunkt oder Interface-Endpunkt?

Für S3 und DynamoDB immer der Gateway-Endpunkt: kostenlos und ohne laufende Gebühr. Für andere Dienste gibt es nur Interface-Endpunkte, und die kosten eine Stundenrate je Verfügbarkeitszone. Ob sie sich lohnen, entscheidet das Verkehrsaufkommen, deshalb gehört die Rechnung pro Endpunkt aufgemacht.

WeiterlesenFinOps auf AWS: versteckte Kosten finden