Szczegóły konfiguracji sieci dla środowiska App Service Environment for Power Apps za pomocą usługi Azure ExpressRoute

Ważne

Ten artykuł dotyczy środowiska App Service Environment w wersji 1. Środowisko App Service Environment w wersji 1 zostanie wycofane 31 sierpnia 2024 r. Jest dostępna nowa wersja środowiska App Service Environment, która jest łatwiejsza do użycia i działa w bardziej wydajnej infrastrukturze. Aby dowiedzieć się więcej o nowej wersji, zacznij od wprowadzenia do środowiska App Service Environment. Jeśli obecnie używasz środowiska App Service Environment w wersji 1, wykonaj kroki opisane w tym artykule , aby przeprowadzić migrację do nowej wersji.

Od 29 stycznia 2024 r. nie można już tworzyć nowych zasobów środowiska App Service Environment w wersji 1 przy użyciu dowolnej z dostępnych metod, w tym szablonów usługi ARM/Bicep, witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub interfejsu API REST. Aby zapobiec usunięciu zasobów i utracie danych, musisz przeprowadzić migrację do środowiska App Service Environment w wersji 3 przed 31 sierpnia 2024 r.

Klienci mogą połączyć obwód usługi Azure ExpressRoute z infrastrukturą sieci wirtualnej w celu rozszerzenia sieci lokalnej na platformę Azure. Środowisko App Service Environment jest tworzone w podsieci infrastruktury sieci wirtualnej. Aplikacje uruchamiane w środowisku App Service Environment ustanawiają bezpieczne połączenia z zasobami zaplecza, które są dostępne tylko za pośrednictwem połączenia usługi ExpressRoute.

Środowisko App Service Environment można utworzyć w następujących scenariuszach:

  • Sieci wirtualne usługi Azure Resource Manager.
  • Klasyczne sieci wirtualne modelu wdrażania.
  • Sieci wirtualne korzystające z zakresów adresów publicznych lub RFC1918 przestrzeni adresowych (czyli adresów prywatnych).

Uwaga

Mimo że ten artykuł dotyczy aplikacji internetowych, ma również zastosowanie do aplikacji interfejsu API i aplikacji mobilnych.

Wymagana łączność sieciowa

Środowisko App Service Environment ma wymagania dotyczące łączności sieciowej, które początkowo mogą nie zostać spełnione w sieci wirtualnej połączonej z usługą ExpressRoute.

Środowisko App Service Environment wymaga, aby następujące ustawienia łączności sieciowej działały prawidłowo:

  • Wychodząca łączność sieciowa z punktami końcowymi usługi Azure Storage na całym świecie na porcie 80 i 443. Te punkty końcowe znajdują się w tym samym regionie co środowisko App Service Environment, a także w innych regionach świadczenia usługi Azure. Punkty końcowe usługi Azure Storage są rozpoznawane w następujących domenach DNS: table.core.windows.net, blob.core.windows.net, queue.core.windows.net i file.core.windows.net.

  • Wychodząca łączność sieciowa z usługą Azure Files na porcie 445.

  • Wychodząca łączność sieciowa z punktami końcowymi usługi Azure SQL Database znajdującymi się w tym samym regionie co środowisko App Service Environment. Punkty końcowe usługi SQL Database są rozpoznawane w domenie database.windows.net, która wymaga otwartego dostępu do portów 1433, 11000-11999 i 14000-14999. Aby uzyskać szczegółowe informacje na temat użycia portów usługi SQL Database w wersji 12, zobacz Porty przekraczające 1433 dla ADO.NET 4.5.

  • Wychodząca łączność sieciowa z punktami końcowymi płaszczyzny zarządzania platformy Azure (zarówno klasycznym modelem wdrażania platformy Azure, jak i punktami końcowymi usługi Azure Resource Manager). Połączenie ivity do tych punktów końcowych obejmuje domeny management.core.windows.net i management.azure.com.

  • Wychodząca łączność sieciowa z domenami ocsp.msocsp.com, mscrl.microsoft.com i crl.microsoft.com. Połączenie wzgodność z tymi domenami jest wymagana do obsługi funkcji protokołu TLS.

  • Konfiguracja DNS dla sieci wirtualnej musi być w stanie rozpoznać wszystkie punkty końcowe i domeny wymienione w tym artykule. Jeśli nie można rozpoznać punktów końcowych, tworzenie środowiska App Service Environment zakończy się niepowodzeniem. Każde istniejące środowisko App Service Environment jest oznaczone jako w złej kondycji.

  • Dostęp wychodzący na porcie 53 jest wymagany do komunikacji z serwerami DNS.

  • Jeśli niestandardowy serwer DNS istnieje na drugim końcu bramy sieci VPN, serwer DNS musi być dostępny z podsieci zawierającej środowisko App Service Environment.

  • Ścieżka sieci wychodząca nie może podróżować za pośrednictwem wewnętrznych firmowych serwerów proxy i nie można wymusić tunelowania lokalnego. Te akcje zmieniają obowiązujący adres NAT wychodzącego ruchu sieciowego ze środowiska App Service Environment. Zmiany adresu NAT wychodzącego ruchu sieciowego środowiska App Service Environment powodują błędy łączności z wieloma punktami końcowymi. Tworzenie środowiska App Service Environment kończy się niepowodzeniem. Każde istniejące środowisko App Service Environment jest oznaczone jako w złej kondycji.

  • Dostęp sieciowy dla ruchu przychodzącego do wymaganych portów dla środowiska App Service Environment musi być dozwolony. Aby uzyskać szczegółowe informacje, zobacz Jak kontrolować ruch przychodzący do środowiska App Service Environment.

Aby spełnić wymagania dns, upewnij się, że skonfigurowano i zachowano prawidłową infrastrukturę DNS dla sieci wirtualnej. Jeśli konfiguracja DNS zostanie zmieniona po utworzeniu środowiska App Service Environment, deweloperzy mogą wymusić na środowisku App Service Environment wybranie nowej konfiguracji DNS. Ponowne uruchomienie środowiska operacyjnego można wyzwolić przy użyciu ikony Ponowne uruchamianie w obszarze Zarządzanie środowiskiem App Service Environment w witrynie Azure Portal. Ponowny rozruch powoduje, że środowisko pobiera nową konfigurację DNS.

Aby spełnić wymagania dotyczące dostępu do sieci przychodzącej, skonfiguruj sieciową grupę zabezpieczeń w podsieci środowiska App Service Environment. Sieciowa grupa zabezpieczeń umożliwia wymagany dostęp do kontrolowania ruchu przychodzącego do środowiska App Service Environment.

Wychodząca łączność sieciowa

Domyślnie nowo utworzony obwód usługi ExpressRoute anonsuje trasę domyślną, która zezwala na wychodzącą łączność internetową. Środowisko App Service Environment może używać tej konfiguracji do nawiązywania połączenia z innymi punktami końcowymi platformy Azure.

Typową konfiguracją klienta jest zdefiniowanie własnej trasy domyślnej (0.0.0.0/0), która wymusza wychodzący ruch internetowy do przepływu lokalnego. Ten przepływ ruchu niezmiennie przerywa działanie środowiska App Service Environment. Ruch wychodzący jest blokowany lokalnie lub translator adresów sieciowych do nierozpoznawalnego zestawu adresów, które nie działają już z różnymi punktami końcowymi platformy Azure.

Rozwiązaniem jest zdefiniowanie co najmniej jednej trasy zdefiniowanej przez użytkownika (UDR) w podsieci zawierającej środowisko App Service Environment. Trasa zdefiniowana przez użytkownika definiuje trasy specyficzne dla podsieci, które są honorowane zamiast trasy domyślnej.

Jeśli to możliwe, użyj następującej konfiguracji:

  • Konfiguracja usługi ExpressRoute anonsuje 0.0.0.0/0. Domyślnie konfiguracja wymusza tunelowanie całego ruchu wychodzącego lokalnie.
  • Trasa zdefiniowana przez użytkownika zastosowana do podsieci zawierającej środowisko App Service Environment definiuje wartość 0.0.0.0/0 z typem następnego przeskoku w Internecie. Przykład tej konfiguracji został opisany w dalszej części tego artykułu.

Połączony efekt tej konfiguracji polega na tym, że trasa zdefiniowana przez użytkownika na poziomie podsieci ma pierwszeństwo przed tunelowaniem wymuszonym usługi ExpressRoute. Gwarantowany jest wychodzący dostęp do Internetu ze środowiska App Service Environment.

Ważne

Trasy zdefiniowane w trasie zdefiniowanej przez użytkownika muszą być wystarczająco szczegółowe, aby mieć pierwszeństwo przed wszystkimi trasami anonsowanymi przez konfigurację usługi ExpressRoute. W przykładzie opisanym w następnej sekcji użyto szerokiego zakresu adresów 0.0.0.0/0. Ten zakres może zostać przypadkowo zastąpiony przez anonse tras, które używają bardziej szczegółowych zakresów adresów.

Środowisko App Service Environment nie jest obsługiwane w przypadku konfiguracji usługi ExpressRoute, które anonsują trasy krzyżowe ze ścieżki publicznej komunikacji równorzędnej do ścieżki prywatnej komunikacji równorzędnej. Konfiguracje usługi ExpressRoute, które mają skonfigurowaną publiczną komunikację równorzędną, odbierają anonse tras od firmy Microsoft dla dużego zestawu zakresów adresów IP platformy Microsoft Azure. Jeśli te zakresy adresów są anonsowane krzyżowo na prywatnej ścieżce komunikacji równorzędnej, wszystkie pakiety sieciowe wychodzące z podsieci środowiska App Service Environment są wymuszane tunelowaniem do lokalnej infrastruktury sieciowej klienta. Ten przepływ sieciowy nie jest obecnie obsługiwany w środowisku App Service Environment. Jednym z rozwiązań jest zatrzymanie tras między reklamami ze ścieżki publicznej komunikacji równorzędnej do prywatnej ścieżki komunikacji równorzędnej.

Aby uzyskać podstawowe informacje na temat tras zdefiniowanych przez użytkownika, zobacz Routing ruchu w sieci wirtualnej.

Aby dowiedzieć się, jak tworzyć i konfigurować trasy zdefiniowane przez użytkownika, zobacz Kierowanie ruchu sieciowego za pomocą tabeli tras przy użyciu programu PowerShell.

Konfiguracja trasy zdefiniowanej przez użytkownika

W tej sekcji przedstawiono przykładową konfigurację trasy zdefiniowanej przez użytkownika dla środowiska App Service Environment.

Wymagania wstępne

  • Zainstaluj program Azure PowerShell ze strony Plików do pobrania platformy Azure. Wybierz pobieranie z datą czerwca 2015 r. lub nowszą. W obszarze Narzędzia>wiersza polecenia programu Windows PowerShell wybierz pozycję Zainstaluj, aby zainstalować najnowsze polecenia cmdlet programu PowerShell.

  • Utwórz unikatową podsieć do wyłącznego użytku przez środowisko App Service Environment. Unikatowa podsieć gwarantuje, że trasy zdefiniowane przez użytkownika zastosowane do podsieci otwierają ruch wychodzący tylko dla środowiska App Service Environment.

Ważne

Po wykonaniu kroków konfiguracji należy wdrożyć tylko środowisko App Service Environment. Kroki zapewniają dostępność wychodzącej łączności sieciowej przed podjęciem próby wdrożenia środowiska App Service Environment.

Krok 1. Tworzenie tabeli tras

Utwórz tabelę tras o nazwie DirectInternetRouteTable w regionie świadczenia usługi Azure Zachodnie stany USA, jak pokazano w tym fragmencie kodu:

New-AzureRouteTable -Name 'DirectInternetRouteTable' -Location uswest

Krok 2. Tworzenie tras w tabeli

Dodaj trasy do tabeli tras, aby włączyć wychodzący dostęp do Internetu.

Skonfiguruj dostęp wychodzący do Internetu. Zdefiniuj trasę dla wersji 0.0.0.0/0, jak pokazano w tym fragmencie kodu:

Get-AzureRouteTable -Name 'DirectInternetRouteTable' | Set-AzureRoute -RouteName 'Direct Internet Range 0' -AddressPrefix 0.0.0.0/0 -NextHopType Internet

0.0.0.0/0 jest szerokim zakresem adresów. Zakres jest zastępowany przez zakresy adresów anonsowane przez usługę ExpressRoute, które są bardziej szczegółowe. Trasa zdefiniowana przez użytkownika z trasą 0.0.0.0/0 powinna być używana w połączeniu z konfiguracją usługi ExpressRoute, która anonsuje tylko 0.0.0.0/0.

Alternatywnie pobierz bieżącą, kompleksową listę zakresów CIDR używanych przez platformę Azure. Plik XML dla wszystkich zakresów adresów IP platformy Azure jest dostępny w Centrum pobierania Microsoft.

Uwaga

Zakresy adresów IP platformy Azure zmieniają się w czasie. Trasy zdefiniowane przez użytkownika wymagają okresowych aktualizacji ręcznych, aby zachować synchronizację.

Jedna trasa zdefiniowana przez użytkownika ma domyślny górny limit 100 tras. Musisz "podsumować" zakresy adresów IP platformy Azure, aby mieściły się w limicie 100 tras. Trasy zdefiniowane przez trasę zdefiniowaną przez użytkownika muszą być bardziej szczegółowe niż trasy anonsowane przez połączenie usługi ExpressRoute.

Krok 3. Kojarzenie tabeli z podsiecią

Skojarz tabelę tras z podsiecią, w której zamierzasz wdrożyć środowisko App Service Environment. To polecenie kojarzy tabelę DirectInternetRouteTable z podsiecią ASESubnet , która będzie zawierać środowisko App Service Environment.

Set-AzureSubnetRouteTable -VirtualNetworkName 'YourVirtualNetworkNameHere' -SubnetName 'ASESubnet' -RouteTableName 'DirectInternetRouteTable'

Krok 4. Testowanie i potwierdzanie trasy

Po powiązaniu tabeli tras z podsiecią przetestuj i potwierdź trasę.

Wdróż maszynę wirtualną w podsieci i potwierdź następujące warunki:

  • Ruch wychodzący do punktów końcowych platformy Azure i innych niż azure opisanych w tym artykule nie przepływa obwodu usługi ExpressRoute. Jeśli ruch wychodzący z podsieci zostanie wymuszony w środowisku lokalnym, tworzenie środowiska App Service Environment zawsze kończy się niepowodzeniem.
  • Wyszukiwania DNS dla punktów końcowych opisanych w tym artykule wszystkie prawidłowo rozpoznają.

Po wykonaniu kroków konfiguracji i potwierdzeniu trasy usuń maszynę wirtualną. Po utworzeniu środowiska App Service Environment podsieć musi być "pusta".

Teraz możesz przystąpić do wdrażania środowiska App Service Environment!

Następne kroki

Aby rozpocząć pracę ze środowiskiem App Service Environment for Power Apps, zobacz Wprowadzenie do środowiska App Service Environment.