5.5 实例
5.5.1 创建组件实例
},
"pipeline_ids": null, "status": 0, "creator": "ss-test",
"create_time": 1610331760105, "update_time": 1610519881943 }
状态码
表5-130 状态码说明
HTTP状态码 描述
200 操作成功
400 错误的请求
404 请求对象不存在
500 内部错误
错误码
错误码格式为:SVCSTG.00100.[Error_ID],例如:SVCSTG.00100400。错误码说明请 参考错误码。
5.5 实例
5.5.1 创建组件实例
功能介绍
此API用来创建应用组件实例。
调试
您可以在API Explorer中调试该接口。
URI
POST /v2/{project_id}/cas/applications/{application_id}/components/
{component_id}/instances
表5-131 路径参数
参数 参数类型 必选 描述
project_id String 是 租户项目ID application_id String 是 应用ID component_id String 是 组件ID
请求消息
replica Integer 是 实例副本数。
flavor_id String 是 资源规格,可查询获取所有支持的应用资源规
格接口获取系统预定义好的资源规格。
Object> 否 组件部署件。key为组件名,对于Docker多容 器场景,key为容器名称。请参考表5-149。
当组件的source参数指定软件包来源时,该参 数可以不选,默认继承组件的软件包来源。否 则,该参数是必选项。
version String 是 应用组件版本号,满足版本语义,如1.0.0。
参数 参数类型 必 选
描述
configuratio
n Object 否 配置参数,如设置环境变量,部署配置, 运维
监控等, 默认空。请参考表5-133。
description String 否 描述。
最大长度为128个字符。
external_acc
esses Array of
objects 否 外网访问,参考表5-150。
refer_resourc
es Array of
objects 是 部署资源,参考表5-151。
表5-133 configuration 参数
参数 参数类型 必
选
描述
env Array of
objects 否 环境变量,参考表5-134 storage Array of
objects 否 数据存储配置,参考表5-135 strategy Object 否 升级策略,参考表5-136 lifecycle Object 否 生命周期,参考表5-137 scheduler Object 否 调度策略,参考表5-138 probes Object 否 健康检查,参考表5-139
表5-134 environment 参数
参数 参数类型 必
选 描述
name String 是 环境变量名。
由字母、数字、下划线、中划线或者点号组 成,不能以数字开头,且长度为1~64个字 符。
value String 是 环境变量值。
表5-135 storage 参数
参数 参数类型 必
选
描述
type String 是 存储类型,取值为:
● HostPath:主机路径挂载
● EmptyDir:临时路径挂载
● ConfigMap:配置项挂载
● Secret:密钥挂载
● PersistentVolumeClaim:云存储挂载 parameters Object 是 存储的参数,参考表5-148
mounts Array of
objects 是 挂载到容器的目录,参考表5-147
表5-136 strategy 参数
参数 参数类型 必
选
描述
upgrade String 否 升级策略,默认为RollingUpdate。取值为 Recreate和RollingUpdate,分别为替换升级 和滚动升级。
表5-137 lifecycle 参数
参数 参数类型 必
选
描述
entrypoint Object 否 启动命令,参考表5-145 post-start Object 否 启动后处理,参考表5-145 pre-stop Object 否 停止前处理,参考表5-145
表5-138 scheduler 参数
参数 参数类型 必
选 描述
affinity Object 否 亲和性,参考表5-144 anti-affinity Object 否 反亲和性,参考表5-144
表5-139 probes 参数
参数 参数类型 必
选
描述
livenessProb
e Object 否 组件存活探针,参考表5-140
readinessPro
be Object 否 组件业务探针,参考表5-140
表5-140 probes_object 参数
参数 参数类型 必
选 描述
type String 是 取值可以为http、tcp或command。对应的检 查方式分别为HTTP请求检查,TCP端口检查和 执行命令检查。
parameters Object 是 检查参数。
● type为http,参考表5-141。
● type为tcp,参考表5-143。
● type为command,参考表5-142。
delay integer 否 表示启动后多久开始探测。
timeout integer 否 表示探测超时时间。
表5-141 probes_param_http 参数
参数 参数类型 必
选
描述
scheme String 是 HTTP或者HTTPS。
host String 否 默认为POD的IP。可以指定自定义的IP。
port integer 是 端口。
path String 是 请求路径。
表5-142 probes_param_command 参数
参数 参数类型 必
选 描述 command Array of
String 是 命令列表
表5-143 probes_param_tcp 参数
参数 参数类型 必
选
描述
port integer 是 端口
表5-144 scheduler_affinity 参数
参数 参数类型 必
选
描述
az Array of
String 否 az名称列表 node Array of
String 否 节点私有IP列表 application Array of
String 否 组件实例名列表
表5-145 lifecycle_entrypoint 参数
参数 参数类型 必
选
描述
command Array of
String 是 可执行的命令。
args Array of
String 是 运行参数。
表5-146 lifecycle_process 参数
参数 参数类型 必
选
描述
type String 是 取值为command或者http。command为执行 命令行,http为发送http请求。
parameters Object 是 启动后处理或者停止前处理参数。参考表
5-147。
表5-147 lifecycle_process_parameters 参数
参数 参数类型 必
选
描述
command Array of
String 是 命令参数,比如["sleep", "1"]。适用于 command类型。
host String 否 默认为POD实例的IP地址。也可以自己指定。
适用于http类型。
port integer 是 端口号。适用于http类型。
path String 是 请求url。适用于http类型。
表5-148 storage_parameters 参数
参数 参数类型 必
选
描述
path String 否 主机路径, 适用于HostPath的存储类型 name String 否 配置项或者密钥的名字, 适用于ConfigMap
和Secret的存储类型
claimName String 否 PVC的名字,适用于PersistentVolumeClaim 的存储类型
表5-149 artifact 参数
参数 参数类型 必
选 描述
storage String 是 存储方式,支持swr、obs、devcloud。
type String 是 类别,虚机部署为package,容器部署为 image。
auth String 否 认证方式,支持iam和none,默认为iam。
version String 否 版本号。
properties Map<String,
Object> 否 属性。
表5-150 external_accesses 参数
参数 参数类型 必选 描述
protocol String 否 协议,支持http、https。
address String 否 访问地址。
forward_port integer 否 端口号。
表5-151 refer_resources 参数
参数 参数类型 必选 描述
id String 是 资源ID。
注意:如果type为ecs的时候,该字段的值固定为
“Default”。
type String 是 基础资源:cce、cci、ecs、as。
可选资源:rds、dcs、elb等其他类型。
refer_alias String 否 应用别名,dcs时才提供,支持
“distributed_session”、
job_id String Job ID,用于查询创建任务信息。
instance_id String 应用组件实例ID。
示例
请求示例
{ "name": "component-instance-name",
"environment_id": "6e763000-9128-4a9d-adea-34c42cc5344d", "flavor_id": "MICRO-5G:0.5C:1G",
"replica": 1, "artifacts": {
"container-name": { "storage": "swr", "type": "image",
"url": "{IP}:20202/xxxxxxxx/junit-platformstest:1.0", "auth": "iam"
} },
"version": 1,
"description": "instance desc", "configuration": {
"refer_resources": [ {
{ "instance_id": "89f5baf5-efe4-4f12-9c0d-734d2af5a184", "job_id": "JOB66761060-f209-407c-a093-4df6f531b9dc"
}