Rolling Back an Add-on Instance
Function
Roll back the add-on instance version to the source version. Only when the status.isRollbackable parameter is set to true, and the add-on instance is in the running, available, abnormal, upgradeFailed, or rollbackFailed state, the version can be rolled back to the source version.
URI
POST /api/v3/addons/{id}/operation/rollback
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
id |
Yes |
String |
Add-on instance ID |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
Requests for calling an API can be authenticated using either a token or AK/SK. If token-based authentication is used, this parameter is mandatory and must be set to a user token. For details, see Obtaining a User Token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
clusterID |
Yes |
String |
Cluster ID |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
kind |
String |
API type. The value is fixed at Addon and cannot be changed. |
apiVersion |
String |
API version. The value is fixed at v3 and cannot be changed. |
metadata |
AddonMetadata object |
Basic information about the object. Metadata is a collection of attributes. |
spec |
InstanceSpec object |
Detailed description of the add-on instance. |
status |
AddonInstanceStatus object |
Add-on instance status. |
Parameter |
Type |
Description |
---|---|---|
uid |
String |
Unique ID |
name |
String |
Add-on name |
alias |
String |
Add-on alias |
labels |
Map<String,String> |
Add-on labels in key-value pairs. This is a reserved field and does not take effect. |
annotations |
Map<String,String> |
Add-on annotations in the format of key-value pairs.
|
updateTimestamp |
String |
Updated at |
creationTimestamp |
String |
Created at |
Parameter |
Type |
Description |
---|---|---|
clusterID |
String |
Cluster ID. |
version |
String |
Add-on template version, for example, 1.0.0. |
addonTemplateName |
String |
Add-on template name, for example, coredns. |
addonTemplateType |
String |
Add-on template type. |
addonTemplateLogo |
String |
URL for obtaining the add-on template logo. |
addonTemplateLabels |
Array of strings |
Labels of the add-on template. |
description |
String |
Add-on template description. |
values |
Map<String,Object> |
Add-on template installation parameters (varying depending on the add-on). Set the parameters accordingly. |
Parameter |
Type |
Description |
---|---|---|
status |
String |
Statuses of add-on instances. Options:
|
Reason |
String |
Cause of the add-on installation failure. |
message |
String |
Installation error details. |
targetVersions |
Array of strings |
Versions to which the current add-on version can be upgraded. |
currentVersion |
Versions object |
Information about the current add-on version. |
isRollbackable |
Boolean |
Whether the add-on version can be rolled back to the source version. |
previousVersion |
String |
The add-on version before upgrade or rollback |
Parameter |
Type |
Description |
---|---|---|
version |
String |
Add-on version. |
input |
Object |
Add-on installation parameters. |
stable |
Boolean |
Whether the add-on version is a stable release. |
translate |
Object |
Translation information used by the GUI. |
supportVersions |
Array of SupportVersions objects |
Cluster versions that support the add-on. |
creationTimestamp |
String |
Creation time. |
updateTimestamp |
String |
Update time. |
Example Requests
{ "clusterID" : "******" }
Example Responses
Status code: 200
Add-on instance version is rolled back.
{ "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\rto 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" } } }
Status Codes
Status Code |
Description |
---|---|
200 |
Add-on instance version is rolled back. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot