Netzwerk für die Azure Container Apps – Landing Zone Accelerator

Von Bedeutung

Hinweis zur Einstellung: Dieser Artikel ist veraltet und wird nicht mehr aktualisiert. Um sicherzustellen, dass nur die besten Anleitungen angezeigt werden, wird dieser Artikel im Mai 2026 gelöscht.

Alternative Anleitungen finden Sie unter Azure Container Apps Architekturleitfaden im Azure Architecture Center.

Wenn Sie diese Anleitung speichern möchten, können Sie Download a PDF unten links auf dieser Seite auswählen oder die Dateien aus GitHub herunterladen.

Container Apps sind verantwortlich für die Verwaltung von Betriebssystemupdates, die Skalierung, Failoverprozesse und Ressourcenzuweisungen in einer Container-Apps-Umgebung. Umgebungen kapseln eine oder mehrere Container-Apps oder Aufträge, indem sie eine sichere Grenze über ein virtuelles Netzwerk (VNet) erstellen.

Standardmäßig wird automatisch ein VNet für Ihre Container-App-Umgebung erstellt. Wenn Sie jedoch eine detailliertere Kontrolle über Ihr Netzwerk wünschen, können Sie ein bereits vorhandenes VNet verwenden, während Sie Ihre Container-App-Umgebung erstellen.

Umgebungen können externe Anforderungen annehmen oder nur für interne Anforderungen gesperrt werden.

Externe Umgebungen machen Container-Apps mithilfe einer virtuellen IP-Adresse verfügbar, auf die über das öffentliche Internet zugegriffen werden kann. Alternativ können interne Umgebungen ihre Container-Apps in einer IP-Adresse in Ihrem virtuellen Netzwerk verfügbar machen. Sie können den Datenverkehr entweder innerhalb der Container-App-Umgebung oder über das virtuelle Netzwerk einschränken. Weitere Informationen finden Sie unter Security-Überlegungen für den Azure Container Apps Landing Zone Accelerator.

Überlegungen

  • Subnetzanforderungen:

    • Für eine Umgebung im virtuellen Netzwerk ist ein dediziertes Subnetz erforderlich. Der CIDR des Subnetzes sollte für Verbrauchsumgebungen /23 oder größer sein, und für Lastprofilumgebungen /27 oder größer sein.
  • IP-Adressverwaltung:

    • Eine Basis von 60 IPs ist in Ihrem VNet reserviert. Dieser Betrag kann sich erhöhen, wenn ihre Containerumgebung skaliert wird, da jede App-Revision eine IP-Adresse aus dem Subnetz erhält. Ausgehende IPs können sich im Laufe der Zeit ändern.

    • Es werden nur IPv4-Adressen unterstützt (IPv6 wird nicht unterstützt).

    • Eine verwaltete öffentliche IP-Ressource verarbeitet ausgehende Anforderungen und Verwaltungsdatenverkehr, unabhängig davon, ob Sie über eine externe oder interne Umgebung verfügen.

  • Netzwerksicherheit:

    • Sie können ein Netzwerk über Netzwerksicherheitsgruppen (Network Security Groups, NSG) mit restriktiveren Regeln sperren als die Standardmäßigen NSG-Regeln, die den gesamten eingehenden und ausgehenden Datenverkehr für eine Umgebung steuern.
  • Proxy und Verschlüsselung:

    • Container-Apps verwenden einen Envoy-Proxy als Edge-HTTP-Proxy. Alle HTTP-Anforderungen werden automatisch an HTTPS umgeleitet. Envoy beendet die Transportschichtsicherheit (TLS) nach dem Überschreiten seiner Grenze. Die Sicherheit der gegenseitigen Transportschicht (Mutual Transport Layer Security, mTLS) ist nur bei Verwendung von Dapr verfügbar. Da Envoy jedoch mTLS beendet, werden eingehende Anrufe von Envoy zu Dapr-fähigen Container-Apps nicht verschlüsselt.
  • DNS-Überlegungen:

    • Bei der Bereitstellung einer Umgebung führt Container-Apps viele DNS-Abfragen durch. Einige dieser Abfragen beziehen sich auf interne Azure-Domains. Wenn Sie den DNS-Datenverkehr über Ihre benutzerdefinierte DNS-Lösung erzwingen, konfigurieren Sie Ihren DNS-Server so, dass nicht aufgelöste DNS-Abfragen an Azure DNS weitergeleitet werden.

    • Für Anwendungen, die intern auf Container-Apps ausgeführt werden, verwendet das System Azure Privates DNS-Zonen, um den DNS-Namen in die interne IP-Adresse aufzulösen. Innerhalb der Privates DNS Zone können Sie einen Wildcard-Datensatz (*) A auf die IP-Adresse des internen Lastenausgleichers verweisen.

  • Verwaltung ausgehender Datenverkehr:

    • Ausgehender Netzwerkdatenverkehr (Ausgang) sollte über einen Azure Firewall- oder Netzwerkcluster für virtuelle Appliance weitergeleitet werden.
  • Lastenausgleich über Umgebungen hinweg:

    • Wenn Sie Ihre Anwendung aus Resilienz- oder Näherungsgründen auf mehreren Container-Apps-Umgebungen ausführen möchten, sollten Sie einen globalen Lastenausgleichsdienst wie Azure Traffic Manager oder Azure Front Door verwenden.
  • Netzwerksicherheit:

    • Verwenden Sie Netzwerksicherheitsgruppen (Network Security Groups, NSG), um Ihr Netzwerk zu schützen und unnötigen eingehenden und ausgehenden Datenverkehr zu blockieren.

    • Verwenden Sie Azure DDoS-Schutz für die Azure Container Apps-Umgebung.

    • Verwenden Sie Private Link für sichere Netzwerkverbindungen und private IP-basierte Konnektivität mit anderen verwalteten Azure Diensten.

    • Stellen Sie sicher, dass alle Endpunkte für die Lösung (intern und extern) nur TLS-verschlüsselte Verbindungen (HTTPS) akzeptieren.

    • Verwenden Sie eine Webanwendungsfirewall mit dem HTTPS/TCP-Ingress für internetbezogene und sicherheitskritische, intern zugängliche Webanwendungen.

    • In einigen Szenarien sollten Sie eine Container-Apps-Webanwendung direkt im Internet verfügbar machen und mit CDN/WAF-Diensten von Drittanbietern schützen.

Recommendations

  • Netzwerkkonfiguration: Stellen Sie Ihre Container-Apps in einem benutzerdefinierten virtuellen Netzwerk bereit, um mehr Kontrolle über die Netzwerkkonfiguration zu erhalten.

  • Secure inbound connectivity: Verwenden Sie beim Veröffentlichen von internetorientierten Diensten Azure Application Gateway (WAF_v2 SKU) oder Azure Front Door (mit Web Application Firewall), um eingehende Verbindungen zu sichern.

  • Interne Datenverkehrsverwaltung: Verwenden Sie eine interne Netzwerkkonfiguration für Dienste wie Azure Application Gateway oder Azure Front Door, um sicherzustellen, dass der Datenverkehr vom Load Balancer zur Azure Container Apps-Umgebung eine interne Verbindung nutzt.

  • Verfügbarmachen von Anwendungen: Aktivieren Sie den Eingang, um Ihre Anwendung über HTTPS oder TCP-Port verfügbar zu machen.

References