Microsoft. AppPlatform Spring/apps/deployments 2023-11-preview

Observações

Nota: Azure Spring Apps Application Deployments (Microsoft. AppPlatform/Spring/apps/deployments) está agora obsoleto e será retirado a 31-05-2028. Consulte https://aka.ms/asaretirement para obter mais informações.

Definição de recurso Bicep

O tipo de recurso Spring/apps/deployments pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar uma Microsoft. AppPlatform/Spring/apps/deployments, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.AppPlatform/Spring/apps/deployments@2023-11-01-preview' = {
  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'
      }
      scale: {
        maxReplicas: int
        minReplicas: int
        rules: [
          {
            azureQueue: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              queueLength: int
              queueName: 'string'
            }
            custom: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
              type: 'string'
            }
            http: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: 'string'
              }
            }
            name: 'string'
            tcp: {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: {
                {customized property}: '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'
  }
}

Objetos UserSourceInfo

Defina a propriedade type para especificar o tipo de objeto.

Para BuildResult , use:

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

Para o recipiente, use:

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

Para o frasco, use:

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

Para NetCoreZip , use:

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

Para Source, use:

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

Para a guerra, use:

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

Objetos ProbeAction

Defina a propriedade type para especificar o tipo de objeto.

Para ExecAction, use:

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

Para HTTPGetAction , use:

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

Para TCPSocketAction, use:

{
  type: 'TCPSocketAction'
}

Valores de propriedade

Microsoft. AppPlatform/Spring/apps/deployments

Nome Descrição Valor
nome O nome do recurso string (obrigatório)
elemento principal No Bicep, podes especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte Recurso filho fora do recurso pai.
Nome simbólico para recurso do tipo: Spring/apps
propriedades Propriedades do recurso de implantação DeploymentResourceProperties
SKU Sku do recurso de implantação Referência

ApmReference

Nome Descrição Valor
identificadorDeRecurso ID do recurso do APM string (obrigatório)

BuildResultUserSourceInfo

Nome Descrição Valor
buildResultId ID de recurso de um resultado de compilação bem-sucedido existente na mesma instância do Spring. cadeia (de caracteres)
tipo Tipo de fonte carregada 'BuildResult' (obrigatório)

ContainerProbeSettings

Nome Descrição Valor
desativarSonda Indica se a sonda de vivacidade e prontidão desativa Bool

Recipiente Personalizado

Nome Descrição Valor
Args Argumentos para o ponto de entrada. O CMD da imagem do docker é usado se isso não for fornecido. string[]
comando Matriz de ponto de entrada. Não executado dentro de um shell. O ENTRYPOINT da imagem do docker é usado se isso não for fornecido. string[]
containerImage Imagem de contêiner do contêiner personalizado. Isso deve ser na forma de <repositório>:<tag> sem o nome do servidor do registro cadeia (de caracteres)
imageRegistryCredential Credencial do registo de imagens ImageRegistryCredential
languageFramework Estrutura de linguagem da imagem de contêiner carregada. Valores suportados: "springboot", "", null. cadeia (de caracteres)
servidor O nome do registro que contém a imagem do contêiner cadeia (de caracteres)

CustomContainerUserSourceInfo

Nome Descrição Valor
customContainer Carga útil personalizada do contentor CustomContainer
tipo Tipo de fonte carregada «Contentor» (obrigatório)

CustomScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
cadeia (de caracteres)

CustomScaleRuleMetadata

Nome Descrição Valor

DeploymentResourceProperties

Nome Descrição Valor
ativo Indica se a implantação está ativa Bool
deploymentSettings Configurações de implantação da implantação DeploymentSettings
origem Informações de origem carregadas da implantação. UserSourceInfo

DeploymentSettings

Nome Descrição Valor
addonConfigs Coleção de addons DeploymentSettingsAddonConfigs
APMS Coleção de ApmReferences ApmReference[]
containerProbeSettings Configurações da sonda de prontidão e vivacidade do contêiner ContainerProbeSettings
variáveis de ambiente Recolha de variáveis de ambiente DeploymentSettingsEnvironmentVariables
livenessSonda Teste periódico da vivacidade da instância do aplicativo. A Instância do Aplicativo será reiniciada se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
prontidãoSonda Investigação periódica da prontidão do serviço de Instância de Aplicativo. A Instância do Aplicativo será removida dos pontos de extremidade do serviço se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
resourceRequests A quantidade de recursos solicitada para CPU e memória necessárias. Recomenda-se que usando este campo para representar a CPU e a memória necessárias, a cpu de campo antigo e o memoryInGB serão preteridos posteriormente. ResourceRequests
ajustar Escalabilidade de propriedades para o Azure Spring Apps App Instance. Escala
startupProbe StartupProbe indica que a Instância do Aplicativo foi inicializada com êxito. Se especificado, nenhum outro teste será executado até que isso seja concluído com êxito. Se esta sonda falhar, o Pod será reiniciado, como se a livenessProbe falhasse. Isso pode ser usado para fornecer parâmetros de teste diferentes no início do ciclo de vida de uma instância de aplicativo, quando pode levar muito tempo para carregar dados ou aquecer um cache, do que durante a operação em estado estacionário. Isso não pode ser atualizado. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
terminaçãoGracePeriodSeconds Duração opcional: em segundos, a Instância do Aplicativo precisa ser encerrada normalmente. Pode ser diminuído na solicitação de exclusão. O valor deve ser inteiro não negativo. O valor zero indica parar imediatamente através do sinal de morte (sem oportunidade de encerrar). Se esse valor for nulo, o período de carência padrão será usado. O período de carência é a duração em segundos após os processos em execução na Instância do Aplicativo receberem um sinal de encerramento e o tempo em que os processos são interrompidos à força com um sinal de eliminação. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o seu processo. O padrão é 90 segundos. Int

DeploymentSettingsAddonConfigs

Nome Descrição Valor

DeploymentSettingsEnvironmentVariables

Nome Descrição Valor

ExecAction

Nome Descrição Valor
comando Command é a linha de comando a ser executada dentro do contêiner, o diretório de trabalho para o comando é root ('/') no sistema de arquivos do contêiner. O comando não é executado dentro de um shell, então as instruções tradicionais do shell ('|', etc) não funcionarão. Para usar um shell, você precisa chamar explicitamente para esse shell. O status de saída de 0 é tratado como vivo/saudável e diferente de zero não é íntegro. string[]
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'ExecAction' (obrigatório)

HttpGetAction

Nome Descrição Valor
caminho Caminho de acesso no servidor HTTP. cadeia (de caracteres)
Esquema Esquema a ser usado para se conectar ao host. O padrão é HTTP.

Valores possíveis de enum:
- "HTTP" significa que o esquema utilizado será http://
- "HTTPS" significa que o esquema utilizado será https://
'HTTP'
'HTTPS'
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'HTTPGetAction' (obrigatório)

HttpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor

ImageRegistryCredential

Nome Descrição Valor
palavra-passe A senha da credencial de registro de imagem cadeia (de caracteres)
nome de utilizador O nome de usuário da credencial do registro de imagem cadeia (de caracteres)

JarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão em tempo de execução do arquivo Jar cadeia (de caracteres)
tipo Tipo de fonte carregada 'Jar' (obrigatório)

NetCoreZipUploadedUserSourceInfo

Nome Descrição Valor
netCoreMainEntryPath O caminho para o executável .NET relativamente à raiz zip cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo .Net cadeia (de caracteres)
tipo Tipo de fonte carregada 'NetCoreZip' (obrigatório)

Sonda

Nome Descrição Valor
desativarSonda Indique se a sonda está desativada. bool (obrigatório)
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O valor mínimo é 1. Int
initialDelaySeconds Número de segundos após o início da Instância do Aplicativo antes que os testes sejam iniciados. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
segundosPeríodo Com que frequência (em segundos) realizar a sonda. O valor mínimo é 1. Int
probeAction A ação da sonda. ProbeAction
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. Deve ser 1 para liveness e startup. O valor mínimo é 1. Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O valor mínimo é 1. Int

ProbeAction

Nome Descrição Valor
tipo Defina como 'ExecAction' para o tipo ExecAction. Defina como 'HTTPGetAction' para o tipo HttpGetAction. Defina como 'TCPSocketAction' para o tipo TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (obrigatório)

QueueScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
comprimento da fila Comprimento da fila. Int
Nome da Fila Nome da fila. cadeia (de caracteres)

ResourceRequests

Nome Descrição Valor
CPU CPU necessária. 1 núcleo pode ser representado por 1 ou 1000m. Isso deve ser 500m ou 1 para a camada Basic e {500m, 1, 2, 3, 4} para a camada Standard. cadeia (de caracteres)
memória Memória necessária. 1 GB pode ser representado por 1Gi ou 1024Mi. Isso deve ser {512Mi, 1Gi, 2Gi} para a camada Basic e {512Mi, 1Gi, 2Gi, ..., 8Gi} para a camada Standard. cadeia (de caracteres)

Escala

Nome Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Nome Descrição Valor
azureQueue Escalonamento baseado em Azure Queue. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
nome Nome da regra de escala cadeia (de caracteres)
TCP Dimensionamento baseado em solicitações Tcp. TcpScaleRule

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do Azure Spring Apps App Instance de onde se extraem os parâmetros de autenticação. cadeia (de caracteres)
triggerParâmetro Parâmetro Trigger que usa o segredo cadeia (de caracteres)

Referência

Nome Descrição Valor
capacidade Capacidade atual do recurso de destino Int
nome Nome do Sku cadeia (de caracteres)
escalão Nível do Sku cadeia (de caracteres)

SourceUploadedUserSourceInfo

Nome Descrição Valor
artifactSelector Seletor para o artefato a ser usado para a implantação de projetos multimódulo. Isto deve ser
O caminho relativo para o módulo/projeto de destino.
cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de origem cadeia (de caracteres)
tipo Tipo de fonte carregada 'Fonte' (obrigatório)

TcpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor

TCPSocketAction

Nome Descrição Valor
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'TCPSocketAction' (obrigatório)

UserSourceInfo

Nome Descrição Valor
tipo Defina como 'BuildResult' para o tipo BuildResultUserSourceInfo. Defina como 'Container' para o tipo CustomContainerUserSourceInfo. Defina como 'Jar' para o tipo JarUploadedUserSourceInfo. Defina como 'NetCoreZip' para digitar NetCoreZipUploadedUserSourceInfo. Defina como 'Source' para o tipo SourceUploadedUserSourceInfo. Defina como 'War' para o tipo WarUploadedUserSourceInfo. 'BuildResult'
«Contentor»
'Jarro'
'NetCoreZip'
'Fonte'
'Guerra' (obrigatório)
versão Versão da fonte cadeia (de caracteres)

WarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de guerra cadeia (de caracteres)
versão do servidor Versão do servidor, atualmente apenas o Apache Tomcat é suportado cadeia (de caracteres)
tipo Tipo de fonte carregada 'Guerra' (obrigatório)

Exemplos de uso

Amostras de Bicep

Um exemplo básico de implantação do 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'
  }
}

Exemplos de início rápido do Azure

Os seguintes modelos Azure Quickstart contêm Bicep exemplos para implementar este tipo de recurso.

Ficheiro Bicep Descrição
Implementar uma aplicação simples Azure Spring Apps microserviços Este modelo implementa uma aplicação simples de microserviços Azure Spring Apps para correr no Azure.

Definição de recurso de modelo ARM

O tipo de recurso Spring/apps/deployments pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar uma Microsoft. AppPlatform/Spring/apps/deployments, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.AppPlatform/Spring/apps/deployments",
  "apiVersion": "2023-11-01-preview",
  "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"
      },
      "scale": {
        "maxReplicas": "int",
        "minReplicas": "int",
        "rules": [
          {
            "azureQueue": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "queueLength": "int",
              "queueName": "string"
            },
            "custom": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              },
              "type": "string"
            },
            "http": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "string"
              }
            },
            "name": "string",
            "tcp": {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {
                "{customized property}": "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"
  }
}

Objetos UserSourceInfo

Defina a propriedade type para especificar o tipo de objeto.

Para BuildResult , use:

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

Para o recipiente, use:

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

Para o frasco, use:

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

Para NetCoreZip , use:

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

Para Source, use:

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

Para a guerra, use:

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

Objetos ProbeAction

Defina a propriedade type para especificar o tipo de objeto.

Para ExecAction, use:

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

Para HTTPGetAction , use:

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

Para TCPSocketAction, use:

{
  "type": "TCPSocketAction"
}

Valores de propriedade

Microsoft. AppPlatform/Spring/apps/deployments

Nome Descrição Valor
Versão da API A versão api '2023-11-01-pré-visualização'
nome O nome do recurso string (obrigatório)
propriedades Propriedades do recurso de implantação DeploymentResourceProperties
SKU Sku do recurso de implantação Referência
tipo O tipo de recurso 'Microsoft. AppPlatform/Spring/apps/deployments

ApmReference

Nome Descrição Valor
identificadorDeRecurso ID do recurso do APM string (obrigatório)

BuildResultUserSourceInfo

Nome Descrição Valor
buildResultId ID de recurso de um resultado de compilação bem-sucedido existente na mesma instância do Spring. cadeia (de caracteres)
tipo Tipo de fonte carregada 'BuildResult' (obrigatório)

ContainerProbeSettings

Nome Descrição Valor
desativarSonda Indica se a sonda de vivacidade e prontidão desativa Bool

Recipiente Personalizado

Nome Descrição Valor
Args Argumentos para o ponto de entrada. O CMD da imagem do docker é usado se isso não for fornecido. string[]
comando Matriz de ponto de entrada. Não executado dentro de um shell. O ENTRYPOINT da imagem do docker é usado se isso não for fornecido. string[]
containerImage Imagem de contêiner do contêiner personalizado. Isso deve ser na forma de <repositório>:<tag> sem o nome do servidor do registro cadeia (de caracteres)
imageRegistryCredential Credencial do registo de imagens ImageRegistryCredential
languageFramework Estrutura de linguagem da imagem de contêiner carregada. Valores suportados: "springboot", "", null. cadeia (de caracteres)
servidor O nome do registro que contém a imagem do contêiner cadeia (de caracteres)

CustomContainerUserSourceInfo

Nome Descrição Valor
customContainer Carga útil personalizada do contentor CustomContainer
tipo Tipo de fonte carregada «Contentor» (obrigatório)

CustomScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
cadeia (de caracteres)

CustomScaleRuleMetadata

Nome Descrição Valor

DeploymentResourceProperties

Nome Descrição Valor
ativo Indica se a implantação está ativa Bool
deploymentSettings Configurações de implantação da implantação DeploymentSettings
origem Informações de origem carregadas da implantação. UserSourceInfo

DeploymentSettings

Nome Descrição Valor
addonConfigs Coleção de addons DeploymentSettingsAddonConfigs
APMS Coleção de ApmReferences ApmReference[]
containerProbeSettings Configurações da sonda de prontidão e vivacidade do contêiner ContainerProbeSettings
variáveis de ambiente Recolha de variáveis de ambiente DeploymentSettingsEnvironmentVariables
livenessSonda Teste periódico da vivacidade da instância do aplicativo. A Instância do Aplicativo será reiniciada se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
prontidãoSonda Investigação periódica da prontidão do serviço de Instância de Aplicativo. A Instância do Aplicativo será removida dos pontos de extremidade do serviço se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
resourceRequests A quantidade de recursos solicitada para CPU e memória necessárias. Recomenda-se que usando este campo para representar a CPU e a memória necessárias, a cpu de campo antigo e o memoryInGB serão preteridos posteriormente. ResourceRequests
ajustar Escalabilidade de propriedades para o Azure Spring Apps App Instance. Escala
startupProbe StartupProbe indica que a Instância do Aplicativo foi inicializada com êxito. Se especificado, nenhum outro teste será executado até que isso seja concluído com êxito. Se esta sonda falhar, o Pod será reiniciado, como se a livenessProbe falhasse. Isso pode ser usado para fornecer parâmetros de teste diferentes no início do ciclo de vida de uma instância de aplicativo, quando pode levar muito tempo para carregar dados ou aquecer um cache, do que durante a operação em estado estacionário. Isso não pode ser atualizado. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
terminaçãoGracePeriodSeconds Duração opcional: em segundos, a Instância do Aplicativo precisa ser encerrada normalmente. Pode ser diminuído na solicitação de exclusão. O valor deve ser inteiro não negativo. O valor zero indica parar imediatamente através do sinal de morte (sem oportunidade de encerrar). Se esse valor for nulo, o período de carência padrão será usado. O período de carência é a duração em segundos após os processos em execução na Instância do Aplicativo receberem um sinal de encerramento e o tempo em que os processos são interrompidos à força com um sinal de eliminação. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o seu processo. O padrão é 90 segundos. Int

DeploymentSettingsAddonConfigs

Nome Descrição Valor

DeploymentSettingsEnvironmentVariables

Nome Descrição Valor

ExecAction

Nome Descrição Valor
comando Command é a linha de comando a ser executada dentro do contêiner, o diretório de trabalho para o comando é root ('/') no sistema de arquivos do contêiner. O comando não é executado dentro de um shell, então as instruções tradicionais do shell ('|', etc) não funcionarão. Para usar um shell, você precisa chamar explicitamente para esse shell. O status de saída de 0 é tratado como vivo/saudável e diferente de zero não é íntegro. string[]
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'ExecAction' (obrigatório)

HttpGetAction

Nome Descrição Valor
caminho Caminho de acesso no servidor HTTP. cadeia (de caracteres)
Esquema Esquema a ser usado para se conectar ao host. O padrão é HTTP.

Valores possíveis de enum:
- "HTTP" significa que o esquema utilizado será http://
- "HTTPS" significa que o esquema utilizado será https://
'HTTP'
'HTTPS'
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'HTTPGetAction' (obrigatório)

HttpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor

ImageRegistryCredential

Nome Descrição Valor
palavra-passe A senha da credencial de registro de imagem cadeia (de caracteres)
nome de utilizador O nome de usuário da credencial do registro de imagem cadeia (de caracteres)

JarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão em tempo de execução do arquivo Jar cadeia (de caracteres)
tipo Tipo de fonte carregada 'Jar' (obrigatório)

NetCoreZipUploadedUserSourceInfo

Nome Descrição Valor
netCoreMainEntryPath O caminho para o executável .NET relativamente à raiz zip cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo .Net cadeia (de caracteres)
tipo Tipo de fonte carregada 'NetCoreZip' (obrigatório)

Sonda

Nome Descrição Valor
desativarSonda Indique se a sonda está desativada. bool (obrigatório)
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O valor mínimo é 1. Int
initialDelaySeconds Número de segundos após o início da Instância do Aplicativo antes que os testes sejam iniciados. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
segundosPeríodo Com que frequência (em segundos) realizar a sonda. O valor mínimo é 1. Int
probeAction A ação da sonda. ProbeAction
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. Deve ser 1 para liveness e startup. O valor mínimo é 1. Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O valor mínimo é 1. Int

ProbeAction

Nome Descrição Valor
tipo Defina como 'ExecAction' para o tipo ExecAction. Defina como 'HTTPGetAction' para o tipo HttpGetAction. Defina como 'TCPSocketAction' para o tipo TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (obrigatório)

QueueScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
comprimento da fila Comprimento da fila. Int
Nome da Fila Nome da fila. cadeia (de caracteres)

ResourceRequests

Nome Descrição Valor
CPU CPU necessária. 1 núcleo pode ser representado por 1 ou 1000m. Isso deve ser 500m ou 1 para a camada Basic e {500m, 1, 2, 3, 4} para a camada Standard. cadeia (de caracteres)
memória Memória necessária. 1 GB pode ser representado por 1Gi ou 1024Mi. Isso deve ser {512Mi, 1Gi, 2Gi} para a camada Basic e {512Mi, 1Gi, 2Gi, ..., 8Gi} para a camada Standard. cadeia (de caracteres)

Escala

Nome Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Nome Descrição Valor
azureQueue Escalonamento baseado em Azure Queue. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
nome Nome da regra de escala cadeia (de caracteres)
TCP Dimensionamento baseado em solicitações Tcp. TcpScaleRule

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do Azure Spring Apps App Instance de onde se extraem os parâmetros de autenticação. cadeia (de caracteres)
triggerParâmetro Parâmetro Trigger que usa o segredo cadeia (de caracteres)

Referência

Nome Descrição Valor
capacidade Capacidade atual do recurso de destino Int
nome Nome do Sku cadeia (de caracteres)
escalão Nível do Sku cadeia (de caracteres)

SourceUploadedUserSourceInfo

Nome Descrição Valor
artifactSelector Seletor para o artefato a ser usado para a implantação de projetos multimódulo. Isto deve ser
O caminho relativo para o módulo/projeto de destino.
cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de origem cadeia (de caracteres)
tipo Tipo de fonte carregada 'Fonte' (obrigatório)

TcpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor

TCPSocketAction

Nome Descrição Valor
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'TCPSocketAction' (obrigatório)

UserSourceInfo

Nome Descrição Valor
tipo Defina como 'BuildResult' para o tipo BuildResultUserSourceInfo. Defina como 'Container' para o tipo CustomContainerUserSourceInfo. Defina como 'Jar' para o tipo JarUploadedUserSourceInfo. Defina como 'NetCoreZip' para digitar NetCoreZipUploadedUserSourceInfo. Defina como 'Source' para o tipo SourceUploadedUserSourceInfo. Defina como 'War' para o tipo WarUploadedUserSourceInfo. 'BuildResult'
«Contentor»
'Jarro'
'NetCoreZip'
'Fonte'
'Guerra' (obrigatório)
versão Versão da fonte cadeia (de caracteres)

WarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de guerra cadeia (de caracteres)
versão do servidor Versão do servidor, atualmente apenas o Apache Tomcat é suportado cadeia (de caracteres)
tipo Tipo de fonte carregada 'Guerra' (obrigatório)

Exemplos de uso

Modelos de Início Rápido do Azure

Os seguintes modelos Azure Quickstart implementam este tipo de recurso.

Modelo Descrição
Implementar uma aplicação simples Azure Spring Apps microserviços

Implementar para Azure
Este modelo implementa uma aplicação simples de microserviços Azure Spring Apps para correr no Azure.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso Spring/apps/deployments pode ser implantado com operações que visam:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar uma Microsoft. Recurso AppPlatform/Spring/apps/deployments, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.AppPlatform/Spring/apps/deployments@2023-11-01-preview"
  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"
        }
        scale = {
          maxReplicas = int
          minReplicas = int
          rules = [
            {
              azureQueue = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                queueLength = int
                queueName = "string"
              }
              custom = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
                type = "string"
              }
              http = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "string"
                }
              }
              name = "string"
              tcp = {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                metadata = {
                  {customized property} = "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"
    }
  }
}

Objetos UserSourceInfo

Defina a propriedade type para especificar o tipo de objeto.

Para BuildResult , use:

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

Para o recipiente, use:

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

Para o frasco, use:

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

Para NetCoreZip , use:

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

Para Source, use:

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

Para a guerra, use:

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

Objetos ProbeAction

Defina a propriedade type para especificar o tipo de objeto.

Para ExecAction, use:

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

Para HTTPGetAction , use:

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

Para TCPSocketAction, use:

{
  type = "TCPSocketAction"
}

Valores de propriedade

Microsoft. AppPlatform/Spring/apps/deployments

Nome Descrição Valor
nome O nome do recurso string (obrigatório)
parent_id A ID do recurso que é o pai para este recurso. ID do recurso do tipo: Spring/apps
propriedades Propriedades do recurso de implantação DeploymentResourceProperties
SKU Sku do recurso de implantação Referência
tipo O tipo de recurso "Microsoft. AppPlatform/Spring/apps/deployments@2023-11-01-preview"

ApmReference

Nome Descrição Valor
identificadorDeRecurso ID do recurso do APM string (obrigatório)

BuildResultUserSourceInfo

Nome Descrição Valor
buildResultId ID de recurso de um resultado de compilação bem-sucedido existente na mesma instância do Spring. cadeia (de caracteres)
tipo Tipo de fonte carregada 'BuildResult' (obrigatório)

ContainerProbeSettings

Nome Descrição Valor
desativarSonda Indica se a sonda de vivacidade e prontidão desativa Bool

Recipiente Personalizado

Nome Descrição Valor
Args Argumentos para o ponto de entrada. O CMD da imagem do docker é usado se isso não for fornecido. string[]
comando Matriz de ponto de entrada. Não executado dentro de um shell. O ENTRYPOINT da imagem do docker é usado se isso não for fornecido. string[]
containerImage Imagem de contêiner do contêiner personalizado. Isso deve ser na forma de <repositório>:<tag> sem o nome do servidor do registro cadeia (de caracteres)
imageRegistryCredential Credencial do registo de imagens ImageRegistryCredential
languageFramework Estrutura de linguagem da imagem de contêiner carregada. Valores suportados: "springboot", "", null. cadeia (de caracteres)
servidor O nome do registro que contém a imagem do contêiner cadeia (de caracteres)

CustomContainerUserSourceInfo

Nome Descrição Valor
customContainer Carga útil personalizada do contentor CustomContainer
tipo Tipo de fonte carregada «Contentor» (obrigatório)

CustomScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala personalizada. CustomScaleRuleMetadata
tipo Tipo de regra de escala personalizada
Por exemplo: Azure-ServiceBus, Redis etc.
cadeia (de caracteres)

CustomScaleRuleMetadata

Nome Descrição Valor

DeploymentResourceProperties

Nome Descrição Valor
ativo Indica se a implantação está ativa Bool
deploymentSettings Configurações de implantação da implantação DeploymentSettings
origem Informações de origem carregadas da implantação. UserSourceInfo

DeploymentSettings

Nome Descrição Valor
addonConfigs Coleção de addons DeploymentSettingsAddonConfigs
APMS Coleção de ApmReferences ApmReference[]
containerProbeSettings Configurações da sonda de prontidão e vivacidade do contêiner ContainerProbeSettings
variáveis de ambiente Recolha de variáveis de ambiente DeploymentSettingsEnvironmentVariables
livenessSonda Teste periódico da vivacidade da instância do aplicativo. A Instância do Aplicativo será reiniciada se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
prontidãoSonda Investigação periódica da prontidão do serviço de Instância de Aplicativo. A Instância do Aplicativo será removida dos pontos de extremidade do serviço se a investigação falhar. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
resourceRequests A quantidade de recursos solicitada para CPU e memória necessárias. Recomenda-se que usando este campo para representar a CPU e a memória necessárias, a cpu de campo antigo e o memoryInGB serão preteridos posteriormente. ResourceRequests
ajustar Escalabilidade de propriedades para o Azure Spring Apps App Instance. Escala
startupProbe StartupProbe indica que a Instância do Aplicativo foi inicializada com êxito. Se especificado, nenhum outro teste será executado até que isso seja concluído com êxito. Se esta sonda falhar, o Pod será reiniciado, como se a livenessProbe falhasse. Isso pode ser usado para fornecer parâmetros de teste diferentes no início do ciclo de vida de uma instância de aplicativo, quando pode levar muito tempo para carregar dados ou aquecer um cache, do que durante a operação em estado estacionário. Isso não pode ser atualizado. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sonda
terminaçãoGracePeriodSeconds Duração opcional: em segundos, a Instância do Aplicativo precisa ser encerrada normalmente. Pode ser diminuído na solicitação de exclusão. O valor deve ser inteiro não negativo. O valor zero indica parar imediatamente através do sinal de morte (sem oportunidade de encerrar). Se esse valor for nulo, o período de carência padrão será usado. O período de carência é a duração em segundos após os processos em execução na Instância do Aplicativo receberem um sinal de encerramento e o tempo em que os processos são interrompidos à força com um sinal de eliminação. Defina esse valor por mais tempo do que o tempo de limpeza esperado para o seu processo. O padrão é 90 segundos. Int

DeploymentSettingsAddonConfigs

Nome Descrição Valor

DeploymentSettingsEnvironmentVariables

Nome Descrição Valor

ExecAction

Nome Descrição Valor
comando Command é a linha de comando a ser executada dentro do contêiner, o diretório de trabalho para o comando é root ('/') no sistema de arquivos do contêiner. O comando não é executado dentro de um shell, então as instruções tradicionais do shell ('|', etc) não funcionarão. Para usar um shell, você precisa chamar explicitamente para esse shell. O status de saída de 0 é tratado como vivo/saudável e diferente de zero não é íntegro. string[]
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'ExecAction' (obrigatório)

HttpGetAction

Nome Descrição Valor
caminho Caminho de acesso no servidor HTTP. cadeia (de caracteres)
Esquema Esquema a ser usado para se conectar ao host. O padrão é HTTP.

Valores possíveis de enum:
- "HTTP" significa que o esquema utilizado será http://
- "HTTPS" significa que o esquema utilizado será https://
'HTTP'
'HTTPS'
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'HTTPGetAction' (obrigatório)

HttpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala personalizada. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala http. HttpScaleRuleMetadata

HttpScaleRuleMetadata

Nome Descrição Valor

ImageRegistryCredential

Nome Descrição Valor
palavra-passe A senha da credencial de registro de imagem cadeia (de caracteres)
nome de utilizador O nome de usuário da credencial do registro de imagem cadeia (de caracteres)

JarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão em tempo de execução do arquivo Jar cadeia (de caracteres)
tipo Tipo de fonte carregada 'Jar' (obrigatório)

NetCoreZipUploadedUserSourceInfo

Nome Descrição Valor
netCoreMainEntryPath O caminho para o executável .NET relativamente à raiz zip cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo .Net cadeia (de caracteres)
tipo Tipo de fonte carregada 'NetCoreZip' (obrigatório)

Sonda

Nome Descrição Valor
desativarSonda Indique se a sonda está desativada. bool (obrigatório)
failureThreshold Mínimo de falhas consecutivas para que a sonda seja considerada falha após ter sido bem-sucedida. O valor mínimo é 1. Int
initialDelaySeconds Número de segundos após o início da Instância do Aplicativo antes que os testes sejam iniciados. Mais informações: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
segundosPeríodo Com que frequência (em segundos) realizar a sonda. O valor mínimo é 1. Int
probeAction A ação da sonda. ProbeAction
successThreshold Mínimo de sucessos consecutivos para que a sonda seja considerada bem-sucedida após ter falhado. Deve ser 1 para liveness e startup. O valor mínimo é 1. Int
timeoutSegundos Número de segundos após os quais a sonda atinge o tempo limite. O valor mínimo é 1. Int

ProbeAction

Nome Descrição Valor
tipo Defina como 'ExecAction' para o tipo ExecAction. Defina como 'HTTPGetAction' para o tipo HttpGetAction. Defina como 'TCPSocketAction' para o tipo TCPSocketAction. 'ExecAction'
'HTTPGetAction'
'TCPSocketAction' (obrigatório)

QueueScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala de fila. ScaleRuleAuth[]
comprimento da fila Comprimento da fila. Int
Nome da Fila Nome da fila. cadeia (de caracteres)

ResourceRequests

Nome Descrição Valor
CPU CPU necessária. 1 núcleo pode ser representado por 1 ou 1000m. Isso deve ser 500m ou 1 para a camada Basic e {500m, 1, 2, 3, 4} para a camada Standard. cadeia (de caracteres)
memória Memória necessária. 1 GB pode ser representado por 1Gi ou 1024Mi. Isso deve ser {512Mi, 1Gi, 2Gi} para a camada Basic e {512Mi, 1Gi, 2Gi, ..., 8Gi} para a camada Standard. cadeia (de caracteres)

Escala

Nome Descrição Valor
maxRéplicas Opcional. Número máximo de réplicas de contêiner. O padrão é 10 se não estiver definido. Int
minRéplicas Opcional. Número mínimo de réplicas de contêiner. Int
regras Regras de dimensionamento. ScaleRule []

Regra de Escala

Nome Descrição Valor
azureQueue Escalonamento baseado em Azure Queue. QueueScaleRule
Personalizado Regra de escala personalizada. CustomScaleRule
http Dimensionamento baseado em solicitações HTTP. HttpScaleRule
nome Nome da regra de escala cadeia (de caracteres)
TCP Dimensionamento baseado em solicitações Tcp. TcpScaleRule

ScaleRuleAuth

Nome Descrição Valor
secretRef Nome do segredo do Azure Spring Apps App Instance de onde se extraem os parâmetros de autenticação. cadeia (de caracteres)
triggerParâmetro Parâmetro Trigger que usa o segredo cadeia (de caracteres)

Referência

Nome Descrição Valor
capacidade Capacidade atual do recurso de destino Int
nome Nome do Sku cadeia (de caracteres)
escalão Nível do Sku cadeia (de caracteres)

SourceUploadedUserSourceInfo

Nome Descrição Valor
artifactSelector Seletor para o artefato a ser usado para a implantação de projetos multimódulo. Isto deve ser
O caminho relativo para o módulo/projeto de destino.
cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de origem cadeia (de caracteres)
tipo Tipo de fonte carregada 'Fonte' (obrigatório)

TcpScaleRule

Nome Descrição Valor
autenticação Segredos de autenticação para a regra de escala tcp. ScaleRuleAuth[]
metadados Propriedades de metadados para descrever a regra de escala tcp. TcpScaleRuleMetadata

TcpScaleRuleMetadata

Nome Descrição Valor

TCPSocketAction

Nome Descrição Valor
tipo O tipo de ação a ser executada para executar a verificação de integridade. 'TCPSocketAction' (obrigatório)

UserSourceInfo

Nome Descrição Valor
tipo Defina como 'BuildResult' para o tipo BuildResultUserSourceInfo. Defina como 'Container' para o tipo CustomContainerUserSourceInfo. Defina como 'Jar' para o tipo JarUploadedUserSourceInfo. Defina como 'NetCoreZip' para digitar NetCoreZipUploadedUserSourceInfo. Defina como 'Source' para o tipo SourceUploadedUserSourceInfo. Defina como 'War' para o tipo WarUploadedUserSourceInfo. 'BuildResult'
«Contentor»
'Jarro'
'NetCoreZip'
'Fonte'
'Guerra' (obrigatório)
versão Versão da fonte cadeia (de caracteres)

WarUploadedUserSourceInfo

Nome Descrição Valor
jvmOptions Parâmetro JVM cadeia (de caracteres)
relativePath Caminho relativo do armazenamento que armazena a origem cadeia (de caracteres)
runtimeVersion Versão de tempo de execução do arquivo de guerra cadeia (de caracteres)
versão do servidor Versão do servidor, atualmente apenas o Apache Tomcat é suportado cadeia (de caracteres)
tipo Tipo de fonte carregada 'Guerra' (obrigatório)

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação do 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    = ["*"]
}