Microsoft.AppPlatform Primavera/apps/deployments 2022-05-01-preview

Observaciones

Nota: Azure Spring Apps Application Deployments (Microsoft.AppPlatform/Spring/apps/deployments) ya está obsoleto y se retirará el 31-05-2028. Consulte https://aka.ms/asaretirement para obtener más información.

Definición de recurso Bicep

El tipo de recurso Spring/apps/deployments se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.AppPlatform/Spring/apps/deployments, añade el siguiente Bicep a tu plantilla.

resource symbolicname 'Microsoft.AppPlatform/Spring/apps/deployments@2022-05-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    active: bool
    deploymentSettings: {
      addonConfigs: {
        {customized property}: {
          {customized property}: any(...)
        }
      }
      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'
  }
}

Objetos UserSourceInfo

Establezca el tipo propiedad para especificar el tipo de objeto.

Para BuildResult, use:

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

Para container, use:

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

Para jar, use:

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

Para netCoreZip, use:

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

Para Origen, use:

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

Objetos ProbeAction

Establezca el tipo propiedad para especificar el 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 propiedad

Microsoft.AppPlatform/Spring/apps/deployments

Nombre Descripción Importancia
nombre El nombre del recurso string (obligatorio)
padre En Bicep, puedes especificar el recurso padre para un recurso hijo. Solo tiene que agregar esta propiedad cuando el recurso secundario se declara fuera del recurso primario.

Para obtener más información, consulte recurso secundario fuera del recurso primario.
Nombre simbólico del recurso de tipo: spring/apps
Propiedades Propiedades del recurso de implementación DeploymentResourceProperties
código SKU SKU del recurso de implementación Sku

AddonProfile

Nombre Descripción Importancia

BuildResultUserSourceInfo

Nombre Descripción Importancia
buildResultId Identificador de recurso de un resultado de compilación correcta existente en la misma instancia de Spring. cuerda / cadena
tipo Tipo del origen cargado 'BuildResult' (obligatorio)

ContainerProbeSettings

Nombre Descripción Importancia
disableProbe Indica si deshabilita el sondeo de ejecución y preparación. booleano

Contenedor personalizado

Nombre Descripción Importancia
args Argumentos para el punto de entrada. El CMD de la imagen de Docker se usa si no se proporciona. cadena[]
comando Matriz de puntos de entrada. No se ejecuta dentro de un shell. El ENTRYPOINT de la imagen de Docker se usa si no se proporciona. cadena[]
containerImage Imagen de contenedor del contenedor personalizado. Debe estar en forma de <repositorio>:<etiqueta> sin el nombre del servidor del Registro cuerda / cadena
imageRegistryCredential Credencial del registro de imágenes ImageRegistryCredential
languageFramework Marco de lenguaje de la imagen de contenedor cargada cuerda / cadena
servidor Nombre del registro que contiene la imagen de contenedor cuerda / cadena

CustomContainerUserSourceInfo

Nombre Descripción Importancia
customContainer Carga de contenedor personalizada CustomContainer
tipo Tipo del origen cargado 'Contenedor' (obligatorio)

DeploymentResourceProperties

Nombre Descripción Importancia
activo Indica si la implementación está activa. booleano
deploymentSettings Configuración de implementación de la implementación DeploymentSettings
fuente Información de origen cargada de la implementación. UserSourceInfo

DeploymentSettings

Nombre Descripción Importancia
addonConfigs Colección de complementos DeploymentSettingsAddonConfigs
containerProbeSettings Configuración del sondeo de preparación y ejecución de contenedores ContainerProbeSettings
variables de entorno Colección de variables de entorno deploymentSettingsEnvironmentVariables
livenessProbe Sondeo periódico de la ejecución de la instancia de aplicación. La instancia de la aplicación se reiniciará si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
readinessProbe Sondeo periódico de la preparación de App Instance Service. La instancia de la aplicación se quitará de los puntos de conexión de servicio si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
resourceRequests Cantidad de recursos solicitada para la CPU y la memoria necesarias. Se recomienda usar este campo para representar la CPU y la memoria necesarias, la cpu de campo anterior y memoryInGB quedará en desuso más adelante. resourceRequests de
startupProbe StartupProbe indica que la instancia de la aplicación se ha inicializado correctamente. Si se especifica, no se ejecutan otros sondeos hasta que se complete correctamente. Si se produce un error en este sondeo, se reiniciará el pod, igual que si se produjo un error en livenessProbe. Esto se puede usar para proporcionar diferentes parámetros de sondeo al principio del ciclo de vida de una instancia de aplicación, cuando puede tardar mucho tiempo en cargar datos o calentar una memoria caché, que durante la operación de estado estable. No se puede actualizar. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación debe finalizar correctamente. Puede reducirse en la solicitud de eliminación. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Si este valor es nulo, se usará en su lugar el período de gracia predeterminado. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en la instancia de la aplicación se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es de 90 segundos. Int

DeploymentSettingsAddonConfigs

Nombre Descripción Importancia

DeploymentSettingsEnvironmentVariables

Nombre Descripción Importancia

Ejecución

Nombre Descripción Importancia
comando El comando es la línea de comandos que se va a ejecutar dentro del contenedor, el directorio de trabajo del comando es raíz ('/') en el sistema de archivos del contenedor. El comando no se ejecuta dentro de un shell, por lo que las instrucciones de shell tradicionales ('|', etc.) no funcionarán. Para usar un shell, debe llamar explícitamente a ese shell. El estado de salida de 0 se trata como activo/correcto y no cero es incorrecto. cadena[]
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'ExecAction' (obligatorio)

HttpGetAction

Nombre Descripción Importancia
camino Ruta de acceso al acceso en el servidor HTTP. cuerda / cadena
esquema Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP.

Posibles valores de enumeración:
- "HTTP" significa que el esquema usado se http://
- "HTTPS" significa que el esquema usado se https://
'HTTP'
'HTTPS'
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'HTTPGetAction' (obligatorio)

ImageRegistryCredential

Nombre Descripción Importancia
contraseña Contraseña de la credencial del Registro de imágenes cuerda / cadena
nombre de usuario Nombre de usuario de la credencial del Registro de imágenes cuerda / cadena

JarUploadedUserSourceInfo

Nombre Descripción Importancia
jvmOptions Parámetro JVM cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo Jar cuerda / cadena
tipo Tipo del origen cargado 'Jar' (obligatorio)

NetCoreZipUploadedUserSourceInfo

Nombre Descripción Importancia
netCoreMainEntryPath La ruta hacia el ejecutable .NET relativa a la raíz zip cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo .Net cuerda / cadena
tipo Tipo del origen cargado 'NetCoreZip' (obligatorio)

Sonda

Nombre Descripción Importancia
disableProbe Indica si el sondeo está deshabilitado. bool (obligatorio)
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor mínimo es 1. Int
initialDelaySeconds Número de segundos después de que se haya iniciado la instancia de aplicación antes de que se inicien los sondeos. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor mínimo es 1. Int
sondeo Acción del sondeo. ProbeAcción
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. Int
timeoutSeconds Número de segundos después del cual el sondeo agota el tiempo de espera. El valor mínimo es 1. Int

ProbeAcción

Nombre Descripción Importancia
tipo Establezca en "ExecAction" para el tipo ExecAction. Establezca en "HTTPGetAction" para el tipo HttpGetAction. Establezca en "TCPSocketAction" para el tipo TCPSocketAction. 'Acción Ejecutiva'
'HTTPGetAction'
'TCPSocketAction' (obligatorio)

ResourceRequests (Solicitudes de recursos)

Nombre Descripción Importancia
CPU CPU necesaria. 1 núcleo se puede representar mediante 1 o 1000m. Debe ser de 500 m o 1 para el nivel Básico y {500m, 1, 2, 3, 4} para el nivel Estándar. cuerda / cadena
memoria Memoria necesaria. 1 GB se puede representar mediante 1Gi o 1024Mi. Debe ser {512Mi, 1Gi, 2Gi} para el nivel Básico y {512Mi, 1Gi, 2Gi, ..., 8Gi} para el nivel Estándar. cuerda / cadena

SKU

Nombre Descripción Importancia
capacidad Capacidad actual del recurso de destino Int
nombre Nombre de la SKU cuerda / cadena
nivel Nivel de la SKU cuerda / cadena

SourceUploadedUserSourceInfo

Nombre Descripción Importancia
artifactSelector Selector del artefacto que se va a usar para la implementación de proyectos de varios módulos. Debe ser
ruta de acceso relativa al módulo o proyecto de destino.
cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo de origen cuerda / cadena
tipo Tipo del origen cargado 'Source' (obligatorio)

TCPSocketAction

Nombre Descripción Importancia
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'TCPSocketAction' (obligatorio)

UserSourceInfo

Nombre Descripción Importancia
tipo Establezca en "BuildResult" para el tipo BuildResultUserSourceInfo. Establezca en "Container" para el tipo CustomContainerUserSourceInfo. Establezca en "Jar" para el tipo JarUploadedUserSourceInfo. Establezca en "NetCoreZip" para el tipo NetCoreZipUploadedUserSourceInfo. Establezca en "Source" para el tipo SourceUploadedUserSourceInfo. 'ResultadoCompilado'
'Contenedor'
'Jarra'
'NetCoreZip'
'Source' (obligatorio)
Versión Versión del origen cuerda / cadena

Ejemplos de uso

Muestras de Bicep

Un ejemplo básico de implementación de 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 Quickstart Samples

Las siguientes plantillas de inicio rápido Azure contienen Bicep ejemplos para desplegar este tipo de recurso.

Archivo Bicep Descripción
Despliega una aplicación Azure Spring Apps microservicio sencilla Esta plantilla despliega una aplicación sencilla de microservicios de Azure Spring Apps para ejecutarse en Azure.

Definición de recursos de plantilla de ARM

El tipo de recurso Spring/apps/deployments se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.AppPlatform/Spring/apps/deployments, agregue el siguiente JSON a la plantilla.

{
  "type": "Microsoft.AppPlatform/Spring/apps/deployments",
  "apiVersion": "2022-05-01-preview",
  "name": "string",
  "properties": {
    "active": "bool",
    "deploymentSettings": {
      "addonConfigs": {
        "{customized property}": {
          "{customized property}": {}
        }
      },
      "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"
  }
}

Objetos UserSourceInfo

Establezca el tipo propiedad para especificar el tipo de objeto.

Para BuildResult, use:

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

Para container, use:

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

Para jar, use:

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

Para netCoreZip, use:

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

Para Origen, use:

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

Objetos ProbeAction

Establezca el tipo propiedad para especificar el 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 propiedad

Microsoft.AppPlatform/Spring/apps/deployments

Nombre Descripción Importancia
apiVersion La versión de api '2022-05-01-avance'
nombre El nombre del recurso string (obligatorio)
Propiedades Propiedades del recurso de implementación DeploymentResourceProperties
código SKU SKU del recurso de implementación Sku
tipo El tipo de recurso "Microsoft.AppPlatform/Spring/apps/deployments"

AddonProfile

Nombre Descripción Importancia

BuildResultUserSourceInfo

Nombre Descripción Importancia
buildResultId Identificador de recurso de un resultado de compilación correcta existente en la misma instancia de Spring. cuerda / cadena
tipo Tipo del origen cargado 'BuildResult' (obligatorio)

ContainerProbeSettings

Nombre Descripción Importancia
disableProbe Indica si deshabilita el sondeo de ejecución y preparación. booleano

Contenedor personalizado

Nombre Descripción Importancia
args Argumentos para el punto de entrada. El CMD de la imagen de Docker se usa si no se proporciona. cadena[]
comando Matriz de puntos de entrada. No se ejecuta dentro de un shell. El ENTRYPOINT de la imagen de Docker se usa si no se proporciona. cadena[]
containerImage Imagen de contenedor del contenedor personalizado. Debe estar en forma de <repositorio>:<etiqueta> sin el nombre del servidor del Registro cuerda / cadena
imageRegistryCredential Credencial del registro de imágenes ImageRegistryCredential
languageFramework Marco de lenguaje de la imagen de contenedor cargada cuerda / cadena
servidor Nombre del registro que contiene la imagen de contenedor cuerda / cadena

CustomContainerUserSourceInfo

Nombre Descripción Importancia
customContainer Carga de contenedor personalizada CustomContainer
tipo Tipo del origen cargado 'Contenedor' (obligatorio)

DeploymentResourceProperties

Nombre Descripción Importancia
activo Indica si la implementación está activa. booleano
deploymentSettings Configuración de implementación de la implementación DeploymentSettings
fuente Información de origen cargada de la implementación. UserSourceInfo

DeploymentSettings

Nombre Descripción Importancia
addonConfigs Colección de complementos DeploymentSettingsAddonConfigs
containerProbeSettings Configuración del sondeo de preparación y ejecución de contenedores ContainerProbeSettings
variables de entorno Colección de variables de entorno deploymentSettingsEnvironmentVariables
livenessProbe Sondeo periódico de la ejecución de la instancia de aplicación. La instancia de la aplicación se reiniciará si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
readinessProbe Sondeo periódico de la preparación de App Instance Service. La instancia de la aplicación se quitará de los puntos de conexión de servicio si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
resourceRequests Cantidad de recursos solicitada para la CPU y la memoria necesarias. Se recomienda usar este campo para representar la CPU y la memoria necesarias, la cpu de campo anterior y memoryInGB quedará en desuso más adelante. resourceRequests de
startupProbe StartupProbe indica que la instancia de la aplicación se ha inicializado correctamente. Si se especifica, no se ejecutan otros sondeos hasta que se complete correctamente. Si se produce un error en este sondeo, se reiniciará el pod, igual que si se produjo un error en livenessProbe. Esto se puede usar para proporcionar diferentes parámetros de sondeo al principio del ciclo de vida de una instancia de aplicación, cuando puede tardar mucho tiempo en cargar datos o calentar una memoria caché, que durante la operación de estado estable. No se puede actualizar. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación debe finalizar correctamente. Puede reducirse en la solicitud de eliminación. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Si este valor es nulo, se usará en su lugar el período de gracia predeterminado. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en la instancia de la aplicación se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es de 90 segundos. Int

DeploymentSettingsAddonConfigs

Nombre Descripción Importancia

DeploymentSettingsEnvironmentVariables

Nombre Descripción Importancia

Ejecución

Nombre Descripción Importancia
comando El comando es la línea de comandos que se va a ejecutar dentro del contenedor, el directorio de trabajo del comando es raíz ('/') en el sistema de archivos del contenedor. El comando no se ejecuta dentro de un shell, por lo que las instrucciones de shell tradicionales ('|', etc.) no funcionarán. Para usar un shell, debe llamar explícitamente a ese shell. El estado de salida de 0 se trata como activo/correcto y no cero es incorrecto. cadena[]
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'ExecAction' (obligatorio)

HttpGetAction

Nombre Descripción Importancia
camino Ruta de acceso al acceso en el servidor HTTP. cuerda / cadena
esquema Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP.

Posibles valores de enumeración:
- "HTTP" significa que el esquema usado se http://
- "HTTPS" significa que el esquema usado se https://
'HTTP'
'HTTPS'
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'HTTPGetAction' (obligatorio)

ImageRegistryCredential

Nombre Descripción Importancia
contraseña Contraseña de la credencial del Registro de imágenes cuerda / cadena
nombre de usuario Nombre de usuario de la credencial del Registro de imágenes cuerda / cadena

JarUploadedUserSourceInfo

Nombre Descripción Importancia
jvmOptions Parámetro JVM cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo Jar cuerda / cadena
tipo Tipo del origen cargado 'Jar' (obligatorio)

NetCoreZipUploadedUserSourceInfo

Nombre Descripción Importancia
netCoreMainEntryPath La ruta hacia el ejecutable .NET relativa a la raíz zip cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo .Net cuerda / cadena
tipo Tipo del origen cargado 'NetCoreZip' (obligatorio)

Sonda

Nombre Descripción Importancia
disableProbe Indica si el sondeo está deshabilitado. bool (obligatorio)
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor mínimo es 1. Int
initialDelaySeconds Número de segundos después de que se haya iniciado la instancia de aplicación antes de que se inicien los sondeos. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor mínimo es 1. Int
sondeo Acción del sondeo. ProbeAcción
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. Int
timeoutSeconds Número de segundos después del cual el sondeo agota el tiempo de espera. El valor mínimo es 1. Int

ProbeAcción

Nombre Descripción Importancia
tipo Establezca en "ExecAction" para el tipo ExecAction. Establezca en "HTTPGetAction" para el tipo HttpGetAction. Establezca en "TCPSocketAction" para el tipo TCPSocketAction. 'Acción Ejecutiva'
'HTTPGetAction'
'TCPSocketAction' (obligatorio)

ResourceRequests (Solicitudes de recursos)

Nombre Descripción Importancia
CPU CPU necesaria. 1 núcleo se puede representar mediante 1 o 1000m. Debe ser de 500 m o 1 para el nivel Básico y {500m, 1, 2, 3, 4} para el nivel Estándar. cuerda / cadena
memoria Memoria necesaria. 1 GB se puede representar mediante 1Gi o 1024Mi. Debe ser {512Mi, 1Gi, 2Gi} para el nivel Básico y {512Mi, 1Gi, 2Gi, ..., 8Gi} para el nivel Estándar. cuerda / cadena

SKU

Nombre Descripción Importancia
capacidad Capacidad actual del recurso de destino Int
nombre Nombre de la SKU cuerda / cadena
nivel Nivel de la SKU cuerda / cadena

SourceUploadedUserSourceInfo

Nombre Descripción Importancia
artifactSelector Selector del artefacto que se va a usar para la implementación de proyectos de varios módulos. Debe ser
ruta de acceso relativa al módulo o proyecto de destino.
cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo de origen cuerda / cadena
tipo Tipo del origen cargado 'Source' (obligatorio)

TCPSocketAction

Nombre Descripción Importancia
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'TCPSocketAction' (obligatorio)

UserSourceInfo

Nombre Descripción Importancia
tipo Establezca en "BuildResult" para el tipo BuildResultUserSourceInfo. Establezca en "Container" para el tipo CustomContainerUserSourceInfo. Establezca en "Jar" para el tipo JarUploadedUserSourceInfo. Establezca en "NetCoreZip" para el tipo NetCoreZipUploadedUserSourceInfo. Establezca en "Source" para el tipo SourceUploadedUserSourceInfo. 'ResultadoCompilado'
'Contenedor'
'Jarra'
'NetCoreZip'
'Source' (obligatorio)
Versión Versión del origen cuerda / cadena

Ejemplos de uso

Plantillas de inicio rápido de Azure

Las siguientes plantillas Azure Quickstart despliegan este tipo de recurso.

Plantilla Descripción
Despliega una aplicación Azure Spring Apps microservicio sencilla

Despliega en Azure
Esta plantilla despliega una aplicación sencilla de microservicios de Azure Spring Apps para ejecutarse en Azure.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso Spring/apps/deployments se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.AppPlatform/Spring/apps/deployments, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.AppPlatform/Spring/apps/deployments@2022-05-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      active = bool
      deploymentSettings = {
        addonConfigs = {
          {customized property} = {
            {customized property} = ?
          }
        }
        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"
    }
  }
}

Objetos UserSourceInfo

Establezca el tipo propiedad para especificar el tipo de objeto.

Para BuildResult, use:

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

Para container, use:

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

Para jar, use:

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

Para netCoreZip, use:

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

Para Origen, use:

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

Objetos ProbeAction

Establezca el tipo propiedad para especificar el 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 propiedad

Microsoft.AppPlatform/Spring/apps/deployments

Nombre Descripción Importancia
nombre El nombre del recurso string (obligatorio)
parent_id Identificador del recurso que es el elemento primario de este recurso. Identificador del recurso de tipo: spring/apps
Propiedades Propiedades del recurso de implementación DeploymentResourceProperties
código SKU SKU del recurso de implementación Sku
tipo El tipo de recurso "Microsoft.AppPlatform/Spring/apps/deployments@2022-05-01-preview"

AddonProfile

Nombre Descripción Importancia

BuildResultUserSourceInfo

Nombre Descripción Importancia
buildResultId Identificador de recurso de un resultado de compilación correcta existente en la misma instancia de Spring. cuerda / cadena
tipo Tipo del origen cargado 'BuildResult' (obligatorio)

ContainerProbeSettings

Nombre Descripción Importancia
disableProbe Indica si deshabilita el sondeo de ejecución y preparación. booleano

Contenedor personalizado

Nombre Descripción Importancia
args Argumentos para el punto de entrada. El CMD de la imagen de Docker se usa si no se proporciona. cadena[]
comando Matriz de puntos de entrada. No se ejecuta dentro de un shell. El ENTRYPOINT de la imagen de Docker se usa si no se proporciona. cadena[]
containerImage Imagen de contenedor del contenedor personalizado. Debe estar en forma de <repositorio>:<etiqueta> sin el nombre del servidor del Registro cuerda / cadena
imageRegistryCredential Credencial del registro de imágenes ImageRegistryCredential
languageFramework Marco de lenguaje de la imagen de contenedor cargada cuerda / cadena
servidor Nombre del registro que contiene la imagen de contenedor cuerda / cadena

CustomContainerUserSourceInfo

Nombre Descripción Importancia
customContainer Carga de contenedor personalizada CustomContainer
tipo Tipo del origen cargado 'Contenedor' (obligatorio)

DeploymentResourceProperties

Nombre Descripción Importancia
activo Indica si la implementación está activa. booleano
deploymentSettings Configuración de implementación de la implementación DeploymentSettings
fuente Información de origen cargada de la implementación. UserSourceInfo

DeploymentSettings

Nombre Descripción Importancia
addonConfigs Colección de complementos DeploymentSettingsAddonConfigs
containerProbeSettings Configuración del sondeo de preparación y ejecución de contenedores ContainerProbeSettings
variables de entorno Colección de variables de entorno deploymentSettingsEnvironmentVariables
livenessProbe Sondeo periódico de la ejecución de la instancia de aplicación. La instancia de la aplicación se reiniciará si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
readinessProbe Sondeo periódico de la preparación de App Instance Service. La instancia de la aplicación se quitará de los puntos de conexión de servicio si se produce un error en el sondeo. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
resourceRequests Cantidad de recursos solicitada para la CPU y la memoria necesarias. Se recomienda usar este campo para representar la CPU y la memoria necesarias, la cpu de campo anterior y memoryInGB quedará en desuso más adelante. resourceRequests de
startupProbe StartupProbe indica que la instancia de la aplicación se ha inicializado correctamente. Si se especifica, no se ejecutan otros sondeos hasta que se complete correctamente. Si se produce un error en este sondeo, se reiniciará el pod, igual que si se produjo un error en livenessProbe. Esto se puede usar para proporcionar diferentes parámetros de sondeo al principio del ciclo de vida de una instancia de aplicación, cuando puede tardar mucho tiempo en cargar datos o calentar una memoria caché, que durante la operación de estado estable. No se puede actualizar. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Sondeo
terminationGracePeriodSeconds Duración opcional en segundos que la instancia de la aplicación debe finalizar correctamente. Puede reducirse en la solicitud de eliminación. El valor debe ser entero no negativo. El valor cero indica que se detiene inmediatamente a través de la señal de eliminación (sin oportunidad de apagar). Si este valor es nulo, se usará en su lugar el período de gracia predeterminado. El período de gracia es la duración en segundos después de que los procesos que se ejecutan en la instancia de la aplicación se envíen una señal de terminación y el tiempo en que los procesos se detengan forzosamente con una señal de eliminación. Establezca este valor más largo que el tiempo de limpieza esperado para el proceso. El valor predeterminado es de 90 segundos. Int

DeploymentSettingsAddonConfigs

Nombre Descripción Importancia

DeploymentSettingsEnvironmentVariables

Nombre Descripción Importancia

Ejecución

Nombre Descripción Importancia
comando El comando es la línea de comandos que se va a ejecutar dentro del contenedor, el directorio de trabajo del comando es raíz ('/') en el sistema de archivos del contenedor. El comando no se ejecuta dentro de un shell, por lo que las instrucciones de shell tradicionales ('|', etc.) no funcionarán. Para usar un shell, debe llamar explícitamente a ese shell. El estado de salida de 0 se trata como activo/correcto y no cero es incorrecto. cadena[]
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'ExecAction' (obligatorio)

HttpGetAction

Nombre Descripción Importancia
camino Ruta de acceso al acceso en el servidor HTTP. cuerda / cadena
esquema Esquema que se va a usar para conectarse al host. El valor predeterminado es HTTP.

Posibles valores de enumeración:
- "HTTP" significa que el esquema usado se http://
- "HTTPS" significa que el esquema usado se https://
'HTTP'
'HTTPS'
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'HTTPGetAction' (obligatorio)

ImageRegistryCredential

Nombre Descripción Importancia
contraseña Contraseña de la credencial del Registro de imágenes cuerda / cadena
nombre de usuario Nombre de usuario de la credencial del Registro de imágenes cuerda / cadena

JarUploadedUserSourceInfo

Nombre Descripción Importancia
jvmOptions Parámetro JVM cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo Jar cuerda / cadena
tipo Tipo del origen cargado 'Jar' (obligatorio)

NetCoreZipUploadedUserSourceInfo

Nombre Descripción Importancia
netCoreMainEntryPath La ruta hacia el ejecutable .NET relativa a la raíz zip cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo .Net cuerda / cadena
tipo Tipo del origen cargado 'NetCoreZip' (obligatorio)

Sonda

Nombre Descripción Importancia
disableProbe Indica si el sondeo está deshabilitado. bool (obligatorio)
failureThreshold Se han producido errores consecutivos mínimos para que el sondeo se considere erróneo después de haber realizado correctamente. El valor mínimo es 1. Int
initialDelaySeconds Número de segundos después de que se haya iniciado la instancia de aplicación antes de que se inicien los sondeos. Más información: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes Int
periodSeconds Frecuencia (en segundos) con que se ejecutará el sondeo. El valor mínimo es 1. Int
sondeo Acción del sondeo. ProbeAcción
successThreshold Número mínimo de éxitos consecutivos para que el sondeo se considere correcto después de haber producido un error. Debe ser 1 para la vida y el inicio. El valor mínimo es 1. Int
timeoutSeconds Número de segundos después del cual el sondeo agota el tiempo de espera. El valor mínimo es 1. Int

ProbeAcción

Nombre Descripción Importancia
tipo Establezca en "ExecAction" para el tipo ExecAction. Establezca en "HTTPGetAction" para el tipo HttpGetAction. Establezca en "TCPSocketAction" para el tipo TCPSocketAction. 'Acción Ejecutiva'
'HTTPGetAction'
'TCPSocketAction' (obligatorio)

ResourceRequests (Solicitudes de recursos)

Nombre Descripción Importancia
CPU CPU necesaria. 1 núcleo se puede representar mediante 1 o 1000m. Debe ser de 500 m o 1 para el nivel Básico y {500m, 1, 2, 3, 4} para el nivel Estándar. cuerda / cadena
memoria Memoria necesaria. 1 GB se puede representar mediante 1Gi o 1024Mi. Debe ser {512Mi, 1Gi, 2Gi} para el nivel Básico y {512Mi, 1Gi, 2Gi, ..., 8Gi} para el nivel Estándar. cuerda / cadena

SKU

Nombre Descripción Importancia
capacidad Capacidad actual del recurso de destino Int
nombre Nombre de la SKU cuerda / cadena
nivel Nivel de la SKU cuerda / cadena

SourceUploadedUserSourceInfo

Nombre Descripción Importancia
artifactSelector Selector del artefacto que se va a usar para la implementación de proyectos de varios módulos. Debe ser
ruta de acceso relativa al módulo o proyecto de destino.
cuerda / cadena
relativePath Ruta de acceso relativa del almacenamiento que almacena el origen cuerda / cadena
runtimeVersion Versión en tiempo de ejecución del archivo de origen cuerda / cadena
tipo Tipo del origen cargado 'Source' (obligatorio)

TCPSocketAction

Nombre Descripción Importancia
tipo Tipo de la acción que se va a realizar para realizar la comprobación de estado. 'TCPSocketAction' (obligatorio)

UserSourceInfo

Nombre Descripción Importancia
tipo Establezca en "BuildResult" para el tipo BuildResultUserSourceInfo. Establezca en "Container" para el tipo CustomContainerUserSourceInfo. Establezca en "Jar" para el tipo JarUploadedUserSourceInfo. Establezca en "NetCoreZip" para el tipo NetCoreZipUploadedUserSourceInfo. Establezca en "Source" para el tipo SourceUploadedUserSourceInfo. 'ResultadoCompilado'
'Contenedor'
'Jarra'
'NetCoreZip'
'Source' (obligatorio)
Versión Versión del origen cuerda / cadena

Ejemplos de uso

Ejemplos de Terraform

Un ejemplo básico de implementación de 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    = ["*"]
}