Reversão de uma instância de complemento
Função
Reverter a versão da instância do complemento para a versão de origem. Somente quando o parâmetro status.isRollbackable é definido como true e a instância do complemento está no estado running, available, abnormal, upgradeFailed ou rollbackFailed, a versão pode ser revertida para a versão de origem.
URI
POST /api/v3/addons/{id}/operation/rollback
Parâmetro |
Obrigatório |
Tipo |
Descrição |
---|---|---|---|
id |
Sim |
String |
ID da instância do complemento |
Parâmetros de solicitação
Parâmetro |
Obrigatório |
Tipo |
Descrição |
---|---|---|---|
X-Auth-Token |
Sim |
String |
As solicitações para chamar uma API podem ser autenticadas usando um token ou AK/SK. Se a autenticação baseada em token for usada, esse parâmetro é obrigatório e deve ser definido como um token de usuário. Para obter detalhes, consulte Obtenção de um token de usuário. |
Parâmetro |
Obrigatório |
Tipo |
Descrição |
---|---|---|---|
clusterID |
Sim |
String |
ID do cluster |
Parâmetros de resposta
Código de status: 200
Parâmetro |
Tipo |
Descrição |
---|---|---|
kind |
String |
Tipo de API. O valor é fixado em Addon e não pode ser alterado. |
apiVersion |
String |
Versão da API. O valor é fixado em v3 e não pode ser alterado. |
metadata |
AddonMetadata object |
Informações básicas sobre o objeto. Metadados são uma coleção de atributos. |
spec |
InstanceSpec object |
Descrição detalhada da instância do complemento. |
status |
AddonInstanceStatus object |
Status da instância do complemento. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
uid |
String |
ID único |
name |
String |
Nome do complemento |
alias |
String |
Alias do complemento |
labels |
Map<String,String> |
Rótulos do complemento em pares chave-valor. Este é um campo reservado e não tem efeito. |
annotations |
Map<String,String> |
Anotações do complemento, no formato de pares chave-valor.
|
updateTimestamp |
String |
Atualizado em |
creationTimestamp |
String |
Criado em |
Parâmetro |
Tipo |
Descrição |
---|---|---|
clusterID |
String |
ID do cluster. |
version |
String |
Versão do modelo de complemento, por exemplo, 1.0.0. |
addonTemplateName |
String |
Nome do modelo de complemento, por exemplo, coredns. |
addonTemplateType |
String |
Tipo de modelo de complemento. |
addonTemplateLogo |
String |
URL para obter o logotipo do modelo de complemento. |
addonTemplateLabels |
Array of strings |
Rótulos do modelo de complemento. |
description |
String |
Descrição do modelo de complemento. |
values |
Map<String,Object> |
Parâmetros de instalação do modelo de complemento (variando dependendo do complemento). Defina os parâmetros de acordo. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
status |
String |
Status de instâncias do complemento. Opções:
|
Reason |
String |
Causa da falha na instalação do complemento. |
message |
String |
Detalhes do erro de instalação. |
targetVersions |
Array of strings |
Versões para as quais a versão atual do complemento pode ser atualizada. |
currentVersion |
Versions object |
Informações sobre a versão atual do complemento. |
isRollbackable |
Boolean |
Se a versão do complemento pode ser revertida para a versão de origem. |
previousVersion |
String |
A versão do complemento antes da atualização ou reversão |
Parâmetro |
Tipo |
Descrição |
---|---|---|
version |
String |
Versão do complemento. |
input |
Object |
Parâmetros de instalação do complemento. |
stable |
Boolean |
Se a versão do complemento é uma versão estável. |
translate |
Object |
Informações de tradução usadas pela GUI. |
supportVersions |
Array of SupportVersions objects |
Versões de cluster que suportam o complemento. |
creationTimestamp |
String |
Hora de criação. |
updateTimestamp |
String |
Hora da atualização. |
Exemplo de solicitações
{ "clusterID" : "******" }
Exemplo de respostas
Código de status: 200
A versão da instância do complemento é revertida.
{ "kind" : "Addon", "apiVersion" : "v3", "metadata" : { "uid" : "******", "name" : "everest", "alias" : "everest", "creationTimestamp" : "2023-03-15T02:48:01Z", "updateTimestamp" : "2023-03-15T04:18:45Z" }, "spec" : { "clusterID" : "******", "version" : "2.1.16", "addonTemplateName" : "everest", "addonTemplateType" : "helm", "addonTemplateLogo" : "******", "addonTemplateLabels" : [ "Storage" ], "description" : "Everest is a cloud native container storage system based on CSI, used\nto support cloud storages services for Kubernetes", "values" : { "basic" : { "base_image" : "euleros", "bms_url" : "******", "cluster_version" : "v1.25", "driver_init_image_version" : "2.1.16", "ecsEndpoint" : "******", "euleros_version" : "2.2.5", "everest_image_version" : "2.1.16", "evs_url" : "******", "iam_url" : "******", "ims_url" : "******", "obs_url" : "******", "platform" : "linux-amd64", "rbac_enabled" : true, "sfs30_url" : "******", "sfs_turbo_url" : "******", "sfs_url" : "******", "supportHcs" : false, "swr_addr" : "******", "swr_user" : "******" }, "custom" : { "cluster_id" : "******", "cluster_version" : "v1.25.3-r0", "csi_attacher_detach_worker_threads" : "60", "csi_attacher_worker_threads" : "60", "default_vpc_id" : "******", "disable_auto_mount_secret" : false, "enable_node_attacher" : false, "flow_control" : { }, "multiAZEnabled" : false, "over_subscription" : "80", "project_id" : "******", "volume_attaching_flow_ctrl" : "0" }, "flavor" : { "category" : [ "CCE", "Turbo" ], "description" : "High avaiable", "name" : "HA", "replicas" : 2, "resources" : [ { "limitsCpu" : "250m", "limitsMem" : "1500Mi", "name" : "everest-csi-controller", "requestsCpu" : "250m", "requestsMem" : "600Mi" }, { "limitsCpu" : "500m", "limitsMem" : "300Mi", "name" : "everest-csi-driver", "requestsCpu" : "100m", "requestsMem" : "300Mi" } ] }, "multiAZPreferred" : { "podAntiAffinity" : { "preferredDuringSchedulingIgnoredDuringExecution" : [ { "podAffinityTerm" : { "labelSelector" : { "matchExpressions" : [ { "key" : "app", "operator" : "In", "values" : [ "everest-csi-controller" ] } ] }, "topologyKey" : "topology.kubernetes.io/zone" }, "weight" : 100 } ] } }, "multiAZRequired" : { "podAntiAffinity" : { "requiredDuringSchedulingIgnoredDuringExecution" : [ { "labelSelector" : { "matchExpressions" : [ { "key" : "app", "operator" : "In", "values" : [ "everest-csi-controller" ] } ] }, "topologyKey" : "topology.kubernetes.io/zone" } ] } }, "systemAutoInject" : { "cluster" : { "category" : "CCE", "clusterID" : "******", "clusterNetworkMode" : "vpc-router", "clusterVersion" : "v1.25.3-r0" }, "user" : { "projectID" : "******" } }, "tolerations" : [ { "effect" : "NoExecute", "key" : "node.kubernetes.io/not-ready", "operator" : "Exists", "tolerationSeconds" : 60 }, { "effect" : "NoExecute", "key" : "node.kubernetes.io/unreachable", "operator" : "Exists", "tolerationSeconds" : 60 } ] } }, "status" : { "status" : "rollbacking", "Reason" : "Rollback to 4", "message" : "", "targetVersions" : [ "2.1.18", "2.1.19" ], "isRollbackable" : false, "previousVersion" : "2.1.19", "currentVersion" : { "version" : "2.1.16", "input" : { "basic" : { "bms_url" : "******", "driver_init_image_version" : "2.1.16", "ecsEndpoint" : "******", "everest_image_version" : "2.1.16", "evs_url" : "******", "iam_url" : "******", "ims_url" : "******", "obs_url" : "******", "platform" : "linux-amd64", "sfs30_url" : "******", "sfs_turbo_url" : "******", "sfs_url" : "******", "supportHcs" : false, "swr_addr" : "******", "swr_user" : "******" }, "parameters" : { "common" : { "defaultVPCId" : 0 }, "custom" : { "cluster_id" : "", "csi_attacher_detach_worker_threads" : "60", "csi_attacher_worker_threads" : "60", "default_vpc_id" : "", "disable_auto_mount_secret" : false, "enable_node_attacher" : false, "flow_control" : { }, "multiAZEnabled" : false, "over_subscription" : "80", "project_id" : "", "volume_attaching_flow_ctrl" : "0" }, "flavor1" : { "description" : "High avaiable", "name" : "HA", "replicas" : 2, "resources" : [ { "limitsCpu" : "250m", "limitsMem" : "1500Mi", "name" : "everest-csi-controller", "requestsCpu" : "250m", "requestsMem" : "600Mi" }, { "limitsCpu" : "500m", "limitsMem" : "300Mi", "name" : "everest-csi-driver", "requestsCpu" : "100m", "requestsMem" : "300Mi" } ] }, "flavor2" : { "description" : "Has only one instance", "name" : "Single", "replicas" : 1, "resources" : [ { "limitsCpu" : "250m", "limitsMem" : "600Mi", "name" : "everest-csi-controller", "requestsCpu" : "250m", "requestsMem" : "600Mi" }, { "limitsCpu" : "100m", "limitsMem" : "300Mi", "name" : "everest-csi-driver", "requestsCpu" : "100m", "requestsMem" : "300Mi" } ] }, "flavor3" : { "description" : "custom resources", "name" : "custom-resources", "replicas" : 2, "resources" : [ { "limitsCpu" : "250m", "limitsMem" : "2000Mi", "name" : "everest-csi-controller", "requestsCpu" : "250m", "requestsMem" : "1500Mi" }, { "limitsCpu" : "500m", "limitsMem" : "300Mi", "name" : "everest-csi-driver", "requestsCpu" : "100m", "requestsMem" : "300Mi" } ] } } }, "stable" : true, "translate" : { "en_US" : { "addon" : { "changeLog" : "******", "description" : "******" }, "description" : { "Parameters.flavor1.description" : "******", "Parameters.flavor1.name" : "******", "Parameters.flavor2.description" : "******", "Parameters.flavor2.name" : "******", "Parameters.flavor3.name" : "******" } }, "zh_CN" : { "addon" : { "changeLog" : "******", "description" : "******" }, "description" : { "Parameters.flavor1.description" : "******", "Parameters.flavor1.name" : "******", "Parameters.flavor2.description" : "******", "Parameters.flavor2.name" : "******", "Parameters.flavor3.description" : "******", "Parameters.flavor3.name" : "******" } } }, "supportVersions" : null, "creationTimestamp" : "2023-02-21T16:29:02Z", "updateTimestamp" : "2023-02-22T06:49:50Z" } } }
Códigos de status
Código de status |
Descrição |
---|---|
200 |
A versão da instância do complemento é revertida. |
Códigos de erro
Consulte Códigos de erro.