更新镜像缓存。
此接口为异步接口,当此接口返回成功时,会返回镜像缓存的 ID 信息,此时镜像缓存将进入{Updating, [Progressing]}
状态,直到更新执行成功,进入{Ready, [Ok]}
状态。请调用 ListImageCaches 接口获取该镜像缓存当前的状态,查看镜像缓存是否更新成功。
调用该 API 时的请求参数如下,除此之外还需传入公共请求参数。公共请求参数说明,请参见 公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | UpdateImageCache | 接口名称。当前 API 的名称为 UpdateImageCache 。 |
Version | String | 是 | 2022-05-12 | 接口版本。当前 API 的版本为 2022-05-12 。 |
ImageCacheId | String | 是 | imc-3uqroqkx0i3j**** | 待更新的镜像缓存 ID。 注意
|
AutoPrewarmConfig | Object of AutoPrewarmConfig | 否 | - | 镜像缓存对应的弹性块存储(EBS)快照预热策略配置。 |
Images | Array of String | 否 | ["cr-cn-beijing.volces.com/vke****/nginx:latest"] | 更新镜像缓存对应的容器镜像列表。
注意 不更新镜像缓存对应的容器镜像时,ImageCacheSize、ImageRegistryCredentials、SubnetIds、SecurityGroupIds 参数不支持更新,否则调用 API 会报错。 |
SubnetIds | Array of String | 否 | ["subnet-3rf6vwbgkg****"] | 镜像缓存实例所属的子网 ID。 注意
|
SecurityGroupIds | Array of String | 否 | ["sg-2byy13cnsczy****"] | 镜像缓存实例所属的安全组 ID。 注意
|
ImageCacheSize | Integer | 否 | 50 | 镜像缓存的大小。
注意
|
ImageRegistryCredentials | Array of ImageRegistryCredentials | 否 | - | 镜像仓库(CR)的访问凭证信息。 注意
|
RegistryHostnameResolvNameservers | String | 否 | ["10.xx.xx.xx", "10.xx.xx.xx"] | 用于解析主机名的 DNS 服务器 IP 地址。
|
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
ZoneIDs | Array of String | 否 | ["cn-beijing-b"] | 需要预热的快照可用区。 注意 不传入参数值时,默认用创建镜像缓存时指定的子网所对应的可用区。 |
PrewarmRetentionDays | Integer | 否 | 90 | 镜像缓存对应 EBS 快照的预热保留时长。
|
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Server | String | 是 | cr-cn-beijing.volces.com | 不带 |
UserName | String | 是 | user_****@21000**** | 访问镜像仓库实例的用户名。 |
Password | String | 是 | dGhpcyBpcyBh******** | 镜像仓库实例用户名对应的密码。 注意 需要对密码进行 Base 64 编码后传入。Base 64 编码相关注意事项,请参见 FAQ。 您也可以获取临时访问密钥,访问镜像仓库实例。详细操作,请参见 GetAuthorizationToken。 |
POST https://open.volcengineapi.com/?Action=UpdateImageCache&Version=2022-05-12 Content-Type: application/json { "ImageCacheId": "imc-3uqroqkx0i3j****", "AutoPrewarmConfig": { "ZoneIDs": [ "cn-beijing-b" ], "PrewarmRetentionDays": 90 }, "Images": [ "cr-cn-beijing.volces.com/vke****/nginx: latest" ], "SubnetIds": [ "subnet-3rf6vwbgkg****" ], "SecurityGroupIds": [ "sg-2byy13cnsczy****" ], "ImageCacheSize": 50, "ImageRegistryCredentials": [ { "Server": "cr-cn-beijing.volces.com", "UserName": "user_****@21000****", "Password": "dGhpcyBpcyBh********" } ] }
本接口返回参数如下表所示,公共返回参数请参见 返回结果。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
ImageCacheId | String | imc-3uqroqkx******** | 镜像缓存 ID。 |
{ "ResponseMetadata": { "RequestId": "2023022020005173B********", "Action": "UpdateImageCache", "Version": "2022-05-12", "Service": "vke", "Region": "cn-beijing" }, "Result": { "ImageCacheId": "imc-3uqroqkx********" } }
本接口错误码如下表所示,公共错误码请参见 公共错误码。
HTTP 状态码 | 错误码 | 错误信息 | 说明 |
---|---|---|---|
400 | OperationDenied.Stauts | The action has been forbidden due to wrong status {{Status.State}} and {{Status.StateConditions,...}} | 指定镜像缓存的当前状态不支持该操作。请确认该接口依赖的镜像缓存状态后重试。 |
400 | OperationDenied.ImageCacheStatus |
|
|
400 | UnchangedImages | You can not update a Ready image cache with a non-null but unchanged parameter Images. | 当镜像缓存状态为 Ready 时,不允许提供非空且与当前取值完全一样的 Images 参数。请更新参数值后重试。 |
400 | Immutable.SubnetIds | You can not update the subnet without updating container images. | 不更新容器镜像(Images)时,不允许更新镜像缓存所属的子网 ID(SubnetIds)。请更新请求参数后重试。 |
400 | Immutable.SecurityGroupIds | You can not update the security group without updating container images. | 不更新容器镜像(Images)时,不允许更新镜像缓存所属的安全组 ID(SecurityGroupIds)。请更新请求参数后重试。 |
400 | Immutable.ImageCacheSize | You can not update the image cache size without updating container images. | 不更新容器镜像(Images)时,不允许更新镜像缓存大小(ImageCacheSize)。请更新请求参数后重试。 |
400 | Immutable.ImageRegistryCredentials | You can not update the image registry credentials without updating container images. | 不更新容器镜像(Images)时,不允许更新镜像仓库访问凭证(ImageRegistryCredentials)。请更新请求参数后重试。 |