调用DeployK8sApplication在容器服务K8s集群或Serverless K8s集群中部署应用。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求头
该接口使用公共请求头,无特殊请求头。请参见公共请求参数文档。
请求语法
POST /pop/v5/k8s/acs/k8s_apps HTTPS|HTTP
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
AppId | String | 是 | e83acea6-****-47e1-96ae-c0e953772cdc |
应用ID,可通过调用ListApplication接口获取,详情请参见ListApplication。 |
PreStop | String | 否 | {\"exec\":{\"command\":[\"ls\",\"/\"]}}" |
停止前执行脚本,示例格式:{"tcpSocket":{"host":"", "port":8080}}。 如果设置为“”或者{}代表删除,不设置表示忽略。 |
Envs | String | 否 | [{"name":"x","value":"y"},{"name":"x2","value":"y2"}] |
部署环境变量,格式必须符合JSON对象数组 [{"name":"x","value":"y"},{"name":"x2","value":"y2"}],其中key固定为name和value。 说明 如果要取消该配置,需设置一个空JSON数组"[]"来表示不做配置。
|
ImageTag | String | 否 | latest |
镜像Tag |
BatchWaitTime | Integer | 否 | 0 |
Pod分批发布的最小间隔时间,详细信息请参见minReadySeconds。 |
Command | String | 否 | ls |
容器启动命令。 说明 如果要取消该配置,需设置一个空字符串
"" 来表示不做配置。
|
PostStart | String | 否 | {\"exec\":{\"command\":[\"ls\",\"/\"]}}" |
启动后执行脚本,格式如:{"exec":{"command":["cat","/etc/group"]}}。如果设置为“”或者{}表示删除,不设置表示忽略。 |
Readiness | String | 否 | {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}} |
容器业务状态检查,如果检查失败,经过K8s service的流量将不转入到该容器,格式如:{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}。如果设置为“”或者{}表示删除,不设置表示忽略。 |
Liveness | String | 否 | {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}} |
容器存活状态监测,格式如{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}}。如果设置为“”或者{}表示删除,不设置表示忽略。 |
Args | String | 否 | ["args1","args2"] |
容器启动Args命令参数,格式必须符合JSON数组["参数1","参数2"],其中key固定为字符串,清空需设置为空JSON数组"[]"。 |
Replicas | Integer | 否 | 1 |
应用实例数,最小为0。 |
Image | String | 否 | registry-vpc.cn-beijing.aliyuncs.com/t****/app:v1 |
镜像完整URL,覆盖镜像Tag参数。 |
CpuLimit | Integer | 否 | 1 |
应用运行过程中,应用实例的CPU限制。 单位:核数,设置为0表示不限制。 |
MemoryLimit | Integer | 否 | 0 |
应用运行过程中,应用实例的内存限制。单位:MB,设置为0表示不限制。 |
CpuRequest | Integer | 否 | 0 |
应用运行过程中,应用实例需要申请的CPU配额,推荐设置。 单位:核数,设置为0表示不限制。 说明 设置该参数时,还需要设置CpuLimit参数,且需要小于等于CpuLimit的参数值。
|
MemoryRequest | Integer | 否 | 0 |
应用运行过程中,应用实例需要申请的内存配额,推荐设置。单位:MB。设置为0表示不申请。 说明 设置该参数时,还需要设置MemoryLimit参数,且需要小于等于MemoryLimit的参数值。
|
NasId | String | 否 | dfs23**** |
挂载的NAS的ID,必须与集群在同一个地域。它必须有可用的挂载点创建额度,或者它的挂载点已经在VPC内的交换机上。如果不填,且存在mountDescs字段,则默认将自动购买一个NAS并挂载到VPC内的交换机上。 |
MountDescs | String | 否 | [{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}] |
挂载配置描述,为一个序列化的JSON。例如:[{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}]。其中,nasPath是指文件储存路径;mountPath是指挂载到容器内的路径。 |
StorageType | String | 否 | Performance |
目前只支持SSD型 |
LocalVolume | String | 否 | [{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}] |
宿主机文件挂载到容器内的配置。例如:[{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}]。其中,nodePath为宿主机路径;mountPath为容器内的路径;type为挂载类型。 |
PackageUrl | String | 否 | https://e***.oss-cn-beijing.aliyuncs.com/s***-1.0-SNAPSHOT-spring-boot.jar |
部署包地址。通过FatJar或WAR包部署的应用需要配置部署包地址。 说明 EDAS POP API的Java或者Python SDK需要2.44.0或以上版本。
|
PackageVersion | String | 否 | 20200720 |
部署包的版本号,WAR和FatJar类型必填。请自定义它的含义。 说明 EDAS POP API的Java或者Python SDK需要2.44.0或以上版本。
|
JDK | String | 否 | Open JDK 8 |
部署包依赖的JDK版本,JDK支持版本为Open JDK 7和Open JDK 8。镜像不支持此参数。 |
WebContainer | String | 否 | apache-tomcat-7.0.91 |
部署包依赖的Tomcat版本。适用于通过WAR包部署的Spring Cloud和Dubbo应用,镜像不支持此参数。 |
EdasContainerVersion | String | 否 | 3.5.9 |
部署包依赖的EDAS Container版本。适用于通过WAR包部署的HSF应用,镜像不支持此参数。 |
UriEncoding | String | 否 | GBK |
URI编码方式,支持ISO-8859-1、GBK、GB2312和UTF-8。 说明 应用配置不设置该参数,使用Tomcat默认值。
|
UseBodyEncoding | Boolean | 否 | false |
useBodyEncodingForURI是否启用。 说明 应用配置不设置该参数,使用默认值false。
|
UpdateStrategy | String | 否 | {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}} |
分批发布策略
|
McpuRequest | Integer | 否 | 4 |
CPU最小资源需求,单位:核数。设置为0表示不限制。 说明 设置该参数时,还需要设置CpuLimit参数,且需要小于等于CpuLimit的参数值。
|
McpuLimit | Integer | 否 | 0 |
CPU能使用的最大值,单位:核数。设置为0表示不做限制。 |
VolumesStr | String | 否 | test |
数据卷。 |
PackageVersionId | String | 否 | 2bcc******** |
部署包版本ID。 |
ChangeOrderDesc | String | 否 | 升级 |
变更记录描述。 |
RuntimeClassName | String | 否 | runc |
容器运行时类型,仅适用于使用安全沙箱容器的集群。 |
DeployAcrossZones | String | 否 | true |
是否将应用实例分布到多可用区。“true”为是,其他值为否。 |
BatchTimeout | Integer | 否 | 60 |
单批发布超时时间,单位:秒。 |
EnableAhas | Boolean | 否 | true |
是否接入AHAS。 |
WebContainerConfig | String | 否 | {"useDefaultConfig":false,"contextInputType":"custom","contextPath":"hello","httpPort":8088,"maxThreads":400,"uriEncoding":"UTF-8","useBodyEncoding":true,"useAdvancedServerXml":false} |
Tomcat容器配置,设置为""或"{}"表示删除配置:
|
JavaStartUpConfig | String | 否 | {"InitialHeapSize":{"original":512,"startup":"-Xms512m"},"MaxHeapSize":{"original":1024,"startup":"-Xmx1024m"}} |
Java启动参数用于在Java应用启动时配置启动参数。可配置:内存配置、应用、GC策略、工具、服务注册和发现配置和自定义等配置,正确配置这些参数有助于降低垃圾回收(GC)开销,从而缩短服务器响应时间并提高吞吐量。参数格式为JSON字符串:original为配置值,startup为启动参数,系统将自动拼接所有的startup作为应用程序的Java启动参数。设置为""或"{}"表示删除配置。 |
SlsConfigs | String | 否 | [{"logstore":"thisisanotherfilelog","type":"file","logDir":"/var/log/*"},{"logstore":"","type":"stdout","logDir":"stdout.log"},{"logstore":"thisisafilelog","type":"file","logDir":"/tmp/log/*"}] |
Logstore配置,设置为""或"{}"表示删除配置:
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
ChangeOrderId | String | cd65b247-****-475b-ad4b-7039040d625c |
变更流程ID,可调用GetChangeOrderInfo接口获取,详情请参见GetChangeOrderInfo。 |
Code | Integer | 200 |
接口状态或POP错误码 |
Message | String | success |
附加信息 |
RequestId | String | a5281053-08e4-47a5-b2ab-5c0323de7b5a |
请求ID |
示例
请求示例
POST /pop/v5/k8s/acs/k8s_apps HTTP/1.1
公共请求头
{
"AppId": "e83acea6-****-47e1-96ae-c0e953772cdc"
}
正常返回示例
XML
格式
<RequestId>a5281053-08e4-47a5-b2ab-5c0323de7b5a</RequestId>
<Message>success</Message>
<ChangeOrderId>cd65b247-****-475b-ad4b-7039040d625c</ChangeOrderId>
<Code>200</Code>
JSON
格式
{
"RequestId": "a5281053-08e4-47a5-b2ab-5c0323de7b5a",
"Message": "success",
"ChangeOrderId": "cd65b247-****-475b-ad4b-7039040d625c",
"Code": 200
}
错误码
访问错误中心查看更多错误码。