更新时间:2023-07-03 GMT+08:00

更新AddonInstance

功能介绍

更新插件实例的功能。

URI

PUT /api/v3/addons/{id}

表1 路径参数

参数

是否必选

参数类型

描述

id

String

插件实例id

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

消息体的类型(格式)

X-Auth-Token

String

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token

表3 请求Body参数

参数

是否必选

参数类型

描述

kind

String

API类型,固定值“Addon”,该值不可修改,该字段传入无效。

apiVersion

String

API版本,固定值“v3”,该值不可修改,该字段传入无效。

metadata

AddonMetadata object

基本信息,为集合类的元素类型,包含一组由不同名称定义的属性

spec

InstanceRequestSpec object

spec是集合类的元素类型,内容为插件实例安装/升级的具体请求信息

表4 AddonMetadata

参数

是否必选

参数类型

描述

uid

String

唯一id标识

name

String

插件名称

alias

String

插件别名

labels

Map<String,String>

插件标签,key/value对格式,接口保留字段,填写不会生效

annotations

Map<String,String>

插件注解,由key/value组成

  • 安装:固定值为{"addon.install/type":"install"}

  • 升级:固定值为{"addon.upgrade/type":"upgrade"}

updateTimestamp

String

更新时间

creationTimestamp

String

创建时间

表5 InstanceRequestSpec

参数

是否必选

参数类型

描述

version

String

待安装、升级插件的版本号,例如1.0.0

  • 安装:该参数非必传,如果不传,匹配集群支持的最新版本

  • 升级:该参数必传,需指定版本号

clusterID

String

集群id

values

Map<String,Object>

插件模板安装参数(各插件不同),升级插件时需要填写全量安装参数,未填写参数将使用插件模板中的默认值,当前插件安装参数可通过查询插件实例接口获取。

addonTemplateName

String

待安装插件模板名称,如coredns

响应参数

状态码: 200

表6 响应Body参数

参数

参数类型

描述

kind

String

API类型,固定值“Addon”,该值不可修改。

apiVersion

String

API版本,固定值“v3”,该值不可修改。

metadata

AddonMetadata object

基本信息,为集合类的元素类型,包含一组由不同名称定义的属性

spec

InstanceSpec object

spec是集合类的元素类型,内容为插件实例具体信息,实例的详细描述主体部分都在spec中给出

status

AddonInstanceStatus object

插件实例状态

表7 AddonMetadata

参数

参数类型

描述

uid

String

唯一id标识

name

String

插件名称

alias

String

插件别名

labels

Map<String,String>

插件标签,key/value对格式,接口保留字段,填写不会生效

annotations

Map<String,String>

插件注解,由key/value组成

  • 安装:固定值为{"addon.install/type":"install"}

  • 升级:固定值为{"addon.upgrade/type":"upgrade"}

updateTimestamp

String

更新时间

creationTimestamp

String

创建时间

表8 InstanceSpec

参数

参数类型

描述

clusterID

String

集群id

version

String

插件模板版本号,如1.0.0

addonTemplateName

String

插件模板名称,如coredns

addonTemplateType

String

插件模板类型

addonTemplateLogo

String

插件模板logo图片的地址

addonTemplateLabels

Array of strings

插件模板所属类型

description

String

插件模板描述

values

Map<String,Object>

插件模板安装参数(各插件不同),请根据具体插件模板信息填写安装参数。

表9 AddonInstanceStatus

参数

参数类型

描述

status

String

插件实例状态

Reason

String

插件安装失败原因

message

String

安装错误详情

targetVersions

Array of strings

此插件版本,支持升级的集群版本

currentVersion

Versions object

当前插件实例使用的具体插件版本信息

表10 Versions

参数

参数类型

描述

version

String

插件版本号

input

Object

插件安装参数

stable

Boolean

是否为稳定版本

translate

Object

供界面使用的翻译信息

supportVersions

Array of SupportVersions objects

支持集群版本号

creationTimestamp

String

创建时间

updateTimestamp

String

更新时间

表11 SupportVersions

参数

参数类型

描述

clusterType

String

支持的集群类型

clusterVersion

Array of strings

支持的集群版本(正则表达式)

请求示例

{
  "kind" : "Addon",
  "apiVersion" : "v3",
  "metadata" : {
    "annotations" : {
      "addon.upgrade/type" : "upgrade"
    }
  },
  "spec" : {
    "clusterID" : "1b2ec02d-a3b2-11ec-b0d0-0255ac100099",
    "version" : "1.2.10",
    "addonTemplateName" : "gpu-beta",
    "values" : {
      "basic" : {
        "device_version" : "1.2.10",
        "driver_version" : "1.2.10",
        "obs_url" : "******",
        "region" : "******",
        "swr_addr" : "******",
        "swr_user" : "hwofficial",
        "rbac_enabled" : true
      },
      "custom" : {
        "is_driver_from_nvidia" : true,
        "nvidia_driver_download_url" : "https://us.download.nvidia.com/tesla/396.37/NVIDIA-Linux-x86_64-396.37.run"
      }
    }
  }
}

响应示例

状态码: 200

OK

{
  "kind" : "Addon",
  "apiVersion" : "v3",
  "metadata" : {
    "uid" : "684fa9b2-a987-11ec-ba79-0255ac100096",
    "name" : "gpu-beta",
    "alias" : "gpu",
    "creationTimestamp" : "2022-03-22T02:25:57Z",
    "updateTimestamp" : "2022-03-22T02:25:57Z"
  },
  "spec" : {
    "clusterID" : "1b2ec02d-a3b2-11ec-b0d0-0255ac100099",
    "version" : "1.2.10",
    "addonTemplateName" : "gpu-beta",
    "addonTemplateType" : "helm",
    "addonTemplateLogo" : "******",
    "addonTemplateLabels" : [ "Accelerator" ],
    "description" : "A device plugin for nvidia.com/gpu resource on nvidia driver",
    "values" : {
      "basic" : {
        "device_version" : "1.2.10",
        "driver_version" : "1.2.10",
        "obs_url" : "******",
        "rbac_enabled" : true,
        "region" : "******",
        "swr_addr" : "******",
        "swr_user" : "hwofficial"
      },
      "custom" : {
        "is_driver_from_nvidia" : true,
        "nvidia_driver_download_url" : "https://us.download.nvidia.com/tesla/396.37/NVIDIA-Linux-x86_64-396.37.run"
      }
    }
  },
  "status" : {
    "status" : "upgrading",
    "Reason" : "addon upgrading",
    "message" : "",
    "targetVersions" : null,
    "currentVersion" : {
      "version" : "1.2.10",
      "input" : {
        "basic" : {
          "device_version" : "1.2.10",
          "driver_version" : "1.2.10",
          "obs_url" : "******",
          "region" : "******",
          "swr_addr" : "******",
          "swr_user" : "hwofficial"
        },
        "parameters" : {
          "custom" : {
            "is_driver_from_nvidia" : true,
            "nvidia_driver_download_url" : ""
          }
        }
      },
      "stable" : true,
      "translate" : {
        "en_US" : {
          "addon" : {
            "changeLog" : "Supported GPU driver of a new version for CentOS.",
            "description" : "A device plugin for nvidia.com/gpu resource on nvidia driver"
          },
          "description" : {
            "Parameters.custom.drivers_info.cuda" : "CUDA Toolkit",
            "Parameters.custom.drivers_info.product" : "Product",
            "Parameters.custom.drivers_info.product_series" : "Product Series",
            "Parameters.custom.drivers_info.product_type" : "Product Type",
            "Parameters.custom.nvidia_driver_download_url" : "Download the nvidia driver accroding to the input link"
          },
          "key" : {
            "Parameters.custom.nvidia_driver_download_url" : "Nvidia Driver"
          }
        },
        "fr_FR" : {
          "addon" : {
            "changeLog" : "Pilote GPU pris en charge d'une nouvelle version pour CentOS.",
            "description" : "Un plug-in de dispositif pour les ressources GPU sur un pilote NVIDIA."
          },
          "description" : {
            "Parameters.custom.drivers_info.cuda" : "Boîte à outils CUDA",
            "Parameters.custom.drivers_info.product" : "Produit",
            "Parameters.custom.drivers_info.product_series" : "Serie de produits",
            "Parameters.custom.drivers_info.product_type" : "type de produit",
            "Parameters.custom.nvidia_driver_download_url" : "Téléchargez le pilote nvidia accroding sur le lien d'entrée"
          },
          "key" : {
            "Parameters.custom.nvidia_driver_download_url" : "Nvidia Driver"
          }
        },
        "zh_CN" : {
          "addon" : {
            "changeLog" : "",
            "description" : ""
          },
          "description" : {
            "Parameters.custom.drivers_info.cuda" : "CUDA Toolkit",
            "Parameters.custom.drivers_info.product" : "",
            "Parameters.custom.drivers_info.product_series" : "",
            "Parameters.custom.drivers_info.product_type" : "",
            "Parameters.custom.nvidia_driver_download_url" : ""
          },
          "key" : {
            "Parameters.custom.nvidia_driver_download_url" : ""
          }
        }
      },
      "supportVersions" : null,
      "creationTimestamp" : "2022-01-11T14:57:44Z",
      "updateTimestamp" : "2022-01-11T15:04:37Z"
    }
  }
}

状态码

状态码

描述

200

OK

错误码

请参见错误码