Microsoft.AppPlatform Lente/apps/implementaties 2023-12-01

Opmerkingen

Opmerking: Azure Spring Apps Application Deployments (Microsoft.AppPlatform/Spring/apps/deployments) is nu verouderd en wordt op 31-05-2028 met pensioen gestuurd. Zie https://aka.ms/asaretirement voor meer informatie.

Bicep-resourcedefinitie

Het resourcetype Spring/apps/implementaties kan worden geïmplementeerd met bewerkingen die zijn gericht op:

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Formaat van de bron

Als u een resource voor Microsoft.AppPlatform/Spring/apps/implementaties wilt maken, voegt u de volgende Bicep toe aan uw sjabloon.

resource symbolicname 'Microsoft.AppPlatform/Spring/apps/deployments@2023-12-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    active: bool
    deploymentSettings: {
      addonConfigs: {
        {customized property}: any(...)
      }
      apms: [
        {
          resourceId: 'string'
        }
      ]
      containerProbeSettings: {
        disableProbe: bool
      }
      environmentVariables: {
        {customized property}: 'string'
      }
      livenessProbe: {
        disableProbe: bool
        failureThreshold: int
        initialDelaySeconds: int
        periodSeconds: int
        probeAction: {
          type: 'string'
          // For remaining properties, see ProbeAction objects
        }
        successThreshold: int
        timeoutSeconds: int
      }
      readinessProbe: {
        disableProbe: bool
        failureThreshold: int
        initialDelaySeconds: int
        periodSeconds: int
        probeAction: {
          type: 'string'
          // For remaining properties, see ProbeAction objects
        }
        successThreshold: int
        timeoutSeconds: int
      }
      resourceRequests: {
        cpu: 'string'
        memory: 'string'
      }
      startupProbe: {
        disableProbe: bool
        failureThreshold: int
        initialDelaySeconds: int
        periodSeconds: int
        probeAction: {
          type: 'string'
          // For remaining properties, see ProbeAction objects
        }
        successThreshold: int
        timeoutSeconds: int
      }
      terminationGracePeriodSeconds: int
    }
    source: {
      version: 'string'
      type: 'string'
      // For remaining properties, see UserSourceInfo objects
    }
  }
  sku: {
    capacity: int
    name: 'string'
    tier: 'string'
  }
}

ProbeAction-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor ExecAction-:

{
  command: [
    'string'
  ]
  type: 'ExecAction'
}

Gebruik voor HTTPGetAction-:

{
  path: 'string'
  scheme: 'string'
  type: 'HTTPGetAction'
}

Gebruik voor TCPSocketAction:

{
  type: 'TCPSocketAction'
}

UserSourceInfo-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor BuildResult-:

{
  buildResultId: 'string'
  type: 'BuildResult'
}

Gebruik voor Container:

{
  customContainer: {
    args: [
      'string'
    ]
    command: [
      'string'
    ]
    containerImage: 'string'
    imageRegistryCredential: {
      password: 'string'
      username: 'string'
    }
    languageFramework: 'string'
    server: 'string'
  }
  type: 'Container'
}

Gebruik voor Jar-:

{
  jvmOptions: 'string'
  relativePath: 'string'
  runtimeVersion: 'string'
  type: 'Jar'
}

Gebruik voor NetCoreZip-:

{
  netCoreMainEntryPath: 'string'
  relativePath: 'string'
  runtimeVersion: 'string'
  type: 'NetCoreZip'
}

Gebruik voor bron:

{
  artifactSelector: 'string'
  relativePath: 'string'
  runtimeVersion: 'string'
  type: 'Source'
}

Gebruik voor oorlog:

{
  jvmOptions: 'string'
  relativePath: 'string'
  runtimeVersion: 'string'
  serverVersion: 'string'
  type: 'War'
}

Eigenschapswaarden

Microsoft.AppPlatform/Spring/apps/deployments

Name Description Value
name De resourcenaam Touwtje (verplicht)
parent In Bicep kunt u de bovenliggende resource voor een onderliggende resource opgeven. U hoeft deze eigenschap alleen toe te voegen wanneer de onderliggende resource buiten de bovenliggende resource wordt gedeclareerd.

Voor meer informatie, zie Child resource outside parent resource.
Symbolische naam voor resource van het type: Spring/apps
properties Eigenschappen van de implementatieresource DeploymentResourceProperties
sku SKU van de implementatieresource Sku

ApmReference

Name Description Value
resourceId Resource-id van de APM Touwtje (verplicht)

BuildResultUserSourceInfo

Name Description Value
buildResultId Resource-id van een bestaand voltooid buildresultaat onder hetzelfde Spring-exemplaar. string
type Type van de geüploade bron 'BuildResult' (verplicht)

ContainerProbeSettings

Name Description Value
disableProbe Geeft aan of de liveness- en gereedheidstest wordt uitgeschakeld bool

CustomContainer

Name Description Value
args Argumenten voor het invoerpunt. De CMD van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
command Invoerpuntmatrix. Niet uitgevoerd in een shell. Het ENTRYPOINT van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
containerImage Containerinstallatiekopieën van de aangepaste container. Dit moet de vorm hebben van <opslagplaats>:<tag> zonder de servernaam van het register string
imageRegistryCredential Referentie van het installatiekopieënregister ImageRegistryCredential
languageFramework Taalframework van de geüploade containerinstallatiekopieën. Ondersteunde waarden: 'springboot', '', null. string
server De naam van het register dat de containerinstallatiekopieën bevat string

CustomContainerUserSourceInfo

Name Description Value
customContainer Aangepaste containerpayload CustomContainer
type Type van de geüploade bron 'Container' (verplicht)

DeploymentResourceProperties

Name Description Value
active Geeft aan of de implementatie actief is bool
deploymentSettings Implementatie-instellingen van de implementatie DeploymentSettings
source Geüploade brongegevens van de implementatie. UserSourceInfo

DeploymentSettings

Name Description Value
addonConfigs Verzameling invoegtoepassingen DeploymentSettingsAddonConfigs
apms Verzameling van ApmReferences ApmReference[]
containerProbeSettings Testinstellingen voor containerlevendheid en gereedheid ContainerProbeSettings
environmentVariables Verzameling van omgevingsvariabelen DeploymentSettingsEnvironmentVariables
livenessProbe Periodieke test van de liveness van het App-exemplaar. Het app-exemplaar wordt opnieuw gestart als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
readinessProbe Periodieke test van gereedheid voor App Instance Service. App-exemplaar wordt verwijderd uit service-eindpunten als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
resourceRequests De aangevraagde resourcehoeveelheid voor de vereiste CPU en het vereiste geheugen. Het wordt aanbevolen dat het gebruik van dit veld om de vereiste CPU en het geheugen weer te geven, de oude veld cpu en memoryInGB later worden afgeschaft. ResourceRequests
startupProbe StartupProbe geeft aan dat het app-exemplaar is geïnitialiseerd. Indien opgegeven, worden er geen andere tests uitgevoerd totdat dit is voltooid. Als deze test mislukt, wordt de pod opnieuw opgestart, net zoals de livenessProbe is mislukt. Dit kan worden gebruikt voor het leveren van verschillende testparameters aan het begin van de levenscyclus van een app-exemplaar, wanneer het lang kan duren om gegevens te laden of een cache te warmen, dan tijdens een gestage bewerking. Dit kan niet worden bijgewerkt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
terminationGracePeriodSeconds Optionele duur in seconden moet het app-exemplaar probleemloos worden beëindigd. Kan worden verminderd in de verwijderingsaanvraag. De waarde moet een niet-negatief geheel getal zijn. De waarde nul geeft aan dat stop onmiddellijk via het kill-signaal (geen kans om af te sluiten) aangeeft. Als deze waarde nul is, wordt in plaats daarvan de standaard respijtperiode gebruikt. De respijtperiode is de duur in seconden nadat de processen die in het app-exemplaar worden uitgevoerd, een beëindigingssignaal worden verzonden en de tijd waarop de processen geforceerd worden gestopt met een kill-signaal. Stel deze waarde langer in dan de verwachte opschoontijd voor uw proces. De standaardwaarde is 90 seconden. int

DeploymentSettingsAddonConfigs

Name Description Value

DeploymentSettingsEnvironmentVariables

Name Description Value

ExecAction

Name Description Value
command De opdracht is de opdrachtregel die in de container moet worden uitgevoerd. De werkmap voor de opdracht is root ('/') in het bestandssysteem van de container. De opdracht wordt niet uitgevoerd in een shell, dus traditionele shell-instructies ('|', enzovoort) werken niet. Als u een shell wilt gebruiken, moet u deze shell expliciet aanroepen. De afsluitstatus van 0 wordt behandeld als live/gezond en niet-nul is beschadigd. string[]
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'ExecAction' (verplicht)

HttpGetAction

Name Description Value
path Pad naar access op de HTTP-server. string
scheme Schema dat moet worden gebruikt om verbinding te maken met de host. Standaard ingesteld op HTTP.

Mogelijke opsommingswaarden:
- "HTTP" betekent dat het gebruikte schema wordt http://
- "HTTPS" betekent dat het gebruikte schema wordt https://
'HTTP'
'HTTPS'
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'HTTPGetAction' (verplicht)

ImageRegistryCredential

Name Description Value
password Het wachtwoord van de referentie voor het installatiekopieënregister string
username De gebruikersnaam van de referentie voor het installatiekopieënregister string

JarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het Jar-bestand string
type Type van de geüploade bron 'Pot' (verplicht)

NetCoreZipUploadedUserSourceInfo

Name Description Value
netCoreMainEntryPath Het pad naar het .NET-uitvoerbaar bestand ten opzichte van zip-root string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtime-versie van het .Net-bestand string
type Type van de geüploade bron 'NetCoreZip' (verplicht)

Probe

Name Description Value
disableProbe Geef aan of de test is uitgeschakeld. bool (verplicht)
failureThreshold Minimale opeenvolgende fouten voor de test die als mislukt worden beschouwd nadat de test is geslaagd. De minimumwaarde is 1. int
initialDelaySeconds Aantal seconden nadat het app-exemplaar is gestart voordat tests worden gestart. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes int
periodSeconds Hoe vaak (in seconden) de test moet worden uitgevoerd. De minimumwaarde is 1. int
probeAction De actie van de test. ProbeAction
successThreshold Minimale opeenvolgende successen voor de test die als geslaagd worden beschouwd nadat deze is mislukt. Moet 1 zijn voor leven en opstarten. De minimumwaarde is 1. int
timeoutSeconds Aantal seconden waarna er een time-out optreedt voor de test. De minimumwaarde is 1. int

ProbeAction

Name Description Value
type Ingesteld op ExecAction voor het type ExecAction. Ingesteld op HTTPGetAction voor het type HttpGetAction. Ingesteld op TCPSocketAction voor het type TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (verplicht)

ResourceRequests

Name Description Value
cpu Vereiste CPU. 1 kern kan worden vertegenwoordigd door 1 of 1000m. Dit moet 500 m of 1 zijn voor de Basic-laag en {500m, 1, 2, 3, 4} voor de Standard-laag. string
memory Vereist geheugen. 1 GB kan worden vertegenwoordigd door 1Gi of 1024Mi. Dit moet {512Mi, 1Gi, 2Gi} zijn voor de Basic-laag en {512Mi, 1Gi, 2Gi, ..., 8Gi} voor de Standard-laag. string

Sku

Name Description Value
capacity Huidige capaciteit van de doelresource int
name Naam van de SKU string
tier Laag van de SKU string

SourceUploadedUserSourceInfo

Name Description Value
artifactSelector Selector voor het artefact dat moet worden gebruikt voor de implementatie voor projecten met meerdere modules. Dit moet zijn
het relatieve pad naar het doelmodule/project.
string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het bronbestand string
type Type van de geüploade bron 'Bron' (verplicht)

TCPSocketAction

Name Description Value
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'TCPSocketAction' (verplicht)

UserSourceInfo

Name Description Value
type Ingesteld op BuildResult voor het type BuildResultUserSourceInfo. Ingesteld op 'Container' voor het type CustomContainerUserSourceInfo. Ingesteld op Jar voor het type JarUploadedUserSourceInfo. Ingesteld op 'NetCoreZip' voor het type NetCoreZipUploadedUserSourceInfo. Ingesteld op 'Bron' voor het type SourceUploadedUserSourceInfo. Stel in op 'War' voor het type WarUploadedUserSourceInfo. 'BuildResult'
'Container'
'Jar'
'NetCoreZip'
'Source'
'Oorlog' (verplicht)
version Versie van de bron string

WarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het war-bestand string
serverVersion Serverversie, momenteel wordt alleen Apache Tomcat ondersteund string
type Type van de geüploade bron 'Oorlog' (verplicht)

Gebruiksvoorbeelden

Bicep-voorbeelden

Een eenvoudig voorbeeld van het implementeren van Spring Cloud Deployment.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource spring 'Microsoft.AppPlatform/Spring@2023-05-01-preview' = {
  name: resourceName
  location: location
  properties: {
    zoneRedundant: false
  }
  sku: {
    name: 'E0'
  }
}

resource app 'Microsoft.AppPlatform/Spring/apps@2023-05-01-preview' = {
  parent: spring
  name: resourceName
  location: location
  properties: {
    customPersistentDisks: []
    enableEndToEndTLS: false
    public: false
  }
}

resource deployment 'Microsoft.AppPlatform/Spring/apps/deployments@2023-05-01-preview' = {
  parent: app
  name: resourceName
  properties: {
    deploymentSettings: {
      environmentVariables: {}
    }
    source: {
      customContainer: {
        args: []
        command: []
        containerImage: 'springio/gs-spring-boot-docker'
        languageFramework: ''
        server: 'docker.io'
      }
      type: 'Container'
    }
  }
  sku: {
    capacity: 1
    name: 'E0'
    tier: 'Enterprise'
  }
}

Azure-snelstartvoorbeelden

De volgende Azure Quickstart-sjablonen bevatten Bicep-voorbeelden voor het uitrollen van dit resourcetype.

Biceps-bestand Description
Deploy een eenvoudige Azure Spring Apps microserviceapplicatie Deze template deployeert een eenvoudige Azure Spring Apps microservice-applicatie om op Azure te draaien.

Resourcedefinitie van ARM-sjabloon

Het resourcetype Spring/apps/implementaties kan worden geïmplementeerd met bewerkingen die zijn gericht op:

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Formaat van de bron

Als u een resource voor Microsoft.AppPlatform/Spring/apps/implementaties wilt maken, voegt u de volgende JSON toe aan uw sjabloon.

{
  "type": "Microsoft.AppPlatform/Spring/apps/deployments",
  "apiVersion": "2023-12-01",
  "name": "string",
  "properties": {
    "active": "bool",
    "deploymentSettings": {
      "addonConfigs": {
        "{customized property}": {}
      },
      "apms": [
        {
          "resourceId": "string"
        }
      ],
      "containerProbeSettings": {
        "disableProbe": "bool"
      },
      "environmentVariables": {
        "{customized property}": "string"
      },
      "livenessProbe": {
        "disableProbe": "bool",
        "failureThreshold": "int",
        "initialDelaySeconds": "int",
        "periodSeconds": "int",
        "probeAction": {
          "type": "string"
          // For remaining properties, see ProbeAction objects
        },
        "successThreshold": "int",
        "timeoutSeconds": "int"
      },
      "readinessProbe": {
        "disableProbe": "bool",
        "failureThreshold": "int",
        "initialDelaySeconds": "int",
        "periodSeconds": "int",
        "probeAction": {
          "type": "string"
          // For remaining properties, see ProbeAction objects
        },
        "successThreshold": "int",
        "timeoutSeconds": "int"
      },
      "resourceRequests": {
        "cpu": "string",
        "memory": "string"
      },
      "startupProbe": {
        "disableProbe": "bool",
        "failureThreshold": "int",
        "initialDelaySeconds": "int",
        "periodSeconds": "int",
        "probeAction": {
          "type": "string"
          // For remaining properties, see ProbeAction objects
        },
        "successThreshold": "int",
        "timeoutSeconds": "int"
      },
      "terminationGracePeriodSeconds": "int"
    },
    "source": {
      "version": "string",
      "type": "string"
      // For remaining properties, see UserSourceInfo objects
    }
  },
  "sku": {
    "capacity": "int",
    "name": "string",
    "tier": "string"
  }
}

ProbeAction-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor ExecAction-:

{
  "command": [ "string" ],
  "type": "ExecAction"
}

Gebruik voor HTTPGetAction-:

{
  "path": "string",
  "scheme": "string",
  "type": "HTTPGetAction"
}

Gebruik voor TCPSocketAction:

{
  "type": "TCPSocketAction"
}

UserSourceInfo-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor BuildResult-:

{
  "buildResultId": "string",
  "type": "BuildResult"
}

Gebruik voor Container:

{
  "customContainer": {
    "args": [ "string" ],
    "command": [ "string" ],
    "containerImage": "string",
    "imageRegistryCredential": {
      "password": "string",
      "username": "string"
    },
    "languageFramework": "string",
    "server": "string"
  },
  "type": "Container"
}

Gebruik voor Jar-:

{
  "jvmOptions": "string",
  "relativePath": "string",
  "runtimeVersion": "string",
  "type": "Jar"
}

Gebruik voor NetCoreZip-:

{
  "netCoreMainEntryPath": "string",
  "relativePath": "string",
  "runtimeVersion": "string",
  "type": "NetCoreZip"
}

Gebruik voor bron:

{
  "artifactSelector": "string",
  "relativePath": "string",
  "runtimeVersion": "string",
  "type": "Source"
}

Gebruik voor oorlog:

{
  "jvmOptions": "string",
  "relativePath": "string",
  "runtimeVersion": "string",
  "serverVersion": "string",
  "type": "War"
}

Eigenschapswaarden

Microsoft.AppPlatform/Spring/apps/deployments

Name Description Value
apiVersion De API-versie '2023-12-01'
name De resourcenaam Touwtje (verplicht)
properties Eigenschappen van de implementatieresource DeploymentResourceProperties
sku SKU van de implementatieresource Sku
type Het resourcetype 'Microsoft.AppPlatform/Spring/apps/deployments'

ApmReference

Name Description Value
resourceId Resource-id van de APM Touwtje (verplicht)

BuildResultUserSourceInfo

Name Description Value
buildResultId Resource-id van een bestaand voltooid buildresultaat onder hetzelfde Spring-exemplaar. string
type Type van de geüploade bron 'BuildResult' (verplicht)

ContainerProbeSettings

Name Description Value
disableProbe Geeft aan of de liveness- en gereedheidstest wordt uitgeschakeld bool

CustomContainer

Name Description Value
args Argumenten voor het invoerpunt. De CMD van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
command Invoerpuntmatrix. Niet uitgevoerd in een shell. Het ENTRYPOINT van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
containerImage Containerinstallatiekopieën van de aangepaste container. Dit moet de vorm hebben van <opslagplaats>:<tag> zonder de servernaam van het register string
imageRegistryCredential Referentie van het installatiekopieënregister ImageRegistryCredential
languageFramework Taalframework van de geüploade containerinstallatiekopieën. Ondersteunde waarden: 'springboot', '', null. string
server De naam van het register dat de containerinstallatiekopieën bevat string

CustomContainerUserSourceInfo

Name Description Value
customContainer Aangepaste containerpayload CustomContainer
type Type van de geüploade bron 'Container' (verplicht)

DeploymentResourceProperties

Name Description Value
active Geeft aan of de implementatie actief is bool
deploymentSettings Implementatie-instellingen van de implementatie DeploymentSettings
source Geüploade brongegevens van de implementatie. UserSourceInfo

DeploymentSettings

Name Description Value
addonConfigs Verzameling invoegtoepassingen DeploymentSettingsAddonConfigs
apms Verzameling van ApmReferences ApmReference[]
containerProbeSettings Testinstellingen voor containerlevendheid en gereedheid ContainerProbeSettings
environmentVariables Verzameling van omgevingsvariabelen DeploymentSettingsEnvironmentVariables
livenessProbe Periodieke test van de liveness van het App-exemplaar. Het app-exemplaar wordt opnieuw gestart als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
readinessProbe Periodieke test van gereedheid voor App Instance Service. App-exemplaar wordt verwijderd uit service-eindpunten als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
resourceRequests De aangevraagde resourcehoeveelheid voor de vereiste CPU en het vereiste geheugen. Het wordt aanbevolen dat het gebruik van dit veld om de vereiste CPU en het geheugen weer te geven, de oude veld cpu en memoryInGB later worden afgeschaft. ResourceRequests
startupProbe StartupProbe geeft aan dat het app-exemplaar is geïnitialiseerd. Indien opgegeven, worden er geen andere tests uitgevoerd totdat dit is voltooid. Als deze test mislukt, wordt de pod opnieuw opgestart, net zoals de livenessProbe is mislukt. Dit kan worden gebruikt voor het leveren van verschillende testparameters aan het begin van de levenscyclus van een app-exemplaar, wanneer het lang kan duren om gegevens te laden of een cache te warmen, dan tijdens een gestage bewerking. Dit kan niet worden bijgewerkt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
terminationGracePeriodSeconds Optionele duur in seconden moet het app-exemplaar probleemloos worden beëindigd. Kan worden verminderd in de verwijderingsaanvraag. De waarde moet een niet-negatief geheel getal zijn. De waarde nul geeft aan dat stop onmiddellijk via het kill-signaal (geen kans om af te sluiten) aangeeft. Als deze waarde nul is, wordt in plaats daarvan de standaard respijtperiode gebruikt. De respijtperiode is de duur in seconden nadat de processen die in het app-exemplaar worden uitgevoerd, een beëindigingssignaal worden verzonden en de tijd waarop de processen geforceerd worden gestopt met een kill-signaal. Stel deze waarde langer in dan de verwachte opschoontijd voor uw proces. De standaardwaarde is 90 seconden. int

DeploymentSettingsAddonConfigs

Name Description Value

DeploymentSettingsEnvironmentVariables

Name Description Value

ExecAction

Name Description Value
command De opdracht is de opdrachtregel die in de container moet worden uitgevoerd. De werkmap voor de opdracht is root ('/') in het bestandssysteem van de container. De opdracht wordt niet uitgevoerd in een shell, dus traditionele shell-instructies ('|', enzovoort) werken niet. Als u een shell wilt gebruiken, moet u deze shell expliciet aanroepen. De afsluitstatus van 0 wordt behandeld als live/gezond en niet-nul is beschadigd. string[]
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'ExecAction' (verplicht)

HttpGetAction

Name Description Value
path Pad naar access op de HTTP-server. string
scheme Schema dat moet worden gebruikt om verbinding te maken met de host. Standaard ingesteld op HTTP.

Mogelijke opsommingswaarden:
- "HTTP" betekent dat het gebruikte schema wordt http://
- "HTTPS" betekent dat het gebruikte schema wordt https://
'HTTP'
'HTTPS'
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'HTTPGetAction' (verplicht)

ImageRegistryCredential

Name Description Value
password Het wachtwoord van de referentie voor het installatiekopieënregister string
username De gebruikersnaam van de referentie voor het installatiekopieënregister string

JarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het Jar-bestand string
type Type van de geüploade bron 'Pot' (verplicht)

NetCoreZipUploadedUserSourceInfo

Name Description Value
netCoreMainEntryPath Het pad naar het .NET-uitvoerbaar bestand ten opzichte van zip-root string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtime-versie van het .Net-bestand string
type Type van de geüploade bron 'NetCoreZip' (verplicht)

Probe

Name Description Value
disableProbe Geef aan of de test is uitgeschakeld. bool (verplicht)
failureThreshold Minimale opeenvolgende fouten voor de test die als mislukt worden beschouwd nadat de test is geslaagd. De minimumwaarde is 1. int
initialDelaySeconds Aantal seconden nadat het app-exemplaar is gestart voordat tests worden gestart. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes int
periodSeconds Hoe vaak (in seconden) de test moet worden uitgevoerd. De minimumwaarde is 1. int
probeAction De actie van de test. ProbeAction
successThreshold Minimale opeenvolgende successen voor de test die als geslaagd worden beschouwd nadat deze is mislukt. Moet 1 zijn voor leven en opstarten. De minimumwaarde is 1. int
timeoutSeconds Aantal seconden waarna er een time-out optreedt voor de test. De minimumwaarde is 1. int

ProbeAction

Name Description Value
type Ingesteld op ExecAction voor het type ExecAction. Ingesteld op HTTPGetAction voor het type HttpGetAction. Ingesteld op TCPSocketAction voor het type TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (verplicht)

ResourceRequests

Name Description Value
cpu Vereiste CPU. 1 kern kan worden vertegenwoordigd door 1 of 1000m. Dit moet 500 m of 1 zijn voor de Basic-laag en {500m, 1, 2, 3, 4} voor de Standard-laag. string
memory Vereist geheugen. 1 GB kan worden vertegenwoordigd door 1Gi of 1024Mi. Dit moet {512Mi, 1Gi, 2Gi} zijn voor de Basic-laag en {512Mi, 1Gi, 2Gi, ..., 8Gi} voor de Standard-laag. string

Sku

Name Description Value
capacity Huidige capaciteit van de doelresource int
name Naam van de SKU string
tier Laag van de SKU string

SourceUploadedUserSourceInfo

Name Description Value
artifactSelector Selector voor het artefact dat moet worden gebruikt voor de implementatie voor projecten met meerdere modules. Dit moet zijn
het relatieve pad naar het doelmodule/project.
string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het bronbestand string
type Type van de geüploade bron 'Bron' (verplicht)

TCPSocketAction

Name Description Value
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'TCPSocketAction' (verplicht)

UserSourceInfo

Name Description Value
type Ingesteld op BuildResult voor het type BuildResultUserSourceInfo. Ingesteld op 'Container' voor het type CustomContainerUserSourceInfo. Ingesteld op Jar voor het type JarUploadedUserSourceInfo. Ingesteld op 'NetCoreZip' voor het type NetCoreZipUploadedUserSourceInfo. Ingesteld op 'Bron' voor het type SourceUploadedUserSourceInfo. Stel in op 'War' voor het type WarUploadedUserSourceInfo. 'BuildResult'
'Container'
'Jar'
'NetCoreZip'
'Source'
'Oorlog' (verplicht)
version Versie van de bron string

WarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het war-bestand string
serverVersion Serverversie, momenteel wordt alleen Apache Tomcat ondersteund string
type Type van de geüploade bron 'Oorlog' (verplicht)

Gebruiksvoorbeelden

Snelstartsjablonen voor Azure

De volgende Azure Quickstart-sjablonen deployen dit resourcetype.

Template Description
Deploy een eenvoudige Azure Spring Apps microserviceapplicatie

Deploy naar Azure
Deze template deployeert een eenvoudige Azure Spring Apps microservice-applicatie om op Azure te draaien.

Resourcedefinitie van Terraform (AzAPI-provider)

Het resourcetype Spring/apps/implementaties kan worden geïmplementeerd met bewerkingen die zijn gericht op:

  • Resourcegroepen

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Formaat van de bron

Als u een resource voor Microsoft.AppPlatform/Spring/apps/implementaties wilt maken, voegt u de volgende Terraform toe aan uw sjabloon.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.AppPlatform/Spring/apps/deployments@2023-12-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      active = bool
      deploymentSettings = {
        addonConfigs = {
          {customized property} = ?
        }
        apms = [
          {
            resourceId = "string"
          }
        ]
        containerProbeSettings = {
          disableProbe = bool
        }
        environmentVariables = {
          {customized property} = "string"
        }
        livenessProbe = {
          disableProbe = bool
          failureThreshold = int
          initialDelaySeconds = int
          periodSeconds = int
          probeAction = {
            type = "string"
            // For remaining properties, see ProbeAction objects
          }
          successThreshold = int
          timeoutSeconds = int
        }
        readinessProbe = {
          disableProbe = bool
          failureThreshold = int
          initialDelaySeconds = int
          periodSeconds = int
          probeAction = {
            type = "string"
            // For remaining properties, see ProbeAction objects
          }
          successThreshold = int
          timeoutSeconds = int
        }
        resourceRequests = {
          cpu = "string"
          memory = "string"
        }
        startupProbe = {
          disableProbe = bool
          failureThreshold = int
          initialDelaySeconds = int
          periodSeconds = int
          probeAction = {
            type = "string"
            // For remaining properties, see ProbeAction objects
          }
          successThreshold = int
          timeoutSeconds = int
        }
        terminationGracePeriodSeconds = int
      }
      source = {
        version = "string"
        type = "string"
        // For remaining properties, see UserSourceInfo objects
      }
    }
    sku = {
      capacity = int
      name = "string"
      tier = "string"
    }
  }
}

ProbeAction-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor ExecAction-:

{
  command = [
    "string"
  ]
  type = "ExecAction"
}

Gebruik voor HTTPGetAction-:

{
  path = "string"
  scheme = "string"
  type = "HTTPGetAction"
}

Gebruik voor TCPSocketAction:

{
  type = "TCPSocketAction"
}

UserSourceInfo-objecten

Stel de eigenschap type in om het type object op te geven.

Gebruik voor BuildResult-:

{
  buildResultId = "string"
  type = "BuildResult"
}

Gebruik voor Container:

{
  customContainer = {
    args = [
      "string"
    ]
    command = [
      "string"
    ]
    containerImage = "string"
    imageRegistryCredential = {
      password = "string"
      username = "string"
    }
    languageFramework = "string"
    server = "string"
  }
  type = "Container"
}

Gebruik voor Jar-:

{
  jvmOptions = "string"
  relativePath = "string"
  runtimeVersion = "string"
  type = "Jar"
}

Gebruik voor NetCoreZip-:

{
  netCoreMainEntryPath = "string"
  relativePath = "string"
  runtimeVersion = "string"
  type = "NetCoreZip"
}

Gebruik voor bron:

{
  artifactSelector = "string"
  relativePath = "string"
  runtimeVersion = "string"
  type = "Source"
}

Gebruik voor oorlog:

{
  jvmOptions = "string"
  relativePath = "string"
  runtimeVersion = "string"
  serverVersion = "string"
  type = "War"
}

Eigenschapswaarden

Microsoft.AppPlatform/Spring/apps/deployments

Name Description Value
name De resourcenaam Touwtje (verplicht)
parent_id De id van de resource die het bovenliggende item voor deze resource is. Id voor resource van het type: Spring/apps
properties Eigenschappen van de implementatieresource DeploymentResourceProperties
sku SKU van de implementatieresource Sku
type Het resourcetype "Microsoft.AppPlatform/Spring/apps/deployments@2023-12-01"

ApmReference

Name Description Value
resourceId Resource-id van de APM Touwtje (verplicht)

BuildResultUserSourceInfo

Name Description Value
buildResultId Resource-id van een bestaand voltooid buildresultaat onder hetzelfde Spring-exemplaar. string
type Type van de geüploade bron 'BuildResult' (verplicht)

ContainerProbeSettings

Name Description Value
disableProbe Geeft aan of de liveness- en gereedheidstest wordt uitgeschakeld bool

CustomContainer

Name Description Value
args Argumenten voor het invoerpunt. De CMD van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
command Invoerpuntmatrix. Niet uitgevoerd in een shell. Het ENTRYPOINT van de docker-installatiekopieën wordt gebruikt als dit niet is opgegeven. string[]
containerImage Containerinstallatiekopieën van de aangepaste container. Dit moet de vorm hebben van <opslagplaats>:<tag> zonder de servernaam van het register string
imageRegistryCredential Referentie van het installatiekopieënregister ImageRegistryCredential
languageFramework Taalframework van de geüploade containerinstallatiekopieën. Ondersteunde waarden: 'springboot', '', null. string
server De naam van het register dat de containerinstallatiekopieën bevat string

CustomContainerUserSourceInfo

Name Description Value
customContainer Aangepaste containerpayload CustomContainer
type Type van de geüploade bron 'Container' (verplicht)

DeploymentResourceProperties

Name Description Value
active Geeft aan of de implementatie actief is bool
deploymentSettings Implementatie-instellingen van de implementatie DeploymentSettings
source Geüploade brongegevens van de implementatie. UserSourceInfo

DeploymentSettings

Name Description Value
addonConfigs Verzameling invoegtoepassingen DeploymentSettingsAddonConfigs
apms Verzameling van ApmReferences ApmReference[]
containerProbeSettings Testinstellingen voor containerlevendheid en gereedheid ContainerProbeSettings
environmentVariables Verzameling van omgevingsvariabelen DeploymentSettingsEnvironmentVariables
livenessProbe Periodieke test van de liveness van het App-exemplaar. Het app-exemplaar wordt opnieuw gestart als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
readinessProbe Periodieke test van gereedheid voor App Instance Service. App-exemplaar wordt verwijderd uit service-eindpunten als de test mislukt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
resourceRequests De aangevraagde resourcehoeveelheid voor de vereiste CPU en het vereiste geheugen. Het wordt aanbevolen dat het gebruik van dit veld om de vereiste CPU en het geheugen weer te geven, de oude veld cpu en memoryInGB later worden afgeschaft. ResourceRequests
startupProbe StartupProbe geeft aan dat het app-exemplaar is geïnitialiseerd. Indien opgegeven, worden er geen andere tests uitgevoerd totdat dit is voltooid. Als deze test mislukt, wordt de pod opnieuw opgestart, net zoals de livenessProbe is mislukt. Dit kan worden gebruikt voor het leveren van verschillende testparameters aan het begin van de levenscyclus van een app-exemplaar, wanneer het lang kan duren om gegevens te laden of een cache te warmen, dan tijdens een gestage bewerking. Dit kan niet worden bijgewerkt. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Probe
terminationGracePeriodSeconds Optionele duur in seconden moet het app-exemplaar probleemloos worden beëindigd. Kan worden verminderd in de verwijderingsaanvraag. De waarde moet een niet-negatief geheel getal zijn. De waarde nul geeft aan dat stop onmiddellijk via het kill-signaal (geen kans om af te sluiten) aangeeft. Als deze waarde nul is, wordt in plaats daarvan de standaard respijtperiode gebruikt. De respijtperiode is de duur in seconden nadat de processen die in het app-exemplaar worden uitgevoerd, een beëindigingssignaal worden verzonden en de tijd waarop de processen geforceerd worden gestopt met een kill-signaal. Stel deze waarde langer in dan de verwachte opschoontijd voor uw proces. De standaardwaarde is 90 seconden. int

DeploymentSettingsAddonConfigs

Name Description Value

DeploymentSettingsEnvironmentVariables

Name Description Value

ExecAction

Name Description Value
command De opdracht is de opdrachtregel die in de container moet worden uitgevoerd. De werkmap voor de opdracht is root ('/') in het bestandssysteem van de container. De opdracht wordt niet uitgevoerd in een shell, dus traditionele shell-instructies ('|', enzovoort) werken niet. Als u een shell wilt gebruiken, moet u deze shell expliciet aanroepen. De afsluitstatus van 0 wordt behandeld als live/gezond en niet-nul is beschadigd. string[]
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'ExecAction' (verplicht)

HttpGetAction

Name Description Value
path Pad naar access op de HTTP-server. string
scheme Schema dat moet worden gebruikt om verbinding te maken met de host. Standaard ingesteld op HTTP.

Mogelijke opsommingswaarden:
- "HTTP" betekent dat het gebruikte schema wordt http://
- "HTTPS" betekent dat het gebruikte schema wordt https://
'HTTP'
'HTTPS'
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'HTTPGetAction' (verplicht)

ImageRegistryCredential

Name Description Value
password Het wachtwoord van de referentie voor het installatiekopieënregister string
username De gebruikersnaam van de referentie voor het installatiekopieënregister string

JarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het Jar-bestand string
type Type van de geüploade bron 'Pot' (verplicht)

NetCoreZipUploadedUserSourceInfo

Name Description Value
netCoreMainEntryPath Het pad naar het .NET-uitvoerbaar bestand ten opzichte van zip-root string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtime-versie van het .Net-bestand string
type Type van de geüploade bron 'NetCoreZip' (verplicht)

Probe

Name Description Value
disableProbe Geef aan of de test is uitgeschakeld. bool (verplicht)
failureThreshold Minimale opeenvolgende fouten voor de test die als mislukt worden beschouwd nadat de test is geslaagd. De minimumwaarde is 1. int
initialDelaySeconds Aantal seconden nadat het app-exemplaar is gestart voordat tests worden gestart. Meer informatie: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes int
periodSeconds Hoe vaak (in seconden) de test moet worden uitgevoerd. De minimumwaarde is 1. int
probeAction De actie van de test. ProbeAction
successThreshold Minimale opeenvolgende successen voor de test die als geslaagd worden beschouwd nadat deze is mislukt. Moet 1 zijn voor leven en opstarten. De minimumwaarde is 1. int
timeoutSeconds Aantal seconden waarna er een time-out optreedt voor de test. De minimumwaarde is 1. int

ProbeAction

Name Description Value
type Ingesteld op ExecAction voor het type ExecAction. Ingesteld op HTTPGetAction voor het type HttpGetAction. Ingesteld op TCPSocketAction voor het type TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (verplicht)

ResourceRequests

Name Description Value
cpu Vereiste CPU. 1 kern kan worden vertegenwoordigd door 1 of 1000m. Dit moet 500 m of 1 zijn voor de Basic-laag en {500m, 1, 2, 3, 4} voor de Standard-laag. string
memory Vereist geheugen. 1 GB kan worden vertegenwoordigd door 1Gi of 1024Mi. Dit moet {512Mi, 1Gi, 2Gi} zijn voor de Basic-laag en {512Mi, 1Gi, 2Gi, ..., 8Gi} voor de Standard-laag. string

Sku

Name Description Value
capacity Huidige capaciteit van de doelresource int
name Naam van de SKU string
tier Laag van de SKU string

SourceUploadedUserSourceInfo

Name Description Value
artifactSelector Selector voor het artefact dat moet worden gebruikt voor de implementatie voor projecten met meerdere modules. Dit moet zijn
het relatieve pad naar het doelmodule/project.
string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het bronbestand string
type Type van de geüploade bron 'Bron' (verplicht)

TCPSocketAction

Name Description Value
type Het type actie dat moet worden uitgevoerd om de statuscontrole uit te voeren. 'TCPSocketAction' (verplicht)

UserSourceInfo

Name Description Value
type Ingesteld op BuildResult voor het type BuildResultUserSourceInfo. Ingesteld op 'Container' voor het type CustomContainerUserSourceInfo. Ingesteld op Jar voor het type JarUploadedUserSourceInfo. Ingesteld op 'NetCoreZip' voor het type NetCoreZipUploadedUserSourceInfo. Ingesteld op 'Bron' voor het type SourceUploadedUserSourceInfo. Stel in op 'War' voor het type WarUploadedUserSourceInfo. 'BuildResult'
'Container'
'Jar'
'NetCoreZip'
'Source'
'Oorlog' (verplicht)
version Versie van de bron string

WarUploadedUserSourceInfo

Name Description Value
jvmOptions JVM-parameter string
relativePath Relatieve route van de storage die de bron opslaat string
runtimeVersion Runtimeversie van het war-bestand string
serverVersion Serverversie, momenteel wordt alleen Apache Tomcat ondersteund string
type Type van de geüploade bron 'Oorlog' (verplicht)

Gebruiksvoorbeelden

Terraform-monsters

Een eenvoudig voorbeeld van het implementeren van Spring Cloud Deployment.

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" "Spring" {
  type      = "Microsoft.AppPlatform/Spring@2023-05-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      zoneRedundant = false
    }
    sku = {
      name = "E0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "app" {
  type      = "Microsoft.AppPlatform/Spring/apps@2023-05-01-preview"
  parent_id = azapi_resource.Spring.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      customPersistentDisks = [
      ]
      enableEndToEndTLS = false
      public            = false
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "deployment" {
  type      = "Microsoft.AppPlatform/Spring/apps/deployments@2023-05-01-preview"
  parent_id = azapi_resource.app.id
  name      = var.resource_name
  body = {
    properties = {
      deploymentSettings = {
        environmentVariables = {
        }
      }
      source = {
        customContainer = {
          args = [
          ]
          command = [
          ]
          containerImage    = "springio/gs-spring-boot-docker"
          languageFramework = ""
          server            = "docker.io"
        }
        type = "Container"
      }
    }
    sku = {
      capacity = 1
      name     = "E0"
      tier     = "Enterprise"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}