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.