Sieć w środowisku Azure Container Apps

Azure Container Apps działa w ramach środowiska, które korzysta z własnej sieci wirtualnej. Podczas tworzenia środowiska kilka kluczowych zagadnień informuje o możliwościach sieciowych aplikacji kontenera: typ środowiska, typ sieci wirtualnej i poziom ułatwień dostępu.

Wybór środowiska

Usługa Container Apps ma dwa typy środowisk. Mają one wiele tych samych cech sieciowych, z pewnymi kluczowymi różnicami.

Typ środowiska Obsługiwane typy planów Opis
Profile obciążeń (ustawienie domyślne) Konsumpcja, Dedykowany Obsługuje trasy zdefiniowane przez użytkownika (UDR), ruch wychodzący przez Azure NAT Gateway i tworzenie prywatnych punktów końcowych w środowisku aplikacji kontenera. Minimalny wymagany rozmiar podsieci to /27.
Tylko zużycie (starsza wersja) Zużycie Nie obsługuje tras UDR, ruchu wychodzącego za pośrednictwem usługi Azure NAT Gateway, komunikacji równorzędnej przez bramę zdalną ani innego niestandardowego ruchu wychodzącego. Minimalny wymagany rozmiar podsieci to /23.

Aby uzyskać więcej informacji, zobacz Typy środowiska.

Typ sieci wirtualnej

Domyślnie usługa Container Apps jest zintegrowana z siecią Azure, która jest publicznie dostępna za pośrednictwem Internetu i może komunikować się tylko z punktami końcowymi dostępnymi z Internetu. Możesz również podać istniejącą sieć wirtualną podczas tworzenia środowiska. Po utworzeniu środowiska z domyślną siecią Azure lub istniejącą siecią wirtualną nie można zmienić typu sieci.

Użyj istniejącej sieci wirtualnej, jeśli potrzebujesz Azure funkcji sieciowych, takich jak:

  • Sieciowe grupy zabezpieczeń.
  • Integracja z Azure Application Gateway
  • Integracja z usługą Azure Firewall.
  • Kontrolowanie ruchu wychodzącego z aplikacji kontenera.
  • Dostęp do zasobów za prywatnymi punktami końcowymi w sieci wirtualnej.

Jeśli używasz istniejącej sieci wirtualnej, musisz podać podsieć przeznaczoną wyłącznie dla wdrażanego środowiska usługi Container Apps. Ta podsieć nie jest dostępna dla innych usług. Aby uzyskać więcej informacji, zobacz Konfiguracja sieci wirtualnej.

Poziom ułatwień dostępu

Możesz skonfigurować na poziomie środowiska, czy aplikacja kontenerowa zezwala na publiczny ruch przychodzący, czy tylko na ruch przychodzący z wnętrza sieci wirtualnej.

Poziom ułatwień dostępu Opis
Zewnętrzne Aplikacja kontenera może akceptować żądania publiczne. Środowiska zewnętrzne są wdrażane przy użyciu wirtualnego adresu IP na zewnętrznym, publicznym adresie IP.
Wewnętrzny Środowiska wewnętrzne nie mają publicznych punktów końcowych i są wdrażane przy użyciu wirtualnego adresu IP przypisanego do wewnętrznego adresu IP. Wewnętrzny punkt końcowy jest wewnętrznym modułem równoważenia obciążenia platformy Azure. Adresy IP są wystawiane z listy prywatnych adresów IP istniejącej sieci wirtualnej.

Dostęp do sieci publicznej

Ustawienie dostępu do sieci publicznej określa, czy środowisko usługi Container Apps jest dostępne z publicznego Internetu. Czy to ustawienie można zmienić po utworzeniu środowiska, zależy od konfiguracji wirtualnego adresu IP środowiska. W poniższej tabeli przedstawiono prawidłowe wartości dostępu do sieci publicznej w zależności od konfiguracji wirtualnego adresu IP środowiska.

Wirtualny adres IP Obsługiwany dostęp do sieci publicznej Opis
Zewnętrzne Enabled, Disabled Środowisko Container Apps zostało utworzone za pomocą punktu końcowego dostępnego z Internetu. Ustawienie dostępu do sieci publicznej określa, czy ruch jest akceptowany za pośrednictwem publicznego punktu końcowego, czy tylko za pośrednictwem prywatnych punktów końcowych. To ustawienie można zmienić po utworzeniu środowiska.
Wewnętrzny Disabled Środowisko Container Apps zostało utworzone bez punktu końcowego dostępnego z Internetu. Nie można zmienić ustawienia dostępu do sieci publicznej w celu akceptowania ruchu z Internetu.

Aby utworzyć prywatne punkty końcowe w środowisku usługi Container Apps, należy ustawić dostęp do sieci publicznej na wartość Disabled.

Zasady sieciowe platformy Azure są obsługiwane przy użyciu flagi dostępu do sieci publicznej.

Konfiguracja ingressu

W sekcji ingress można skonfigurować następujące ustawienia:

  • Włącz lub wyłącz ruch przychodzący dla aplikacji kontenerowej.

  • Zezwalaj na ruch do aplikacji kontenerowej z dowolnego miejsca lub tylko w obrębie tego samego środowiska Container Apps.

  • Zdefiniuj reguły dzielenia ruchu między poprawkami aplikacji. Aby uzyskać więcej informacji, zobacz Podział ruchu.

Aby uzyskać więcej informacji na temat scenariuszy sieciowych, zobacz Ingress w Azure Container Apps.

Funkcje ruchu przychodzącego

Funkcja Dowiedz się, jak
Wejście

Konfiguracja wejścia
Kontroluj routing ruchu zewnętrznego i wewnętrznego do aplikacji kontenerowej.
Premium Wejście Skonfiguruj zaawansowane ustawienia ruchu przychodzącego, takie jak obsługa profilu obciążenia dla ruchu przychodzącego i limitu czasu bezczynności.
Ograniczenia adresów IP Ogranicz ruch przychodzący do aplikacji kontenera według adresu IP.
Uwierzytelnianie certyfikatu klienta Skonfiguruj uwierzytelnianie certyfikatu klienta (nazywane również wzajemnym protokołem TLS lub mTLS) dla aplikacji kontenera.
Dzielenie ruchu

Metoda wdrożenia Blue/Green
Podziel ruch przychodzący między aktualne wersje aplikacji kontenerowej.
Trwałość sesji Przekieruj wszystkie żądania klienta do tej samej repliki aplikacji kontenerowej.
Współdzielenie zasobów między źródłami (CORS) Włącz mechanizm CORS dla aplikacji kontenera, która zezwala na żądania wysyłane za pośrednictwem przeglądarki do domeny, która nie jest zgodna ze źródłem strony.
Routing oparty na ścieżkach Reguły umożliwiają kierowanie żądań do różnych aplikacji kontenera w danym środowisku w zależności od ścieżki każdego żądania.
Sieci wirtualne Skonfiguruj sieć wirtualną dla środowiska usługi Container Apps.
DNS Skonfiguruj usługę DNS dla sieci wirtualnej środowiska usługi Container Apps.
Prywatny punkt końcowy Użyj prywatnego punktu końcowego, aby bezpiecznie uzyskać dostęp do aplikacji kontenera bez uwidaczniania jej w publicznym Internecie.
Integracja z usługą Azure Front Door Połącz się bezpośrednio z Azure Front Door z aplikacją kontenera przy użyciu linku prywatnego zamiast publicznego Internetu.

Funkcjonalności wychodzące

Funkcja Dowiedz się, jak
Korzystanie z usługi Azure Firewall Użyj usługi Azure Firewall, aby kontrolować ruch wychodzący z aplikacji kontenera.
Sieci wirtualne Skonfiguruj sieć wirtualną dla środowiska usługi Container Apps.
Zabezpieczanie istniejącej sieci wirtualnej przy użyciu sieciowej grupy zabezpieczeń Pomóż zabezpieczyć sieć wirtualną środowiska usługi Container Apps przy użyciu grupy zabezpieczeń sieciowych.
Integracja z bramą NAT platformy Azure Użyj Azure NAT Gateway, aby uprościć wychodzącą łączność internetową w sieci wirtualnej w środowisku profilu obciążenia.

Artykuły instruktażowe

Artykuł Dowiedz się, jak
Udostępnianie sieci wirtualnej w środowisku usługi Azure Container Apps Użyj sieci wirtualnej.
Chroń usługę Azure Container Apps za pomocą zapory Web Application Firewall w usłudze Application Gateway Skonfiguruj Azure Web Application Firewall w Azure Application Gateway.
Kontroluj ruch wychodzący w Azure Container Apps przy użyciu tras zdefiniowanych przez użytkownika Włącz trasy zdefiniowane przez użytkownika.
Use mTLS in Azure Container Apps Tworzenie aplikacji mTLS w usłudze Container Apps.
Użyj prywatny punkt końcowy ze środowiskiem Azure Container Apps Użyj prywatnego punktu końcowego, aby bezpiecznie uzyskać dostęp do aplikacji kontenera bez uwidaczniania jej w publicznym Internecie.
Tworzenie łącza prywatnego do aplikacji kontenera za pomocą Azure Front Door Połącz się bezpośrednio z Azure Front Door z aplikacją kontenera przy użyciu linku prywatnego zamiast publicznego Internetu.

Zabezpieczenia środowiska

Diagram przedstawiający sposób zabezpieczania sieci dla usługi Container Apps.

Możesz pomóc zabezpieczyć środowisko profilu obciążenia roboczego w zakresie przychodzącego i wychodzącego ruchu sieciowego, wykonując następujące działania:

Zachowanie serwera proxy usługi HTTP Edge

Azure Container Apps używa brzegowego serwera proxy HTTP, który przerywa protokół TLS i kieruje żądania do każdej aplikacji.

Aplikacje HTTP są skalowane na podstawie liczby żądań i połączeń HTTP. Envoy przekierowuje ruch wewnętrzny w obrębie klastrów.

Połączenia podrzędne obsługują połączenia HTTP/1.1 i HTTP/2. Usługa Envoy automatycznie wykrywa i uaktualnia połączenia, jeśli połączenie klienta wymaga uaktualnienia.

Połączenia upstream definiuje się przez ustawienie właściwości transport w obiekcie ingress.

Zależności portalu

Dla każdej aplikacji w usłudze Container Apps istnieją dwa adresy URL.

Środowisko uruchomieniowe usługi Container Apps początkowo generuje w pełni kwalifikowaną nazwę domeny (FQDN), która jest używana do uzyskiwania dostępu do aplikacji. Aby uzyskać w pełni kwalifikowaną nazwę domenową (FQDN) swojej aplikacji kontenerowej, przejdź do tej aplikacji w portalu Azure. W okienku Przegląd wartością FQDN jest Adres URL aplikacji.

Drugi adres URL jest również generowany dla Ciebie. Ta lokalizacja zapewnia dostęp do usługi strumieniowego przesyłania dzienników i konsoli. W razie potrzeby dodaj https://azurecontainerapps.dev/ do listy dozwolonych zapory lub serwera proxy.

Porty i adresy IP

Następujące porty są uwidocznione dla połączeń przychodzących:

Protokół Ports
HTTP/HTTPS 80, 443

Adresy IP mają następujące typy:

Typ Opis
Publiczny adres IP dla ruchu przychodzącego Służy do obsługi ruchu aplikacji we wdrożeniu zewnętrznym oraz do zarządzania ruchem we wdrożeniach wewnętrznych i zewnętrznych.
Wychodzący publiczny adres IP Używany jako adres IP "from" dla połączeń wychodzących, które opuszczają sieć wirtualną. Te połączenia nie są kierowane przez sieć VPN. Wychodzące adresy IP mogą ulec zmianie w czasie. Korzystanie z usługi Azure NAT Gateway lub innego serwera proxy na potrzeby ruchu wychodzącego ze środowiska Container Apps jest obsługiwane tylko w środowisku z profilem obciążenia.
Wewnętrzny adres IP modułu równoważenia obciążenia Istnieje tylko w środowisku wewnętrznym.