You need to enable JavaScript to run this app.
导航
UpdateImageCache
最近更新时间:2024.11.26 10:50:02首次发布时间:2024.01.30 10:59:05

更新镜像缓存。

使用说明

此接口为异步接口,当此接口返回成功时,会返回镜像缓存的 ID 信息,此时镜像缓存将进入{Updating, [Progressing]}状态,直到更新执行成功,进入{Ready, [Ok]}状态。请调用 ListImageCaches 接口获取该镜像缓存当前的状态,查看镜像缓存是否更新成功。

请求说明

  • 请求方式:POST
  • 请求地址:https://open.volcengineapi.com/?Action=UpdateImageCache&Version=2022-05-12

请求参数

调用该 API 时的请求参数如下,除此之外还需传入公共请求参数。公共请求参数说明,请参见 公共参数

参数类型是否必选示例值描述
ActionStringUpdateImageCache接口名称。当前 API 的名称为 UpdateImageCache
VersionString2022-05-12接口版本。当前 API 的版本为 2022-05-12

ImageCacheId

String

imc-3uqroqkx0i3j****

待更新的镜像缓存 ID。
可以调用 ListImageCaches 接口获取镜像缓存 ID。

注意

  • 镜像缓存必须处于 Ready 状态。可以调用 ListImageCaches 接口,获取镜像缓存当前状态。
  • 如果仅传入该参数,未传入其他任何参数,则镜像缓存不会被更新。
AutoPrewarmConfigObject of AutoPrewarmConfig-镜像缓存对应的弹性块存储(EBS)快照预热策略配置。

Images

Array of String

["cr-cn-beijing.volces.com/vke****/nginx:latest"]

更新镜像缓存对应的容器镜像列表。

  • 若填写新的容器镜像,会重新创建一个新的快照,控制面将该新的快照映射到当前镜像缓存(镜像缓存 ID 不变)。
  • 若不传入参数,表示不更新镜像缓存对应的容器镜像。

注意

不更新镜像缓存对应的容器镜像时,ImageCacheSizeImageRegistryCredentialsSubnetIdsSecurityGroupIds 参数不支持更新,否则调用 API 会报错。

SubnetIds

Array of String

["subnet-3rf6vwbgkg****"]

镜像缓存实例所属的子网 ID。
可以调用 私有网络 API 获取目标子网 ID。

注意

  • 如果不更新容器镜像(Images),则不允许更新子网 ID。
  • 单次最多填写 5 个子网 ID。
  • 如果更新容器镜像(Images),则不可为空,需要填写目标子网 ID。

SecurityGroupIds

Array of String

["sg-2byy13cnsczy****"]

镜像缓存实例所属的安全组 ID。
可以调用私有网络的 DescribeSecurityGroups 接口,获取安全组 ID。

注意

  • 如果不更新容器镜像(Images),则不允许更新安全组 ID。
  • 如果更新容器镜像(Images),则不可为空,需要填写目标安全组 ID。
  • 单次最多填写 5 个安全组 ID。

ImageCacheSize

Integer

50

镜像缓存的大小。

  • 单位:GiB。
  • 取值范围:40~500。
  • 默认值:40。

注意

  • 如果不更新容器镜像(Images),则不允许更新镜像缓存大小。
  • 若更新镜像缓存大小,则必须 大于等于 该镜像缓存原先的大小。
  • 若不传入参数值,则该镜像缓存大小不变。

ImageRegistryCredentials

Array of ImageRegistryCredentials

-

镜像仓库(CR)的访问凭证信息。

注意

  • 如果不更新容器镜像(Images),则不允许更新镜像仓库访问凭证。
  • 如果更新容器镜像(Images),可以填写 CR 访问凭证信息;若不填写,则认为拉取更新后的容器镜像时不需要访问凭证。

RegistryHostnameResolvNameservers

String

["10.xx.xx.xx", "10.xx.xx.xx"]

用于解析主机名的 DNS 服务器 IP 地址。

  • 支持传入 0~3 个 IP 地址。
  • 每个地址必须为合法的 IPv4 地址。

AutoPrewarmConfig

参数类型是否必选示例值描述

ZoneIDs

Array of String

["cn-beijing-b"]

需要预热的快照可用区。

注意

不传入参数值时,默认用创建镜像缓存时指定的子网所对应的可用区。

PrewarmRetentionDays

Integer

90

镜像缓存对应 EBS 快照的预热保留时长。

  • 单位:天
  • 取值范围:1~180
  • 默认值:90

ImageRegistryCredentials

参数类型是否必选示例值描述

Server

String

cr-cn-beijing.volces.com

不带http://https://前缀的镜像仓库域名。
通过 镜像仓库控制台 或调用镜像仓库的 ListDomains 接口,获取镜像仓库域名。

UserName

String

user_****@21000****

访问镜像仓库实例的用户名。
通过 镜像仓库控制台 或调用镜像仓库的 GetUser 接口,获取访问镜像仓库实例的用户名。

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********"
        }
    ]
}

返回参数

本接口返回参数如下表所示,公共返回参数请参见 返回结果

参数类型示例值描述
ImageCacheIdStringimc-3uqroqkx********镜像缓存 ID。

返回示例

{
    "ResponseMetadata": {
        "RequestId": "2023022020005173B********",
        "Action": "UpdateImageCache",
        "Version": "2022-05-12",
        "Service": "vke",
        "Region": "cn-beijing"
    },
    "Result": {
        "ImageCacheId": "imc-3uqroqkx********"
    }
}

错误码

本接口错误码如下表所示,公共错误码请参见 公共错误码

HTTP 状态码错误码错误信息说明
400OperationDenied.StautsThe action has been forbidden due to wrong status {{Status.State}} and {{Status.StateConditions,...}}指定镜像缓存的当前状态不支持该操作。请确认该接口依赖的镜像缓存状态后重试。

400

OperationDenied.ImageCacheStatus

  • Non-Ready and Failed status:
    The action has been forbidden due to the image cache's status is not Ready or Failed.

  • Failed status:
    You can not update a Failed image cache without giving parameter Images.

  • Ready status:
    You can not update the image cache without any changing.

  • 非 Ready 或 Failed 状态的镜像缓存,无法执行更新操作。
  • Failed 状态的镜像缓存,必须传入 Images 参数值才能进行更新。
  • 发起镜像缓存更新操作,需要对以下至少 1 个字段进行更新:
    • Images
    • PrewarmRetentionDays
400UnchangedImagesYou can not update a Ready image cache with a non-null but unchanged parameter Images.当镜像缓存状态为 Ready 时,不允许提供非空且与当前取值完全一样的 Images 参数。请更新参数值后重试。
400Immutable.SubnetIdsYou can not update the subnet without updating container images.不更新容器镜像(Images)时,不允许更新镜像缓存所属的子网 ID(SubnetIds)。请更新请求参数后重试。
400Immutable.SecurityGroupIdsYou can not update the security group without updating container images.不更新容器镜像(Images)时,不允许更新镜像缓存所属的安全组 ID(SecurityGroupIds)。请更新请求参数后重试。
400Immutable.ImageCacheSizeYou can not update the image cache size without updating container images.不更新容器镜像(Images)时,不允许更新镜像缓存大小(ImageCacheSize)。请更新请求参数后重试。
400Immutable.ImageRegistryCredentialsYou can not update the image registry credentials without updating container images.不更新容器镜像(Images)时,不允许更新镜像仓库访问凭证(ImageRegistryCredentials)。请更新请求参数后重试。