
# 修改组件实例
#### 功能介绍
通过此API修改组件实例。
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=ServiceStage&api=ChangeInstance)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
PUT /v2/{project_id}/cas/applications/{application_id}/components/{component_id}/instances/{instance_id}
表1路径参数 
| 参数             | 是否必选 | 参数类型   | 描述                                                                                                   |
|:---|:---|:---|:---|
| project_id     | 是    | String | 租户项目ID。获取方法，请参考[获取项目ID](https://support.huaweicloud.com/api-servicestage/servicestage_06_0164.html)。 |
| application_id | 是    | String | 应用ID。获取方法，请参考[获取所有应用](https://support.huaweicloud.com/api-servicestage/servicestage_06_0031.html)。   |
| component_id   | 是    | String | 组件ID。获取方法，请参考[获取应用所有组件](https://support.huaweicloud.com/api-servicestage/servicestage_06_0040.html)。 |
| instance_id    | 是    | String | 组件实例ID。获取方法，请参考[获取组件实例](https://support.huaweicloud.com/api-servicestage/servicestage_06_0046.html)。 |
   
#### 请求消息
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                           |
|:---|:---|:---|:---|
| Content-Type | 是    | String | 消息体的类型（格式），默认取值为"application/json;charset=utf8"。                                                                                             |
| X-Auth-Token | 是    | String | 调用接口的认证方式分为Token和AK/SK两种，如果您使用的Token方式，此参数为必填，请填写Token的值。Token获取方式，请参考[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)。 |
   
表3请求Body参数 
| 参数                | 是否必选 | 参数类型                  | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| version           | 是    | String                | 应用组件版本号，满足版本语义，如1.0.1。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| flavor_id         | 否    | String                | 资源规格，可查询[获取所有支持的应用资源规格](https://support.huaweicloud.com/api-servicestage/servicestage_06_0021.html)接口获取系统预定义好的资源规格。 如果需要自定义资源规格的话，自定义资源规格的格式为：CUSTOM-xxG:xxm-xxm:xxGi-xxGi。其中： - xxG表示给组件实例分配的存储的大小，为保留字段，当前未生效，可以指定为一个固定的数字。  - xxm-xxm用于指定给组件实例分配的cpu最大核数和最小核数。  - xxGi-xxGi用于指定给组件实例分配的最大内存和最小内存。   例如，CUSTOM-10G:0.5m-0.25m:1.6Gi-0.8Gi，表示给组件实例分配的cpu核数最大为0.5核，最小为0.25核，分配的最大内存为1.6Gi，最小为0.8Gi。 |
| artifacts         | 否    | Map\<String, Object\> | 组件部署件，key为组件名；对于Docker多容器场景，key为容器名称。请参考[表4]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| configuration     | 否    | Object                | 配置参数，如设置环境变量、部署配置、运维监控等， 默认为空。请参考[创建组件实例](https://support.huaweicloud.com/api-servicestage/servicestage_06_0045.html)的[表4](https://support.huaweicloud.com/api-servicestage/servicestage_06_0045.html#servicestage_06_0045__table1954437389)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| description       | 否    | String                | 描述。 最大长度为128个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| external_accesses | 否    | Array of objects      | 访问方式，请参考[表5]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| refer_resources   | 否    | Array of objects      | 部署资源，请参考[表6]。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   
 表4artifact 
| 参数         | 是否必选 | 参数类型                 | 描述                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| storage    | 是    | String               | 存储方式，支持软件仓库swr、镜像仓库swr、对象存储obs、软件发布库codearts。                                                                                                                                                                                                                                                             |
| type       | 是    | String               | 类别。 - 虚拟机部署支持软件包package。  - 容器部署支持软件包package、镜像包image。   |
| url        | 是    | String               | 软件包/镜像地址。对于基于虚机部署的组件，值为软件包的地址。对于基于容器部署的组件，值为镜像的地址或者"组件名:v${index}"，后者表示使用组件来源中的源码或者软件包自动构建生成的镜像。                                                                                                                                                                                                          |
| auth       | 是    | String               | 认证方式，支持iam和none，默认为iam。                                                                                                                                                                                                                                                                                   |
| version    | 否    | String               | 版本号。                                                                                                                                                                                                                                                                                                      |
| properties | 否    | Map\<String,String\> | 属性。                                                                                                                                                                                                                                                                                                       |
   
 表5external_accesses 
| 参数           | 是否必选 | 参数类型    | 描述                       |
|:---|:---|:---|:---|
| id           | 否    | String  | 访问方式ID。                  |
| protocol     | 是    | String  | 协议，支持http和https。         |
| address      | 是    | String  | 访问地址，例如：www.example.com。 |
| forward_port | 是    | Integer | 应用组件进程侦听端口。              |
| type         | 否    | String  | 类型。                      |
| status       | 否    | String  | 状态。                      |
| create_time  | 否    | Integer | 创建时间。                    |
| update_time  | 否    | Integer | 修改时间。                    |
   
 表6refer_resources 
| 参数          | 是否必选 | 参数类型                 | 描述                                                                                                                                              |
|:---|:---|:---|:---|
| id          | 是    | String               | 资源ID。                                                                                                                                           |
| type        | 是    | String               | 资源类型，含rds、dcs等类型。                                                                                                                               |
| refer_alias | 否    | String               | 应用别名，dcs时才提供，支持"distributed_session"、"distributed_cache"、"distributed_session, distributed_cache"，默认值是"distributed_session, distributed_cache"。 |
| parameters  | 否    | Map\<String,Object\> | 引用资源参数。                                                                                                                                         |
   
#### 响应消息
表7响应参数 
| 参数     | 参数类型   | 描述                 |
|:---|:---|:---|
| job_id | String | Job ID，用于查询创建任务信息。 |
   
#### 请求示例
修改应用组件实例，修改组件部署件为存储在swr镜像仓库swr.roma-dev-1.roma.development.com/ns1/examples:v2下名称为test-micro的镜像包，部署资源修改为id为523498f1-36c4-11eb-ae36-0255ac1000c2的CCE和专业版微服务引擎CSE。
```
{
"description": "",
"artifacts": {
"test-micro": {
"storage": "swr",
"type": "image",
"url": "swr.roma-dev-1.roma.development.com/ns1/examples:v2", 
"auth": "iam",
"version": "1.0.0",
"properties": {}
}
},
"refer_resources": [
{
"id": "523498f1-36c4-11eb-ae36-0255ac1000c2",
"type": "cce",
"parameters": {
"namespace": "default"
}
},
{
"id": "default",
"type": "cse"
}
],
"version": "1.0.2"
}
```
#### 响应示例
```
{
    "job_id": "JOB66761060-f209-407c-a093-4df6f531b9dc"
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 200 | 操作成功。   |
| 400 | 错误的请求。  |
| 404 | 请求对象不存在 |
| 500 | 内部错误    |
   
#### 错误码
请参考[ServiceStage错误码](https://support.huaweicloud.com/api-servicestage/servicestage_06_0162.html)。
