Udostępnij przez


Microsoft.App managedEnvironments 2025-01-01

Definicja zasobu Bicep

Typ zasobu managedEnvironments można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.App/managedEnvironments, dodaj następujący kod Bicep do szablonu.

resource symbolicname 'Microsoft.App/managedEnvironments@2025-01-01' = {
  scope: resourceSymbolicName or scope
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  kind: 'string'
  location: 'string'
  name: 'string'
  properties: {
    appLogsConfiguration: {
      destination: 'string'
      logAnalyticsConfiguration: {
        customerId: 'string'
        sharedKey: 'string'
      }
    }
    customDomainConfiguration: {
      certificateKeyVaultProperties: {
        identity: 'string'
        keyVaultUrl: 'string'
      }
      certificatePassword: 'string'
      certificateValue: any(...)
      dnsSuffix: 'string'
    }
    daprAIConnectionString: 'string'
    daprAIInstrumentationKey: 'string'
    daprConfiguration: {}
    infrastructureResourceGroup: 'string'
    kedaConfiguration: {}
    peerAuthentication: {
      mtls: {
        enabled: bool
      }
    }
    peerTrafficConfiguration: {
      encryption: {
        enabled: bool
      }
    }
    vnetConfiguration: {
      dockerBridgeCidr: 'string'
      infrastructureSubnetId: 'string'
      internal: bool
      platformReservedCidr: 'string'
      platformReservedDnsIP: 'string'
    }
    workloadProfiles: [
      {
        maximumCount: int
        minimumCount: int
        name: 'string'
        workloadProfileType: 'string'
      }
    ]
    zoneRedundant: bool
  }
  tags: {
    {customized property}: 'string'
  }
}

Wartości właściwości

Microsoft.App/zarządzaneŚrodowiska

Nazwa Opis Wartość
tożsamość Tożsamości zarządzane dla środowiska zarządzanego umożliwiające interakcję z innymi usługami platformy Azure bez obsługi wpisów tajnych ani poświadczeń w kodzie. ManagedServiceIdentity (tożsamość usługi)
rodzaj Rodzaj środowiska. ciąg
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu ciąg (wymagany)
właściwości Właściwości specyficzne dla zasobu środowiska zarządzanego ManagedEnvironmentProperties
zakres Użyj polecenia podczas tworzenia zasobu w zakresie innym niż zakres wdrożenia. Ustaw tę właściwość na symboliczną nazwę zasobu, aby zastosować zasób rozszerzenia.
Etykiety Tagi zasobów Słownik nazw tagów i wartości. Zobacz tagi w szablonach

AppLogsConfiguration

Nazwa Opis Wartość
docelowy Miejsce docelowe dzienników może być "log-analytics", "azure-monitor" lub "none" ciąg
logAnalyticsConfiguration (konfiguracja logAnalytics) Konfiguracja usługi Log Analytics musi być podana tylko wtedy, gdy lokalizacja docelowa jest skonfigurowana jako "log-analytics" Konfiguracja usługi LogAnalyticsLog Configuration

CertificateKeyVaultProperties

Nazwa Opis Wartość
tożsamość Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania w usłudze Azure Key Vault lub system do używania tożsamości przypisanej przez system. ciąg
keyVaultUrl (adres URL klucza) Adres URL wskazujący wpis tajny usługi Azure Key Vault, który przechowuje certyfikat. ciąg

CustomDomainConfiguration (konfiguracja domeny)

Nazwa Opis Wartość
certificateKeyVaultProperties (właściwości certyfikatu) Certyfikat przechowywany w usłudze Azure Key Vault. CertificateKeyVaultProperties
hasło certyfikatu Hasło certyfikatu struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
certificateValue (wartość certyfikatu) Obiekt blob PFX lub PEM jakikolwiek
dnsSufiks Sufiks DNS dla domeny środowiska ciąg

Konfiguracja języka Dapr

Nazwa Opis Wartość

Konfiguracja Keda

Nazwa Opis Wartość

Konfiguracja usługi LogAnalyticsLog Configuration

Nazwa Opis Wartość
customerId (identyfikator klienta) Identyfikator klienta usługi Log Analytics ciąg
klucz współdzielony Klucz klienta usługi Log Analytics struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.

ManagedEnvironmentProperties

Nazwa Opis Wartość
appLogsConfiguration Konfiguracja klastra umożliwiająca demonowi dziennika eksportowanie dzienników dzienników do skonfigurowanego miejsca docelowego. AppLogsConfiguration
customDomainConfiguration (konfiguracja domeny) Konfiguracja domeny niestandardowej dla środowiska CustomDomainConfiguration (konfiguracja domeny)
daprAIConnectionString Parametry połączenia usługi Application Insights używane przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprAIInstrumentationKey Klucz instrumentacji usługi Azure Monitor używany przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprConfiguration (konfiguracja języka dapr) Konfiguracja składnika Dapr. DaprConfiguration
infrastructureResourceGroup (grupa zasobów) Nazwa zarządzanej przez platformę grupy zasobów utworzonej dla środowiska zarządzanego do hostowania zasobów infrastruktury. Jeśli zostanie podany identyfikator podsieci, ta grupa zasobów zostanie utworzona w tej samej subskrypcji co podsieć. ciąg
kedaConfiguration (konfiguracja keda) Konfiguracja składnika Keda. Konfiguracja Keda
peerAuthentication (równouprawnienie) Ustawienia uwierzytelniania równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerAuthentication
peerTrafficConfiguration (konfiguracja ruchu równorzędnego) Ustawienia ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfiguration
Konfiguracja sieci wirtualnej Konfiguracja sieci wirtualnej dla środowiska VnetConfiguration
Profile obciążenia Profile obciążeń skonfigurowane dla środowiska zarządzanego. Profil obciążenia[]
zoneNadmiarowy Bez względu na to, czy to środowisko zarządzane jest strefowo nadmiarowe. Bool

ManagedEnvironmentPropertiesPeerAuthentication

Nazwa Opis Wartość
Stawki MTL Wzajemne ustawienia uwierzytelniania TLS dla środowiska zarządzanego Mtls

ManagedEnvironmentPropertiesPeerTrafficConfiguration

Nazwa Opis Wartość
szyfrowanie Ustawienia szyfrowania ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy szyfrowanie ruchu równorzędnego jest włączone Bool

ManagedServiceIdentity (tożsamość usługi)

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
tożsamości przypisane użytkownikom Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. UserAssignedIdentities

Metry MTL

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy wzajemne uwierzytelnianie TLS jest włączone Bool

Śledzone tagi zasobów

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

Tożsamość przypisana przez użytkownika

Nazwa Opis Wartość

Konfiguracja sieci VnetConfiguration

Nazwa Opis Wartość
dockerBridgeCidr Zakres adresów IP notacji CIDR przypisany do mostka platformy Docker, sieci. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
infrastructureSubnetId (identyfikator infrastruktury) Identyfikator zasobu podsieci dla składników infrastruktury. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
wewnętrzny Wartość logiczna wskazująca, że środowisko ma tylko wewnętrzny moduł równoważenia obciążenia. Te środowiska nie mają publicznego zasobu statycznego adresu IP. W przypadku włączenia tej właściwości muszą podać identyfikator infrastructureSubnetId Bool
platformyReservedCidr Zakres adresów IP w notacji CIDR, który może być zarezerwowany dla adresów IP infrastruktury środowiska. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
platformaReservedDnsIP Adres IP z zakresu adresów IP zdefiniowany przez platformęReservedCidr, który będzie zarezerwowany dla wewnętrznego serwera DNS. ciąg

Profil obciążenia

Nazwa Opis Wartość
maximumCount (maksymalna liczba) Maksymalna pojemność. Int
minimumCount (minimalLiczba) Minimalna pojemność. Int
nazwa Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)
workloadProfileType (typ profilu) Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)

Przykłady użycia

Moduły zweryfikowane na platformie Azure

Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.

Moduł Opis
Środowisko zarządzane aplikacji Moduł zasobów AVM dla środowiska zarządzanego aplikacji

Przykłady szybkiego startu platformy Azure

Poniższe szablony szybkiego startu platformy Azure zawierają przykłady Bicep na potrzeby wdrażania tego typu zasobu.

Plik Bicep Opis
tworzy aplikację kontenera i środowisko z rejestru Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera z usługi Azure Container Registry. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
Tworzy aplikację kontenera z zdefiniowaną regułą skalowania HTTP Utwórz środowisko aplikacji kontenera z podstawową aplikacją kontenera, która skaluje się na podstawie ruchu HTTP.
tworzy aplikację kontenera w środowisku aplikacji kontenera Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
Tworzy aplikację mikrousług dapr przy użyciu usługi Container Apps Tworzenie aplikacji mikrousług dapr przy użyciu usługi Container Apps.
Tworzy aplikację dapr pub-sub servicebus przy użyciu usługi Container Apps Utwórz aplikację Dapr pub-sub servicebus przy użyciu usługi Container Apps.
Tworzy dwie aplikacje kontenera za pomocą środowiska aplikacji kontenera Utwórz dwa środowisko aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
tworzy zewnętrzne środowisko aplikacji kontenera z sieci wirtualnej Tworzy zewnętrzne środowisko aplikacji kontenera z siecią wirtualną.
tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną.

Definicja zasobu szablonu usługi ARM

Typ zasobu managedEnvironments można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.App/managedEnvironments, dodaj następujący kod JSON do szablonu.

{
  "type": "Microsoft.App/managedEnvironments",
  "apiVersion": "2025-01-01",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "kind": "string",
  "location": "string",
  "properties": {
    "appLogsConfiguration": {
      "destination": "string",
      "logAnalyticsConfiguration": {
        "customerId": "string",
        "sharedKey": "string"
      }
    },
    "customDomainConfiguration": {
      "certificateKeyVaultProperties": {
        "identity": "string",
        "keyVaultUrl": "string"
      },
      "certificatePassword": "string",
      "certificateValue": {},
      "dnsSuffix": "string"
    },
    "daprAIConnectionString": "string",
    "daprAIInstrumentationKey": "string",
    "daprConfiguration": {
    },
    "infrastructureResourceGroup": "string",
    "kedaConfiguration": {
    },
    "peerAuthentication": {
      "mtls": {
        "enabled": "bool"
      }
    },
    "peerTrafficConfiguration": {
      "encryption": {
        "enabled": "bool"
      }
    },
    "vnetConfiguration": {
      "dockerBridgeCidr": "string",
      "infrastructureSubnetId": "string",
      "internal": "bool",
      "platformReservedCidr": "string",
      "platformReservedDnsIP": "string"
    },
    "workloadProfiles": [
      {
        "maximumCount": "int",
        "minimumCount": "int",
        "name": "string",
        "workloadProfileType": "string"
      }
    ],
    "zoneRedundant": "bool"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Wartości właściwości

Microsoft.App/zarządzaneŚrodowiska

Nazwa Opis Wartość
apiVersion (wersja interfejsu api) Wersja interfejsu API '2025-01-01'
tożsamość Tożsamości zarządzane dla środowiska zarządzanego umożliwiające interakcję z innymi usługami platformy Azure bez obsługi wpisów tajnych ani poświadczeń w kodzie. ManagedServiceIdentity (tożsamość usługi)
rodzaj Rodzaj środowiska. ciąg
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu ciąg (wymagany)
właściwości Właściwości specyficzne dla zasobu środowiska zarządzanego ManagedEnvironmentProperties
Etykiety Tagi zasobów Słownik nazw tagów i wartości. Zobacz tagi w szablonach
typ Typ zasobu "Microsoft.App/managedEnvironments"

AppLogsConfiguration

Nazwa Opis Wartość
docelowy Miejsce docelowe dzienników może być "log-analytics", "azure-monitor" lub "none" ciąg
logAnalyticsConfiguration (konfiguracja logAnalytics) Konfiguracja usługi Log Analytics musi być podana tylko wtedy, gdy lokalizacja docelowa jest skonfigurowana jako "log-analytics" Konfiguracja usługi LogAnalyticsLog Configuration

CertificateKeyVaultProperties

Nazwa Opis Wartość
tożsamość Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania w usłudze Azure Key Vault lub system do używania tożsamości przypisanej przez system. ciąg
keyVaultUrl (adres URL klucza) Adres URL wskazujący wpis tajny usługi Azure Key Vault, który przechowuje certyfikat. ciąg

CustomDomainConfiguration (konfiguracja domeny)

Nazwa Opis Wartość
certificateKeyVaultProperties (właściwości certyfikatu) Certyfikat przechowywany w usłudze Azure Key Vault. CertificateKeyVaultProperties
hasło certyfikatu Hasło certyfikatu struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
certificateValue (wartość certyfikatu) Obiekt blob PFX lub PEM jakikolwiek
dnsSufiks Sufiks DNS dla domeny środowiska ciąg

Konfiguracja języka Dapr

Nazwa Opis Wartość

Konfiguracja Keda

Nazwa Opis Wartość

Konfiguracja usługi LogAnalyticsLog Configuration

Nazwa Opis Wartość
customerId (identyfikator klienta) Identyfikator klienta usługi Log Analytics ciąg
klucz współdzielony Klucz klienta usługi Log Analytics struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.

ManagedEnvironmentProperties

Nazwa Opis Wartość
appLogsConfiguration Konfiguracja klastra umożliwiająca demonowi dziennika eksportowanie dzienników dzienników do skonfigurowanego miejsca docelowego. AppLogsConfiguration
customDomainConfiguration (konfiguracja domeny) Konfiguracja domeny niestandardowej dla środowiska CustomDomainConfiguration (konfiguracja domeny)
daprAIConnectionString Parametry połączenia usługi Application Insights używane przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprAIInstrumentationKey Klucz instrumentacji usługi Azure Monitor używany przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprConfiguration (konfiguracja języka dapr) Konfiguracja składnika Dapr. DaprConfiguration
infrastructureResourceGroup (grupa zasobów) Nazwa zarządzanej przez platformę grupy zasobów utworzonej dla środowiska zarządzanego do hostowania zasobów infrastruktury. Jeśli zostanie podany identyfikator podsieci, ta grupa zasobów zostanie utworzona w tej samej subskrypcji co podsieć. ciąg
kedaConfiguration (konfiguracja keda) Konfiguracja składnika Keda. Konfiguracja Keda
peerAuthentication (równouprawnienie) Ustawienia uwierzytelniania równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerAuthentication
peerTrafficConfiguration (konfiguracja ruchu równorzędnego) Ustawienia ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfiguration
Konfiguracja sieci wirtualnej Konfiguracja sieci wirtualnej dla środowiska VnetConfiguration
Profile obciążenia Profile obciążeń skonfigurowane dla środowiska zarządzanego. Profil obciążenia[]
zoneNadmiarowy Bez względu na to, czy to środowisko zarządzane jest strefowo nadmiarowe. Bool

ManagedEnvironmentPropertiesPeerAuthentication

Nazwa Opis Wartość
Stawki MTL Wzajemne ustawienia uwierzytelniania TLS dla środowiska zarządzanego Mtls

ManagedEnvironmentPropertiesPeerTrafficConfiguration

Nazwa Opis Wartość
szyfrowanie Ustawienia szyfrowania ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy szyfrowanie ruchu równorzędnego jest włączone Bool

ManagedServiceIdentity (tożsamość usługi)

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
tożsamości przypisane użytkownikom Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. UserAssignedIdentities

Metry MTL

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy wzajemne uwierzytelnianie TLS jest włączone Bool

Śledzone tagi zasobów

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

Tożsamość przypisana przez użytkownika

Nazwa Opis Wartość

Konfiguracja sieci VnetConfiguration

Nazwa Opis Wartość
dockerBridgeCidr Zakres adresów IP notacji CIDR przypisany do mostka platformy Docker, sieci. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
infrastructureSubnetId (identyfikator infrastruktury) Identyfikator zasobu podsieci dla składników infrastruktury. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
wewnętrzny Wartość logiczna wskazująca, że środowisko ma tylko wewnętrzny moduł równoważenia obciążenia. Te środowiska nie mają publicznego zasobu statycznego adresu IP. W przypadku włączenia tej właściwości muszą podać identyfikator infrastructureSubnetId Bool
platformyReservedCidr Zakres adresów IP w notacji CIDR, który może być zarezerwowany dla adresów IP infrastruktury środowiska. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
platformaReservedDnsIP Adres IP z zakresu adresów IP zdefiniowany przez platformęReservedCidr, który będzie zarezerwowany dla wewnętrznego serwera DNS. ciąg

Profil obciążenia

Nazwa Opis Wartość
maximumCount (maksymalna liczba) Maksymalna pojemność. Int
minimumCount (minimalLiczba) Minimalna pojemność. Int
nazwa Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)
workloadProfileType (typ profilu) Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)

Przykłady użycia

Szablony szybkiego startu platformy Azure

Następujące szablony szybkiego startu platformy Azure wdrożyć ten typ zasobu.

Szablon Opis
tworzy aplikację kontenera i środowisko z rejestru

Wdrażanie do Azure
Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera z usługi Azure Container Registry. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
Tworzy aplikację kontenera z zdefiniowaną regułą skalowania HTTP

Wdrażanie do Azure
Utwórz środowisko aplikacji kontenera z podstawową aplikacją kontenera, która skaluje się na podstawie ruchu HTTP.
tworzy aplikację kontenera w środowisku aplikacji kontenera

Wdrażanie do Azure
Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
Tworzy aplikację mikrousług dapr przy użyciu usługi Container Apps

Wdrażanie do Azure
Tworzenie aplikacji mikrousług dapr przy użyciu usługi Container Apps.
Tworzy aplikację dapr pub-sub servicebus przy użyciu usługi Container Apps

Wdrażanie do Azure
Utwórz aplikację Dapr pub-sub servicebus przy użyciu usługi Container Apps.
Tworzy dwie aplikacje kontenera za pomocą środowiska aplikacji kontenera

Wdrażanie do Azure
Utwórz dwa środowisko aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników.
tworzy zewnętrzne środowisko aplikacji kontenera z sieci wirtualnej

Wdrażanie do Azure
Tworzy zewnętrzne środowisko aplikacji kontenera z siecią wirtualną.
tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną

Wdrażanie do Azure
Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną.

Definicja zasobu narzędzia Terraform (dostawcy AzAPI)

Typ zasobu managedEnvironments można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.App/managedEnvironments, dodaj następujący program Terraform do szablonu.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/managedEnvironments@2025-01-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    kind = "string"
    properties = {
      appLogsConfiguration = {
        destination = "string"
        logAnalyticsConfiguration = {
          customerId = "string"
          sharedKey = "string"
        }
      }
      customDomainConfiguration = {
        certificateKeyVaultProperties = {
          identity = "string"
          keyVaultUrl = "string"
        }
        certificatePassword = "string"
        certificateValue = ?
        dnsSuffix = "string"
      }
      daprAIConnectionString = "string"
      daprAIInstrumentationKey = "string"
      daprConfiguration = {
      }
      infrastructureResourceGroup = "string"
      kedaConfiguration = {
      }
      peerAuthentication = {
        mtls = {
          enabled = bool
        }
      }
      peerTrafficConfiguration = {
        encryption = {
          enabled = bool
        }
      }
      vnetConfiguration = {
        dockerBridgeCidr = "string"
        infrastructureSubnetId = "string"
        internal = bool
        platformReservedCidr = "string"
        platformReservedDnsIP = "string"
      }
      workloadProfiles = [
        {
          maximumCount = int
          minimumCount = int
          name = "string"
          workloadProfileType = "string"
        }
      ]
      zoneRedundant = bool
    }
  }
}

Wartości właściwości

Microsoft.App/zarządzaneŚrodowiska

Nazwa Opis Wartość
tożsamość Tożsamości zarządzane dla środowiska zarządzanego umożliwiające interakcję z innymi usługami platformy Azure bez obsługi wpisów tajnych ani poświadczeń w kodzie. ManagedServiceIdentity (tożsamość usługi)
rodzaj Rodzaj środowiska. ciąg
lokalizacja Lokalizacja geograficzna, w której znajduje się zasób ciąg (wymagany)
nazwa Nazwa zasobu ciąg (wymagany)
parent_id Identyfikator zasobu, do który ma być stosowany ten zasób rozszerzenia. ciąg (wymagany)
właściwości Właściwości specyficzne dla zasobu środowiska zarządzanego ManagedEnvironmentProperties
Etykiety Tagi zasobów Słownik nazw tagów i wartości.
typ Typ zasobu "Microsoft.App/managedEnvironments@2025-01-01"

AppLogsConfiguration

Nazwa Opis Wartość
docelowy Miejsce docelowe dzienników może być "log-analytics", "azure-monitor" lub "none" ciąg
logAnalyticsConfiguration (konfiguracja logAnalytics) Konfiguracja usługi Log Analytics musi być podana tylko wtedy, gdy lokalizacja docelowa jest skonfigurowana jako "log-analytics" Konfiguracja usługi LogAnalyticsLog Configuration

CertificateKeyVaultProperties

Nazwa Opis Wartość
tożsamość Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania w usłudze Azure Key Vault lub system do używania tożsamości przypisanej przez system. ciąg
keyVaultUrl (adres URL klucza) Adres URL wskazujący wpis tajny usługi Azure Key Vault, który przechowuje certyfikat. ciąg

CustomDomainConfiguration (konfiguracja domeny)

Nazwa Opis Wartość
certificateKeyVaultProperties (właściwości certyfikatu) Certyfikat przechowywany w usłudze Azure Key Vault. CertificateKeyVaultProperties
hasło certyfikatu Hasło certyfikatu struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
certificateValue (wartość certyfikatu) Obiekt blob PFX lub PEM jakikolwiek
dnsSufiks Sufiks DNS dla domeny środowiska ciąg

Konfiguracja języka Dapr

Nazwa Opis Wartość

Konfiguracja Keda

Nazwa Opis Wartość

Konfiguracja usługi LogAnalyticsLog Configuration

Nazwa Opis Wartość
customerId (identyfikator klienta) Identyfikator klienta usługi Log Analytics ciąg
klucz współdzielony Klucz klienta usługi Log Analytics struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.

ManagedEnvironmentProperties

Nazwa Opis Wartość
appLogsConfiguration Konfiguracja klastra umożliwiająca demonowi dziennika eksportowanie dzienników dzienników do skonfigurowanego miejsca docelowego. AppLogsConfiguration
customDomainConfiguration (konfiguracja domeny) Konfiguracja domeny niestandardowej dla środowiska CustomDomainConfiguration (konfiguracja domeny)
daprAIConnectionString Parametry połączenia usługi Application Insights używane przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprAIInstrumentationKey Klucz instrumentacji usługi Azure Monitor używany przez dapr do eksportowania danych telemetrycznych komunikacji usługi do usługi struna

Ograniczenia:
Wartość wrażliwa. Przekaż jako bezpieczny parametr.
daprConfiguration (konfiguracja języka dapr) Konfiguracja składnika Dapr. DaprConfiguration
infrastructureResourceGroup (grupa zasobów) Nazwa zarządzanej przez platformę grupy zasobów utworzonej dla środowiska zarządzanego do hostowania zasobów infrastruktury. Jeśli zostanie podany identyfikator podsieci, ta grupa zasobów zostanie utworzona w tej samej subskrypcji co podsieć. ciąg
kedaConfiguration (konfiguracja keda) Konfiguracja składnika Keda. Konfiguracja Keda
peerAuthentication (równouprawnienie) Ustawienia uwierzytelniania równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerAuthentication
peerTrafficConfiguration (konfiguracja ruchu równorzędnego) Ustawienia ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfiguration
Konfiguracja sieci wirtualnej Konfiguracja sieci wirtualnej dla środowiska VnetConfiguration
Profile obciążenia Profile obciążeń skonfigurowane dla środowiska zarządzanego. Profil obciążenia[]
zoneNadmiarowy Bez względu na to, czy to środowisko zarządzane jest strefowo nadmiarowe. Bool

ManagedEnvironmentPropertiesPeerAuthentication

Nazwa Opis Wartość
Stawki MTL Wzajemne ustawienia uwierzytelniania TLS dla środowiska zarządzanego Mtls

ManagedEnvironmentPropertiesPeerTrafficConfiguration

Nazwa Opis Wartość
szyfrowanie Ustawienia szyfrowania ruchu równorzędnego dla środowiska zarządzanego ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

ManagedEnvironmentPropertiesPeerTrafficConfigurationEncryption

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy szyfrowanie ruchu równorzędnego jest włączone Bool

ManagedServiceIdentity (tożsamość usługi)

Nazwa Opis Wartość
typ Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). "Brak"
"SystemAssigned"
"SystemAssigned,UserAssigned"
"UserAssigned" (wymagane)
tożsamości przypisane użytkownikom Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. UserAssignedIdentities

Metry MTL

Nazwa Opis Wartość
Włączone Wartość logiczna wskazująca, czy wzajemne uwierzytelnianie TLS jest włączone Bool

Śledzone tagi zasobów

Nazwa Opis Wartość

UserAssignedIdentities

Nazwa Opis Wartość

Tożsamość przypisana przez użytkownika

Nazwa Opis Wartość

Konfiguracja sieci VnetConfiguration

Nazwa Opis Wartość
dockerBridgeCidr Zakres adresów IP notacji CIDR przypisany do mostka platformy Docker, sieci. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
infrastructureSubnetId (identyfikator infrastruktury) Identyfikator zasobu podsieci dla składników infrastruktury. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
wewnętrzny Wartość logiczna wskazująca, że środowisko ma tylko wewnętrzny moduł równoważenia obciążenia. Te środowiska nie mają publicznego zasobu statycznego adresu IP. W przypadku włączenia tej właściwości muszą podać identyfikator infrastructureSubnetId Bool
platformyReservedCidr Zakres adresów IP w notacji CIDR, który może być zarezerwowany dla adresów IP infrastruktury środowiska. Nie może pokrywać się z żadnymi innymi podanymi zakresami adresów IP. ciąg
platformaReservedDnsIP Adres IP z zakresu adresów IP zdefiniowany przez platformęReservedCidr, który będzie zarezerwowany dla wewnętrznego serwera DNS. ciąg

Profil obciążenia

Nazwa Opis Wartość
maximumCount (maksymalna liczba) Maksymalna pojemność. Int
minimumCount (minimalLiczba) Minimalna pojemność. Int
nazwa Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)
workloadProfileType (typ profilu) Typ profilu obciążenia dla obciążeń do uruchomienia. ciąg (wymagany)

Przykłady użycia

Przykłady programu Terraform

Podstawowy przykład wdrażania środowiska aplikacji kontenera.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "workspace" {
  type      = "Microsoft.OperationalInsights/workspaces@2022-10-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      features = {
        disableLocalAuth                            = false
        enableLogAccessUsingOnlyResourcePermissions = true
      }
      publicNetworkAccessForIngestion = "Enabled"
      publicNetworkAccessForQuery     = "Enabled"
      retentionInDays                 = 30
      sku = {
        name = "PerGB2018"
      }
      workspaceCapping = {
        dailyQuotaGb = -1
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_action" "sharedKeys" {
  type                   = "Microsoft.OperationalInsights/workspaces@2020-08-01"
  resource_id            = azapi_resource.workspace.id
  action                 = "sharedKeys"
  response_export_values = ["*"]
}

resource "azapi_resource" "managedEnvironment" {
  type      = "Microsoft.App/managedEnvironments@2022-03-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      appLogsConfiguration = {
        destination = "log-analytics"
        logAnalyticsConfiguration = {
          customerId = azapi_resource.workspace.output.properties.customerId
          sharedKey  = data.azapi_resource_action.sharedKeys.output.primarySharedKey
        }
      }
      vnetConfiguration = {
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Moduły zweryfikowane na platformie Azure

Następujące moduły zweryfikowane platformy Azure mogą służyć do wdrażania tego typu zasobu.

Moduł Opis
Środowisko zarządzane aplikacji Moduł zasobów AVM dla środowiska zarządzanego aplikacji