Todos los productos
Search
Centro de documentos

Enterprise Distributed Application Service:DeployK8sApplication

Última actualización: Sep 01, 2026

Despliega una aplicación en un clúster de Container Service for Kubernetes (ACK) o en un clúster de Serverless Kubernetes (ASK).

Pruébelo ahora

Pruebe esta API en OpenAPI Explorer sin necesidad de firma manual. Las llamadas exitosas generan automáticamente código SDK acorde a sus parámetros. Descárguelo con seguridad de credenciales integrada para uso local.Pruebe esta API en OpenAPI Explorer sin necesidad de firma manual. Las llamadas exitosas generan automáticamente código SDK acorde a sus parámetros. Descárguelo con seguridad de credenciales integrada para uso local.

Test

Autorización de RAM

La siguiente tabla describe la autorización necesaria para invocar esta API. Puede definirla en una directiva de Resource Access Management (RAM). A continuación, se detallan las columnas de la tabla:

  • Action: Estas acciones se utilizan en el elemento Action de las declaraciones de directivas de permisos de RAM para otorgar permisos que permitan realizar la operación.

  • API: La API que debe invocarse para llevar a cabo la acción.

  • Nivel de acceso: Nivel de acceso predefinido que se concede para cada API. Valores válidos: create, list, get, update y delete.

  • Tipo de recurso: Tipo de recurso que admite autorización para ejecutar la acción. Indica si la acción es compatible con permisos a nivel de recurso. El recurso especificado debe ser compatible con la acción; de lo contrario, la directiva no surtirá efecto.

    • En las API con permisos a nivel de recurso, los tipos de recursos obligatorios se marcan con un asterisco (*). Especifique el Alibaba Cloud Resource Name (ARN) correspondiente en el elemento Resource de la directiva.

    • Para las API sin permisos a nivel de recurso, se muestra All Resources. Utilice un asterisco (*) en el elemento Resource de la directiva.

  • Clave de condición: Claves de condición definidas por el servicio. Permiten un control granular y se aplican ya sea solo a acciones o a acciones asociadas con recursos específicos. Además de las claves de condición específicas del servicio, Alibaba Cloud proporciona un conjunto de common condition keys aplicables a todos los servicios compatibles con RAM.

  • Acción dependiente: Acciones dependientes necesarias para ejecutar la acción principal. Para completar la operación, el usuario de RAM o el rol de RAM debe contar con permisos para realizar todas las acciones dependientes.

Action

Nivel de acceso

Tipo de recurso

Clave de condición

Acción dependiente

edas:ManageApplication

update

*Application

acs:edas:{#regionId}:{#accountId}:namespace/{#NameSpaceId}/application/{#AppId}

Ninguna Ninguna

Sintaxis de la solicitud

POST /pop/v5/k8s/acs/k8s_apps HTTP/1.1

Parámetros de la solicitud

Parámetro

Tipo

Obligatorio

Descripción

Ejemplo

PreStop

string

No

El script que se ejecuta antes de detener el contenedor. Ejemplo: {"tcpSocket":{"host":"", "port":8080}}. Para eliminar esta configuración, establezca el parámetro en {}. Si no establece este parámetro, la configuración se ignora.

{ "exec":{ "command":[ "ls", "/" ] } }

Envs

string

No

Las variables de entorno para el despliegue. El valor debe ser una matriz JSON de objetos. Se admiten tres tipos de variables de entorno: regulares, ConfigMap de Kubernetes y Secret de Kubernetes. El formato para una variable de entorno regular es el siguiente:

{"name":"x", "value": "y"}

Una variable de entorno ConfigMap inyecta el valor de una clave específica de un ConfigMap en las variables de entorno del contenedor. El formato es el siguiente:

{ "name": "x2", "valueFrom": { "configMapKeyRef": { "name": "my-config", "key": "y2" } } }

Una variable de entorno Secret inyecta el valor de una clave específica de un Secret en las variables de entorno del contenedor. El formato es el siguiente:

{ "name": "x3", "valueFrom": { "secretKeyRef": { "name": "my-secret", "key": "y3" } } }

Nota

Para borrar esta configuración, establezca el parámetro en una matriz JSON vacía `[]`.

[{"name":"x1","value":"y1"},{"name":"x2","valueFrom":{"configMapKeyRef":{"name":"my-config","key":"y2"}}},{"name":"x3","valueFrom":{"secretKeyRef":{"name":"my-secret","key":"y3"}}}]

ImageTag

string

No

La etiqueta de la imagen.

latest

BatchWaitTime

integer

No

El intervalo mínimo para un despliegue por fases de pods. Para obtener más información, consulte minReadySeconds.

0

Command

string

No

El comando de inicio del contenedor.

Nota

Para borrar esta configuración, establezca el parámetro en una cadena vacía "".

ls

AppId

string

Sí

El ID de la aplicación. Obtenga el ID mediante la operación ListApplication. Para obtener más información, consulte ListApplication.

e83acea6-****-47e1-96ae-c0e953772cdc

PostStart

string

No

El script que se ejecuta después de que se inicia el contenedor. Ejemplo: {"exec":{"command":["cat","/etc/group"]}}. Para eliminar esta configuración, establezca el parámetro en {}. Si no establece este parámetro, la configuración se ignora.

{ "exec":{ "command":[ "ls", "/" ] } }

Readiness

string

No

El sondeo de preparación para el contenedor. Si el sondeo falla, el tráfico del servicio de Kubernetes no se enruta al contenedor. Ejemplo: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}. Para eliminar esta configuración, establezca el parámetro en "" o {}. Si no establece este parámetro, la configuración se ignora.

{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}

Liveness

string

No

El sondeo de actividad para el contenedor. Ejemplo: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}}. Para eliminar esta configuración, establezca el parámetro en "" o {}. Si no establece este parámetro, la configuración se ignora.

{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}}

Args

string

No

Los argumentos para el comando de inicio del contenedor. El valor debe ser una matriz JSON de cadenas, como ["Argumento 1", "Argumento 2"]. Para borrar los argumentos, establezca el parámetro en una matriz JSON vacía "[]".

["args1","args2"]

Replicas

integer

No

El número de instancias de la aplicación. El valor mínimo es 0.

1

Image

string

No

La URL completa de la imagen. Este parámetro sobrescribe el parámetro ImageTag.

registry-vpc.cn-beijing.aliyuncs.com/t****/app:v1

CpuLimit

integer

No

El límite de CPU para la instancia de la aplicación durante la ejecución. Unidad: núcleos. Un valor de 0 significa que no hay límite.

1

MemoryLimit

integer

No

El límite de memoria para la instancia de la aplicación durante la ejecución. Unidad: MB. Un valor de 0 significa que no hay límite.

0

CpuRequest

integer

No

La cuota de CPU que se solicita para la instancia de la aplicación durante la ejecución. Se recomienda establecer este parámetro. Unidad: núcleos. Un valor de 0 significa que no hay límite.

Nota

Si establece este parámetro, también debe establecer el parámetro CpuLimit. El valor de CpuRequest debe ser menor o igual que el valor de CpuLimit.

0

MemoryRequest

integer

No

La cuota de memoria que se solicita para la instancia de la aplicación durante la ejecución. Se recomienda establecer este parámetro. Unidad: MB. Un valor de 0 significa que no hay solicitud.

Nota

Si establece este parámetro, también debe establecer el parámetro MemoryLimit. El valor de MemoryRequest debe ser menor o igual que el valor de MemoryLimit.

0

NasId

string

No

El ID del sistema de archivos Apsara File Storage NAS (NAS) que se va a montar. El sistema de archivos NAS debe estar en la misma región que el clúster. Debe tener una cuota de destino de montaje disponible, o su destino de montaje debe estar en un vSwitch de la VPC. Si no establece este parámetro pero existe el campo `mountDescs`, se compra automáticamente un sistema de archivos NAS y se monta en un vSwitch de la VPC de forma predeterminada.

dfs23****

MountDescs

string

No

Las configuraciones de montaje, que son una cadena JSON serializada. Ejemplo: [{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}]. En este ejemplo, `nasPath` es la ruta de almacenamiento de archivos y `mountPath` es la ruta en el contenedor donde se monta el sistema de archivos.

[{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}]

StorageType

string

No

El tipo de almacenamiento del sistema de archivos NAS. Valores válidos:

  • NAS de uso general: `Capacity` y `Performance`

  • NAS extremo: `standard` y `advance`

Actualmente, solo se admite el tipo `Performance`.

Performance

LocalVolume

string

No

La configuración para montar un archivo del host en un contenedor. Ejemplo: [{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}]. En este ejemplo, `nodePath` es la ruta del host, `mountPath` es la ruta en el contenedor y `type` es el tipo de montaje.

[{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}]

PackageUrl

string

No

La URL del paquete de despliegue. Configure este parámetro para aplicaciones desplegadas mediante un paquete FatJar o WAR.

Nota

El SDK de Java o Python para la API POP de EDAS debe ser la versión 2.44.0 o posterior.

https://e***.oss-cn-beijing.aliyuncs.com/s***-1.0-SNAPSHOT-spring-boot.jar

PackageVersion

string

No

El número de versión del paquete de despliegue. Este parámetro es obligatorio para paquetes WAR y FatJar. Puede definir el significado del número de versión.

Nota

El SDK de Java o Python para la API POP de EDAS debe ser la versión 2.44.0 o posterior.

20200720

JDK

string

No

La versión de JDK de la que depende el paquete de despliegue. Valores válidos: Open JDK 7, Open JDK 8 o Custom OpenJDK. Este parámetro no se admite para despliegues basados en imágenes. Si utiliza Custom OpenJDK, también debe configurar el campo `UserBaseImageUrl`.

Open JDK 8

WebContainer

string

No

La versión de Tomcat de la que depende el paquete de despliegue. Este parámetro se aplica a aplicaciones Spring Cloud y Dubbo desplegadas mediante paquetes WAR. No se admite para despliegues basados en imágenes.

apache-tomcat-7.0.91

EdasContainerVersion

string

No

La versión de EDAS Container de la que depende el paquete de despliegue. Este parámetro se aplica a aplicaciones HSF desplegadas mediante paquetes WAR. No se admite para despliegues basados en imágenes.

3.5.9

UriEncoding

string

No

El formato de codificación URI. Formatos admitidos: ISO-8859-1, GBK, GB2312 y UTF-8.

Nota

Si no establece este parámetro en la configuración de la aplicación, se utiliza el valor predeterminado de Tomcat.

GBK

UseBodyEncoding

boolean

No

Especifica si se debe habilitar `useBodyEncodingForURI`.

Nota

Si no establece este parámetro en la configuración de la aplicación, se utiliza el valor predeterminado `false`.

false

UpdateStrategy

string

No

La política de despliegue por fases.

  • Ejemplo 1: Despliegue por fases con una instancia canary, seguido de dos lotes, procesamiento por lotes automático y un intervalo de 1 minuto. {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}

  • Ejemplo 2: Despliegue por fases con una instancia canary, seguido de dos lotes y procesamiento por lotes manual. {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}

  • Ejemplo 3: Despliegue por fases en dos lotes, con procesamiento por lotes automático y un intervalo de 0 minutos. {"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}

{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}

McpuRequest

integer

No

El requisito mínimo de recursos de CPU. Unidad: núcleos. Un valor de 0 significa que no hay límite.

Nota

Si establece este parámetro, también debe establecer el parámetro `CpuLimit`. El valor debe ser menor o igual que el valor de `CpuLimit`.

4

McpuLimit

integer

No

La cantidad máxima de CPU que se puede utilizar. Unidad: núcleos. Un valor de 0 significa que no hay límite.

0

VolumesStr

string

No

Los volúmenes de datos.

test

PackageVersionId

string

No

El ID de la versión del paquete de despliegue.

2bcc********

ChangeOrderDesc

string

No

La descripción del registro de cambios.

Upgrade

RuntimeClassName

string

No

El tipo de entorno de ejecución del contenedor:

  • `runc`: entorno de ejecución de contenedor regular.

  • `runv`: contenedor en sandbox.

Este parámetro se aplica solo a clústeres que utilizan contenedores en sandbox.

runc

DeployAcrossZones

string

No

Especifica si se deben distribuir las instancias de la aplicación en varias zonas. `true` indica que sí, y otros valores indican que no.

true

BatchTimeout

integer

No

El periodo de tiempo de espera para el despliegue de un solo lote. Unidad: segundos.

60

EnableAhas

boolean

No

Especifica si se debe conectar a Application High Availability Service (AHAS).

true

WebContainerConfig

string

No

La configuración del contenedor Tomcat. Establezca en "" o "{}" para eliminar la configuración:

  • `useDefaultConfig`: Especifica si se debe utilizar una configuración personalizada. Si es `true`, no se utiliza la configuración personalizada. Si es `false`, se utiliza la configuración personalizada. Si no utiliza una configuración personalizada, los siguientes ajustes de parámetros no surten efecto.

  • `contextInputType`: La ruta de acceso de la aplicación.

    • `war`: No necesita introducir una ruta personalizada. La ruta de acceso es el nombre del paquete WAR.

    • `root`: No necesita introducir una ruta personalizada. La ruta de acceso es `/`.

    • `custom`: Debe introducir una ruta personalizada en el parámetro `contextPath` a continuación.

  • `contextPath`: La ruta personalizada. Este parámetro es obligatorio solo cuando `contextInputType` se establece en `custom`.

  • `httpPort`: El número de puerto. El rango válido es de 1024 a 65535. Los puertos menores que 1024 requieren permisos de root. Dado que el contenedor está configurado con permisos de administrador, especifique un número de puerto mayor que 1024. Si no configura esto, el puerto predeterminado es 8080.

  • `maxThreads`: El tamaño del pool de conexiones. El valor predeterminado es 400.

    Nota

    Esta configuración afecta significativamente al rendimiento de la aplicación. Configúrela bajo supervisión profesional.

  • `uriEncoding`: El formato de codificación para Tomcat. Valores válidos: UTF-8, ISO-8859-1, GBK y GB2312. Si no establece esto, el valor predeterminado es ISO-8859-1.

  • `useBodyEncoding`: Especifica si se debe utilizar BodyEncoding para las URL.

  • `useAdvancedServerXml`: Especifica si se debe utilizar la configuración avanzada para personalizar el archivo `server.xml`. Si los tipos y valores de parámetros anteriores no satisfacen sus necesidades, puede utilizar la configuración avanzada para editar directamente el archivo `Server.xml` de Tomcat.

  • `serverXml`: El contenido del archivo de texto personalizado `server.xml` en la configuración avanzada. Esto surte efecto cuando `useAdvancedServerXml` es `true`.

{"useDefaultConfig":false,"contextInputType":"custom","contextPath":"hello","httpPort":8088,"maxThreads":400,"uriEncoding":"UTF-8","useBodyEncoding":true,"useAdvancedServerXml":false}

JavaStartUpConfig

string

No

Los parámetros de inicio de Java. Puede configurar memoria, aplicación, política de recolección de basura (GC), herramientas, registro y descubrimiento de servicios, y ajustes personalizados. Configurar correctamente estos parámetros ayuda a reducir la sobrecarga de GC, acortar el tiempo de respuesta del servidor y mejorar el rendimiento. El parámetro es una cadena JSON. `original` es el valor de configuración y `startup` es el parámetro de inicio. El sistema concatena automáticamente todos los valores de `startup` como parámetros de inicio de Java para la aplicación. Establezca en "" o "{}" para eliminar la configuración.

{"InitialHeapSize":{"original":512,"startup":"-Xms512m"},"MaxHeapSize":{"original":1024,"startup":"-Xmx1024m"}}

SlsConfigs

string

No

La configuración de Logstore. Establezca en "" o "{}" para eliminar la configuración:

  • `Configs`:

    • `type`: El tipo de recolección. `file` para tipo de archivo, `stdout` para tipo de salida estándar.

    • `Logstore`: El nombre del Logstore. Asegúrese de que el nombre del Logstore sea único dentro del mismo clúster. El nombre debe seguir estas reglas:

      • Solo puede contener letras minúsculas, números, guiones (-) y guiones bajos (_).

      • Debe comenzar y terminar con una letra minúscula o un número.

      • El nombre debe tener entre 3 y 63 caracteres. Si se deja vacío, el sistema genera un nombre automáticamente.

    • `LogDir`: Si el tipo es salida estándar, la ruta de recolección es `stdout.log`. Si el tipo es archivo, esta es la ruta del archivo a recolectar. Se admiten comodines. La ruta de recolección debe coincidir con la expresión regular: ^/(.+)/(.*)^/$.

[{"logstore":"thisisanotherfilelog","type":"file","logDir":"/var/log/*"},{"logstore":"","type":"stdout","logDir":"stdout.log"},{"logstore":"thisisafilelog","type":"file","logDir":"/tmp/log/*"}]

DeployAcrossNodes

string

No

Especifica si se deben distribuir las instancias de la aplicación en varios nodos. `true` indica que sí, y otros valores indican que no.

true

TrafficControlStrategy

string

No

La política de control de tráfico para el despliegue por fases.

{"http":{"rules":[{"conditionType":"percent","percent":10}]}}

PvcMountDescs

string

No

Configura montajes de PersistentVolumeClaim (PVC) de Kubernetes. Esto permite montar un volumen PVC de Kubernetes en un directorio específico del contenedor. Los parámetros para `PvcMountDescs` son los siguientes:

  • `pvcName`: El nombre del volumen PVC. El volumen PVC ya debe existir y estar en estado Bound.

  • `mountPaths`: Una lista de directorios de montaje. Puede configurar múltiples directorios de montaje. Cada directorio de montaje admite los siguientes dos parámetros:

    • `mountPath`: La ruta de montaje. Una ruta absoluta en el contenedor que comienza con una barra diagonal (/).

    • `readOnly`: El modo de montaje. `true` para solo lectura, `false` para lectura y escritura. El valor predeterminado es `false`.

[{"pvcName":"nas-pvc-1","mountPaths":[{"mountPath":"/usr/share/nginx/data"},{"mountPath":"/usr/share/nginx/html","readOnly":true}]}]

ConfigMountDescs

string

No

Configura montajes de ConfigMap y Secret de Kubernetes. Esto permite montar un ConfigMap o Secret en un directorio específico del contenedor. Los parámetros para `ConfigMountDescs` son los siguientes:

  • `name`: El nombre del ConfigMap o Secret.

  • `type`: El tipo de configuración. Se admiten `ConfigMap` y `Secret`.

  • `mountPath`: La ruta de montaje. Una ruta absoluta en el contenedor que comienza con una barra diagonal (/).

[ { "name": "nginx-config", "type": "ConfigMap", "mountPath": "/etc/nginx" }, { "name": "tls-secret", "type": "Secret", "mountPath": "/etc/ssh" } ]

EnvFroms

string

No

Configura variables de entorno del tipo `EnvFrom` de Kubernetes. Esto monta un ConfigMap o Secret especificado en un directorio. Cada clave corresponde a un archivo en el directorio, y el contenido del archivo es el valor de la clave.

Los parámetros para `EnvFroms` son los siguientes.

  • `configMapRef`: Una referencia a un ConfigMap. Este campo incluye el siguiente parámetro:

    • `name`: El nombre del ConfigMap.

  • `secretRef`: Una referencia a un Secret. Este campo incluye el siguiente parámetro:

    • `name`: El nombre del Secret.

[{"name":"appname","valueFrom":{"configMapKeyRef":{"name":"appconf","key":"name"}}}]

EmptyDirs

string

No

Configura los montajes emptyDir de Kubernetes. Esto permite montar un volumen emptyDir en un directorio específico del contenedor. Los parámetros para EmptyDirs son los siguientes:

  • mountPath: La ruta de montaje del contenedor. Es obligatoria.

  • readOnly: Especifica si el volumen es de solo lectura. Opcional. true para solo lectura, false para lectura y escritura. El valor predeterminado es false.

  • subPathExpr: La expresión de subdirectorio. Opcional.

[{"mountPath":"/app-log","subPathExpr":"$(POD_IP)"},{"readOnly":true,"mountPath":"/etc/nginx"}]

CustomAffinity

string

No

La configuración de afinidad de pods. Esto surte efecto solo cuando tanto DeployAcrossNodes como DeployAcrossZones son false.

{"nodeAffinity":{"requiredDuringSchedulingIgnoredDuringExecution":{"nodeSelectorTerms":[{"matchExpressions":[{"key":"beta.kubernetes.io/arch","operator":"NotIn","values":["arm64","arm32"]}]}]},"preferredDuringSchedulingIgnoredDuringExecution":[{"weight":5,"preference":{"matchExpressions":[{"key":"kubernetes.io/os","operator":"In","values":["linux"]}]}}]},"podAffinity":{"requiredDuringSchedulingIgnoredDuringExecution":[{"namespaces":["default"],"topologyKey":"kubernetes.io/hostname","labelSelector":{"matchExpressions":[{"key":"edas.oam.acname","operator":"NotIn","values":["edas-test-app"]}]}}]},"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"namespaces":["default"],"topologyKey":"failure-domain.beta.kubernetes.io/zone","labelSelector":{"matchExpressions":[{"key":"edas.oam.acname","operator":"In","values":["edas-test-app-2"]}]}},"weight":15}]}}

CustomTolerations

string

No

La configuración de tolerancia de programación de pods. Esto surte efecto solo cuando tanto DeployAcrossNodes como DeployAcrossZones son false.

[{"key":"edas-taint-key2","operator":"Exists","effect":"NoExecute","tolerationSeconds":50},{"key":"edas-taint-key","operator":"Equal","value":"edas-taint-value","effect":"PreferNoSchedule"}]

BuildPackId

string

No

El número de paquete de compilación para EDAS Container:

  • Si no necesita cambiar la versión de EDAS Container durante el despliegue, puede dejar este parámetro sin establecer.

  • Para actualizar la versión de EDAS Container de la aplicación objetivo durante este despliegue, debe establecer este parámetro.

Puede obtener el número de dos maneras:

  • Llame a la operación ListBuildPack para consultar la lista de versiones de contenedor. Para obtener más información, consulte ListBuildPack.

  • Obténgalo de la columna Número de paquete de compilación en la tabla Guía de versiones. Por ejemplo, 59 indica EDAS Container 3.5.8.

59

Annotations

string

No

Las anotaciones para el pod de la aplicación.

{"annotation-name-1":"annotation-value-1","annotation-name-2":"annotation-value-2"}

Labels

string

No

Las etiquetas para el pod de la aplicación.

{"label-name-1":"label-value-1","label-name-2":"label-value-2"}

EnableEmptyPushReject

boolean

No

Especifica si se debe habilitar la protección contra envíos vacíos:

  • true: Habilitar la protección contra envíos vacíos.

  • false: No habilitar la protección contra envíos vacíos.

false

EnableLosslessRule

boolean

No

Especifica si se debe habilitar la regla de inicio gradual:

  • true: Habilitar la regla de inicio gradual.

  • false: No habilitar la regla de inicio gradual.

true

LosslessRuleWarmupTime

integer

No

La duración de la precarga del servicio. Unidad: segundos. El valor oscila entre 0 y 86400.

120

LosslessRuleDelayTime

integer

No

La latencia de registro del servicio. Unidad: segundos. El valor oscila entre 0 y 86400.

0

LosslessRuleFuncType

integer

No

La curva de precarga del servicio. El valor oscila entre 0 y 20. El valor predeterminado es 2, que es adecuado para escenarios generales de precarga. Esto indica que la curva de recepción de tráfico del proveedor de servicios sigue una curva cuadrática durante el periodo de precarga.

2

LosslessRuleAligned

boolean

No

Especifica si se debe habilitar el modo de despliegue continuo gradual para completar el registro del servicio antes de que el sondeo de preparación tenga éxito:

  • true: Este interruptor proporciona una verificación de estado para la aplicación en el puerto 55199 y la ruta /health sin intrusión. Cuando se completa el registro del servicio, la interfaz devuelve 200. De lo contrario, devuelve 500.

Nota

Si LosslessRuleRelated también se establece en true, esta interfaz verifica si la precarga del servicio está completa.

  • false: No proporciona una interfaz para que la aplicación verifique si el registro del servicio está completo.

false

LosslessRuleRelated

boolean

No

Especifica si se debe habilitar el modo de despliegue continuo gradual para completar la precarga del servicio antes de que el sondeo de preparación tenga éxito:

  • true: Este interruptor proporciona una verificación de estado para la aplicación en el puerto 55199 y la ruta /health sin intrusión. Cuando se completa la precarga del servicio, la interfaz devuelve 200. De lo contrario, devuelve 500.

  • false: No proporciona una interfaz para que la aplicación verifique si la precarga del servicio está completa.

false

LimitEphemeralStorage

integer

No

El límite superior del requisito de recursos de almacenamiento temporal. Unidad: GB. Un valor de 0 significa que no hay límite.

4

RequestsEphemeralStorage

integer

No

El requisito mínimo de recursos de almacenamiento temporal. Unidad: GB. Un valor de 0 significa que no hay límite.

2

Sidecars

string

No

Establece un contenedor sidecar para el pod de la aplicación. La configuración del contenedor está en formato YAML. El valor es la configuración YAML codificada en base64 del contenedor sidecar.

[ { "yamlEncoded": "Y29tbWFuZDoKICAtIHRhaWwKICAtICctZicKICAtIC9kZXYvbnVsbAppbWFnZTogJ2J1c3lib3g6bGF0ZXN0JwpuYW1lOiBidXN5Ym94Cg==" } ]

InitContainers

string

No

Establece un contenedor de inicialización para el pod de la aplicación. La configuración del contenedor está en formato YAML. El valor es la configuración YAML codificada en base64 del contenedor de inicialización.

[ { "yamlEncoded": "Y29tbWFuZDoKICAtIHNsZWVwCiAgLSAnNjAnCmltYWdlOiAnYnVzeWJveDpsYXRlc3QnCm5hbWU6IGluaXQtYnVzeWJveAo=" } ]

UserBaseImageUrl

string

No

Al utilizar un entorno de ejecución JDK personalizado, debe configurar la dirección de la imagen base. Esta dirección debe ser accesible públicamente. El servidor de EDAS extrae esta imagen para compilar la imagen de la aplicación.

openjdk:8u302

CanaryRuleId

string

No

El ID de la política de reglas de despliegue canary.

a8daf22e-****-968c7ff2ea34

TerminateGracePeriod

integer

No

El periodo de tiempo de espera para la detención gradual de la aplicación. Unidad: segundos.

120

ImagePlatforms

string

No

La arquitectura de plataforma objetivo para la imagen. Esto es válido al desplegar con un archivo WAR o JAR. Ejemplos:

  • Para especificar la arquitectura x86-64: linux/amd64

  • Para especificar la arquitectura ARM 64: linux/arm64

  • Para compilar una imagen de doble arquitectura: linux/amd64,linux/arm64

  • Si no introduce un valor, se utiliza la arquitectura predeterminada.

linux/arm64,linux/amd64

Startup

string

No

El sondeo de inicio se puede utilizar para realizar comprobaciones de actividad en contenedores de inicio lento y evitar que se finalicen antes de que estén en funcionamiento. Ejemplo: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}.

Para eliminar esta configuración, establezca el parámetro en "" o {}. Si no establece este parámetro, la configuración se ignora.

{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}}

CustomAgentVersion

string

No

Establece la versión del agente personalizado de Application Real-Time Monitoring Service (ARMS) que se va a montar en la aplicación.

Nota

Esta función solo está disponible para usuarios incluidos en la lista blanca. Para utilizar esta función, envíe un ticket para ser añadido a la lista blanca.

3.1.4

SecurityContext

string

No

Establece la propiedad SecurityContext para el contenedor del pod de la aplicación. El valor es la configuración YAML codificada en base64 de SecurityContext.

{"yamlEncoded":"cnVuQXNVc2VyOiAwCnJ1bkFzR3JvdXA6IDA="}

Elementos de la respuesta

Elemento

Tipo

Descripción

Ejemplo

object

El objeto de respuesta.

ChangeOrderId

string

El ID del proceso de cambio. Puede llamar a la operación GetChangeOrderInfo para obtenerlo. Para obtener más información, consulte GetChangeOrderInfo.

cd65b247-****-475b-ad4b-7039040d625c

Code

integer

El estado de la interfaz o un código de error POP.

200

Message

string

Información adicional.

success

RequestId

string

El ID de la solicitud.

a5281053-08e4-47a5-b2ab-5c0323de*****

Ejemplos

Respuesta exitosa

JSON Formato

{
  "ChangeOrderId": "cd65b247-****-475b-ad4b-7039040d625c",
  "Code": 200,
  "Message": "success",
  "RequestId": "a5281053-08e4-47a5-b2ab-5c0323de*****"
}

Códigos de error

Consulte Códigos de errorCódigos de error para ver la lista completa.

Notas de la versión

Consulte Notas de la versiónNotas de la versión para ver la lista completa.