调用StartK8sAppPrecheck接口开始K8s应用变更预检。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
请求语法
POST /pop/v5/k8s/app_precheck
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
ClusterId | string | 是 | 集群 ID。 | c37aec2a-bcca-4ec1-****-**** |
Namespace | string | 是 | K8s 集群的命名空间,它将决定您的应用部署在哪个 K8s 命名空间。默认为 default。 | default |
AppId | string | 否 | 应用 ID。 | af58edcf-f7eb-****-****-db4e425f**** |
AppName | string | 否 | 应用名称。必须以字母开头,支持数字、字母和短划线(-),最多支持 36 个字符。 | testapp |
Replicas | integer | 否 | 应用实例数。 | 2 |
LimitmCpu | integer | 否 | 应用运行过程中,应用实例的 CPU 限额。 单位:毫核数,设置为 0 表示不限制。 | 1000 |
RequestsmCpu | integer | 否 | 应用创建时,应用实例的 CPU 限额,单位:毫核数。 | 500 |
LimitMem | integer | 否 | 应用运行过程中,应用实例的内存限额,单位:MB。LimitMem 取值要不小于 RequestsMem。 | 4096 |
RequestsMem | integer | 否 | 应用创建时,应用实例的内存限额,单位:MB。设置为 0 时表示不限制。RequestsMem 的取值不能大于 LimitMem 的取值。 | 1024 |
LimitEphemeralStorage | integer | 否 | 临时存储资源需求上限,单位:GB。设置 0 表示不限制。 | 4 |
RequestsEphemeralStorage | integer | 否 | 临时存储最小资源需求,单位:GB。设置 0 表示不限制。 | 2 |
Envs | string | 否 | 部署环境变量,格式需要符合 JSON 对象数组。支持三种类型的环境变量,分别是普通环境变量,K8s ConfigMap 环境变量,K8s Secret 环境变量。普通环境变量格式如下所示:
ConfigMap 环境变量配置可以将指定的 ConfigMap 中对应的 key 的值注入到容器的环境变量中,配置的格式如下所示:
Secret 环境变量配置可以将指定的 Secret 中对应的 key 的值注入到容器的环境变量中,配置的格式如下所示:
说明
如果要取消该配置,需设置一个空 JSON 数组“[]”来表示不做配置。
| [{"name":"x1","value":"y1"},{"name":"x2","valueFrom":{"configMapKeyRef":{"name":"my-config","key":"y2"}}},{"name":"x3","valueFrom":{"secretKeyRef":{"name":"my-secret","key":"y3"}}}] |
EnvFroms | string | 否 | 配置 K8s EnvFrom 类型的环境变量,将指定的 ConfigMap 或 Secret 挂载到指定目录,每个 key 对应目录下的一个文件,文件的内容为该 key 对应的 value。 EnvFroms 的配置参数说明如下:
| [ { "name": "appname", "valueFrom": { "configMapKeyRef": { "name": "appconf" } } } ] |
EmptyDirs | string | 否 | 配置 K8s emptyDir 挂载,支持将 emptyDir 卷挂载到指定的容器目录。EmptyDirs 的配置参数说明如下:
| [{"mountPath":"/app-log","subPathExpr":"$(POD_IP)"},{"readOnly":true,"mountPath":"/etc/nginx"}] |
JavaStartUpConfig | string | 否 | Java 启动参数用于在 Java 应用启动时配置启动参数。可配置:内存配置、应用、GC 策略、工具、服务注册和发现配置和自定义等配置,正确配置这些参数有助于降低垃圾回收(GC)开销,从而缩短服务器响应时间并提高吞吐量。参数格式为 JSON 字符串:original 为配置值,startup 为启动参数,系统将自动拼接所有的 startup 作为应用程序的 Java 启动参数。设置为
| {"InitialHeapSize":{"original":512,"startup":"-Xms512m"},"MaxHeapSize":{"original":1024,"startup":"-Xmx1024m"}} |
ConfigMountDescs | string | 否 | 配置 K8s ConfigMap 和 Secret 挂载,支持将 ConfigMap 和 Secret 挂载到指定的容器目录。ConfigMountDescs 的配置参数说明如下:
| [{"name":"nginx-config","type":"ConfigMap","mountPath":"/etc/nginx"},{"name":"tls-secret","type":"secret","mountPath":"/etc/ssh"}] |
PvcMountDescs | string | 否 | 配置 K8s PVC(PersistentVolumeClaim)挂载,支持将 K8s PVC 卷挂载到指定的容器目录。PvcMountDescs 的配置参数说明如下:
| [{"pvcName":"nas-pvc-1","mountPaths":[{"mountPath":"/usr/share/nginx/data"},{"mountPath":"/usr/share/nginx/html","readOnly":true}]}] |
Annotations | string | 否 | 应用 Pod 注解。 | {"annotation-name-1":"annotation-value-1","annotation-name-2":"annotation-value-2"} |
Labels | string | 否 | 应用 Pod 标签。 | {"label-name-1":"label-value-1","label-name-2":"label-value-2"} |
ImageUrl | string | 否 | 镜像 URL。 | registry.cn-hangzhou.aliyuncs.com/mw/testapp:latest |
PackageUrl | string | 否 | 部署包地址。 | https://e***.oss-cn-beijing.aliyuncs.com/s***-1.0-SNAPSHOT-spring-boot.jar |
LocalVolume | string | 否 | 宿主机文件挂载到容器内的配置。例如:
| [{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}] |
RegionId | string | 否 | 阿里云地域 ID。 | cn-hangzhou |
ComponentIds | string | 否 | 应用组件 ID。可通过查询组件列表接口 ListComponents 接口获取。当创建的应用运行环境使用 Apache Tomcat(适用于 WAR 包部署的 Dubbo 应用)或者标准 Java 应用运行环境(适用于 JAR 包部署的 Spring Boot 或 Spring Cloud 应用)时需要指定。 常用的应用组件 ID 及含义:
该参数需要更新 Java 或者 Python SDK 版本到 2.57.3 或以上版本才可以设置,未使用 EDAS 提供的 SDK 的(例如在使用 aliyun-python-sdk-core、aliyun-java-sdk-core、aliyun cli 等)用户可直接设置该参数。 | 7 |
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "7638276F-****-****-884F-54CC0BC84A8D",
"Code": 200,
"Message": "success",
"Data": {
"Jobs": [
"集群健康检查。"
]
}
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
500 | Edas.errorcode.PermissionDenied.message | You are not authorized to perform the operation. | 无权限操作 |
访问错误中心查看更多错误码。