Eine Virtual Private Cloud (VPC) ist eine isolierte Netzwerkumgebung in AWS.

AWS VPC bietet vollständige Kontrolle über die Netzwerkkonfiguration, einschließlich:

  • IP-Adressbereiche
  • Subnetze
  • Routing-Tabellen
  • Netzwerk-Gateways

Für SystemLink Enterprise ist ein ordnungsgemäß konfigurierter VPC für Sicherheit, Skalierbarkeit und Netzwerkisolierung unerlässlich.

Konfigurieren Sie Ihren VPC, um die Rechen- und Speicherinfrastruktur in privaten Subnetzen zu isolieren, unabhängig von internetseitigen Gateways und Load Balancern. Diese Konfiguration folgt den bewährten Methoden der Cloud-Sicherheit und stellt sicher, dass sensible Workloads nicht direkt über das Internet zugänglich sind.

Eine allgemeine Beschreibung der Architektur finden Sie im AWS SystemLink Enterprise Kubernetes Architekturdiagramm.

Subnetzarchitektur

Konfigurieren Sie Ihren VPC mit öffentlichen und privaten Subnetzen, um internetorientierte Komponenten von der internen Infrastruktur zu trennen.

Verwenden Sie die folgenden Komponenten in privaten Subnetzen ohne direkten Internetzugang:

  • EKS-Cluster-Knoten: Worker-Knoten, die SystemLink Enterprise-Pods hosten, einschließlich Webdiensten, Webanwendungen und unterstützender Infrastruktur.
  • Datenbanken: Amazon RDS-Instanzen für PostgreSQL oder selbstverwaltete Datenbankinstanzen.
  • VPC-Endpunkte für S3: Verwenden Sie VPC-Gateway-Endpunkte, um privaten Subnetzen direkten Zugriff auf Amazon S3 zu gewähren, ohne Datenverkehr über das Internet zu senden.

Stellen Sie die folgenden Komponenten in öffentlichen Subnetzen mit Internetzugang bereit:

  • Application Load Balancers (ALB): Internetorientierte Load Balancer für HTTPS-Datenverkehr mit der SystemLink Webanwendung und API
  • Netzwerk-Loadbalancer (NLB): TCP-Loadbalancer für Salt-Master-Verkehr (Port 4505 und 4506)
  • NAT Gateways: Aktivieren Sie den ausgehenden Internetzugang für Ressourcen in privaten Subnetzen.

CIDR-Blockplanung

Planen Sie Ihre VPC-CIDR-Blöcke, um ausreichende IP-Adressen für SystemLink Enterprise und zukünftiges Wachstum sicherzustellen.

  • Empfohlene VPC-Größe: /16 CIDR-Block (65.536 IP-Adressen) bietet Flexibilität bei der Skalierung
  • Minimale VPC-Größe: /20 CIDR-Block (4.096 IP-Adressen) für kleinere bis mittlere Bereitstellungen

Zuweisen von Subnetzen basierend auf folgenden Überlegungen:

  • Private Subnetze für EKS-Knoten: Größe basierend auf der maximal erwarteten Knotenanzahl. Jeder EKS-Knoten benötigt eine IP-Adresse vom Subnetz-CIDR.
  • Private Subnetze für Pods: Wenn Sie benutzerdefinierte Netzwerke oder den benutzerdefinierten VPC-CNI-Modus verwenden, weisen Sie zusätzliche Subnetze für Pod-IP-Adressen zu. Jeder Pod benötigt seine eigene IP-Adresse.
    • Beginnen Sie mit der Standard-VPC-CNI-Konfiguration, bei der Pods Knoten-Subnetze gemeinsam nutzen, es sei denn, Sie haben spezifische Anforderungen an die Netzwerkisolierung auf Pod-Ebene.
    • Beobachten Sie die IP-Nutzung sorgfältig. Jeder Knoten kann je nach EC2-Instanztyp 10-100+ IP-Adressen verwenden.
    • Plan für Wachstum. Stellen Sie sicher, dass die Subnetzgröße eine erhebliche Skalierung Ihrer Arbeitslast unterstützt.
  • Öffentliche Subnetze: Für Load Balancer und NAT-Gateways ist eine geringere Zuweisung wie /24 ausreichend.
  • Multi-AZ-Bereitstellung: Erstellen Sie Subnetzpaare (öffentlich/privat) in mindestens zwei Verfügbarkeitszonen für hohe Verfügbarkeit.
Tabelle 53. Beispiel: CIDR-Zuweisung (VPC unter Verwendung von 10.0.0.0/16)
Subnetztyp Verfügbarkeitsbereich CIDR-Block Verfügbare IPs
Privat (EKS-Knoten) us-east-1a 10.0.0.0/19 8.192
Privat (EKS-Knoten) us-east-1b 10.0.32.0/19 8.192
Privat (Datenbanken) us-east-1a 10.0.64.0/24 256
Privat (Datenbanken) us-east-1b 10.0.65.0/24 256
Öffentlich us-east-1a 10.0.128.0/24 256
Öffentlich us-east-1b 10.0.129.0/24 256
Hinweis AWS reserviert die ersten vier IP-Adressen und die letzte IP-Adresse in jedem Subnetz. Planen Sie bei der Berechnung verfügbarer Adressen entsprechend.

Best Practices für Sicherheit

Beachten Sie beim Konfigurieren Ihres VPCs für SystemLink Enterprise die folgenden Sicherheitsrichtlinien:

  • Kein direkter Internetzugang für die Berechnung und Speicherung: Alle EKS-Knoten, Datenbanken und internen Dienste müssen sich in privaten Subnetzen ohne Internet-Gateway-Verbindung befinden.
  • Datenflussisolierung: Der Internetverkehr fließt über das Internet, das öffentliche ALB/NLB, den privaten Kubernetes Ingress Controller (privates Subnetz) und dann die privaten SystemLink Dienste.
  • Ausgehendes Internet über NAT: Verwenden Sie NAT-Gateways in öffentlichen Subnetzen, um ausgehenden Internetzugang für private Subnetzressourcen bereitzustellen. Stellen Sie ein NAT Gateway pro Verfügbarkeitszone bereit für eine hohe Verfügbarkeit.
  • VPC-Endpunkte: Verwenden Sie VPC-Endpunkte für AWS-Dienste (S3), um Internetverbindungen zu vermeiden und Datenübertragungskosten zu reduzieren.
  • Sicherheitsgruppen: Konfigurieren Sie Sicherheitsgruppen, um nur den notwendigen Datenverkehr zwischen Komponenten zuzulassen. Verwenden Sie das Prinzip der kleinsten Berechtigungen.

Hinweise zur Verfügbarkeitszone

Übertragen von SystemLink Enterprise auf mehrere Verfügbarkeitszonen für hohe Verfügbarkeit und Fehlertoleranz:

  • Minimale Bereitstellung: Verwenden Sie mindestens zwei Verfügbarkeitszonen mit Subnetzpaaren in jeder Zone.
  • EKS-Knotengruppen: Verteilen Sie Worker-Knoten auf Verfügbarkeitszonen.
  • Database Multi-AZ: Aktivieren Sie Multi-AZ-Bereitstellungen für RDS PostgreSQL und DocumentDB.
  • Load-Balancer-Verteilung: Konfigurieren Sie ALB und NLB für die Verteilung des Datenverkehrs über Subnetze in mehreren Verfügbarkeitszonen.