Udostępnij przez


Używanie Premium Ingress w aplikacjach Azure Container Apps

Z tego artykułu dowiesz się, jak używać dostępu premium z usługą Azure Container Apps. Za pomocą usługi Premium Ingress można definiować, jak skalować i konfigurować ruch przychodzący, aby lepiej obsługiwać obciążenia o wyższym zapotrzebowaniu.

Wymagania wstępne

Utwórz grupę zasobów

  1. Zaloguj się do Azure.
az login
  1. Uaktualnij interfejs wiersza polecenia platformy Azure do najnowszej wersji.
az upgrade
  1. Zarejestruj wymaganych dostawców zasobów.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
  1. Utwórz grupę zasobów przy użyciu następującego polecenia:
az group create --name my-container-apps --location centralus

Tworzenie środowiska

Aby utworzyć środowisko aplikacji kontenera, uruchom następujące polecenie:

az containerapp env create \
  --name my-container-apps-env \
  --resource-group my-resource-group \
  --location centralus

Konfigurowanie profilu obciążenia

Dodaj profil obciążenia do środowiska (wymagany dla ruchu przychodzącego w warstwie Premium).

az containerapp env workload-profile add \
  --resource-group my-resource-group \
  --name my-container-apps-env \
  --workload-profile-name Ingress-D4 \
  --workload-profile-type D4 \

Profil obciążenia musi mieć co najmniej dwa węzły, aby korzystać z Premium Ingress.

Konfigurowanie ingresu Premium

Dodaj premiumowe ustawienia wejściowe do środowiska przy użyciu następującego polecenia:

az containerapp env premium-ingress add \
  --resource-group my-resource-group \
  --name my-container-apps-env \
  --workload-profile-name Ingress-D4 \
  --termination-grace-period 500 \
  --request-idle-timeout 4 \
  --header-count-limit 100

W poniższej tabeli opisano parametry, które można ustawić podczas konfigurowania ustawień wejściowych klasy Premium dla środowiska Container Apps.

Parameter Description Default Minimalna wartość Maximum
termination-grace-period Czas (w sekundach) na zamknięcie aktywnych połączeń przed zakończeniem ingresu. N/a 0 60
request-idle-limit Czas (w minutach), przez jaki żądanie może pozostać bezczynne przed odłączeniem. 4 4 30
header-count-limit Maksymalna dozwolona liczba nagłówków HTTP na żądanie. 100 1 N/a

Po skonfigurowaniu zobaczysz dane wyjściowe zastosowanych ustawień.

{
  "headerCountLimit": 100,
  "requestIdleTimeout": 4,
  "terminationGracePeriodSeconds": 500,
  "workloadProfileName": "Ingress-D4"
}

Aktualizowanie ruchu przychodzącego w warstwie Premium i zarządzanie nimi

Aby zaktualizować ustawienia Premium wejściowe środowiska, uruchom następujące polecenie:

az containerapp env premium-ingress update \
  --resource-group my-resource-group \
  --name my-container-apps-env \
  --workload-profile-name Ingress-D4 \
  --termination-grace-period 500 \
  --request-idle-timeout 4 \
  --header-count-limit 100

Aby wyświetlić ustawienia wprowadzające Premium dla środowiska, wykonaj następujące polecenie:

az containerapp env premium-ingress show \
  --resource-group my-resource-group \
  --name my-container-apps-env

Aby usunąć ustawienia premium dla ruchu przychodzącego dla środowiska, uruchom następujące polecenie:

az containerapp env premium-ingress remove \
  --resource-group my-resource-group \
  --name my-container-apps-env

Aby usunąć profil obciążenia ze środowiska, uruchom następujące polecenie:

az containerapp env workload-profile remove \
  --resource-group my-resource-group \
  --name my-container-apps-env \
  --workload-profile-name Ingress-D4

Wymagania wstępne

Wdrażanie przy użyciu Bicep

Utwórz następujący plik Bicep i zapisz go jako ingress.bicep.

resource containerAppsEnvironment 'Microsoft.App/managedEnvironments@2025-07-01' = {
  name: 'my-container-app-env'
  location: 'centralus'
  tags: tags
  properties: {
    workloadProfiles: [
      {
        name: 'Ingress-D4'
        workloadProfileType: 'D4'
        minimumCount: 2
        maximumCount: 4
      }
    ]
    ingressConfiguration: {
      workloadProfileName: 'Ingress-D4'
      terminationGracePeriodSeconds: 600
      headerCountLimit: 101
      requestIdleTimeout: 5
    }
  }
}              

Ten krok umożliwia wdrożenie środowiska Container Apps z konfiguracją dostępu Premium, obejmującą następujące ustawienia:

Name Description
name Nazwa profilu obciążenia używanego dla ruchu przychodzącego w warstwie Premium.
workloadProfileType Typ/rozmiar profilu obciążenia (na przykład D4) na potrzeby skalowania i alokacji zasobów.
minimumCount Minimalna liczba wystąpień profilu obciążenia. Minimum: 2.
maximumCount Maksymalna liczba wystąpień profilu obciążenia. Maksimum: 50.
workloadProfileName Nazwa profilu obciążenia skojarzona z konfiguracją ruchu przychodzącego.
terminationGracePeriodSeconds Czas (w sekundach) na zamknięcie aktywnych połączeń przed zakończeniem ingresu. Minimum: 0, Maksimum: 60.
headerCountLimit Maksymalna dozwolona liczba nagłówków HTTP na żądanie. Ustawienie domyślne: 100, Minimum: 1.
requestIdleTimeout Czas (w minutach), przez jaki żądanie może pozostać bezczynne przed odłączeniem. Ustawienie domyślne: 4, Minimum: 4, Maksimum: 30.

Wdrażanie na platformie Azure

Przejdź do katalogu, w którym zapisano plik ingress.bicep , a następnie uruchom następujące polecenie, aby wdrożyć plik Bicep:

# Login to Azure (if not already logged in)
azd auth login

# Provision and deploy the infrastructure
azd up

Zarządzanie wdrożeniem

Użyj następującego polecenia, aby wyświetlić stan i dzienniki aplikacji kontenera.

# Check deployment status
azd show

# Clean up all resources
azd down

# View deployment logs
azd logs

Po utworzeniu środowiska można skonfigurować konfigurację wejściową.

  1. Przejdź do środowiska usługi Container Apps w witrynie Azure Portal.

  2. W obszarze Ustawienia wybierz pozycję Sieć.

  3. Wybierz kartę Ustawienia Ingress.

  4. Skonfiguruj ustawienia wejściowe zgodnie z następującymi ustawieniami.

    Setting Wartość
    Tryb wejścia Wybierz pozycję Premium.
    Rozmiar profilu obciążenia Wybierz rozmiar z D4 do D32.
    Minimalna liczba wystąpień węzłów Wprowadź minimalną liczbę wystąpień węzła profilu obciążenia.
    Maksymalna liczba wystąpień węzłów Wprowadź maksymalne wystąpienia węzłów profilu obciążenia.
    Okres prolongaty zakończenia Wprowadź okres prolongaty zakończenia w minutach.
    Limit czasu oczekiwania na bezczynność żądania Wprowadź limit czasu bezczynności żądania w minutach.
    Liczba nagłówków żądania Wprowadź liczbę nagłówków żądania.
  5. Wybierz i zastosuj.

Monitorowanie i metryki

Metryki ruchu przychodzącego są dostępne za pośrednictwem witryny Azure Portal w wystąpieniu środowiska usługi Container Apps. W obszarze Monitorowanie wybierz pozycję Metryki. Te metryki są dostępne przy włączonej domyślnej lub premium opcji Ingress. Dodatkowe metryki są w toku.

  • Użycie procesora wejściowego
  • Bajty użycia pamięci przychodzącej

Testy porównawcze pokazują, że mechanizm Ingress może obsłużyć około 3000 żądań na sekundę na rdzeń CPU, ale ta wydajność różni się w zależności od użycia aplikacji. Pamięć zwykle staje się wąskim gardłem, gdy aplikacja odbiera żądania szybciej, niż środowisko może je obsłużyć, a żądania są kolejkowane w warstwie wejściowej.

Zasoby przydzielone do wejścia w każdym trybie to:

Mode Przypadki CPU Memory Próg skalowania procesora Próg skalowania pamięci
Wartość domyślna 2-10 1 rdzeń 2 GB 75% 50%
Premium Jeden na węzeł (minimum 2) 90% rdzeni węzłów 90% pamięci węzła 50% rdzeni węzłów 50% pamięci węzła

Uprzątnij zasoby

Jeśli nie zamierzasz nadal korzystać z tej aplikacji, uruchom następujące polecenie, aby usunąć grupę zasobów wraz ze wszystkimi zasobami utworzonymi w tym przewodniku szybkiego startu.

Ostrzeżenie

Następujące polecenie usuwa określoną grupę zasobów i wszystkie zawarte w niej zasoby. Jeśli zasoby niezwiązane z zakresem tego przewodnika szybkiego startu istnieją w określonej grupie zasobów, zostaną również usunięte.

az group delete --name my-container-apps