華為云計(jì)算 云知識(shí) 獲取集群升級(jí)任務(wù)詳情ShowUpgradeClusterTask
獲取集群升級(jí)任務(wù)詳情ShowUpgradeClusterTask

 

功能介紹

獲取集群升級(jí)任務(wù)詳情,任務(wù)ID由調(diào)用集群升級(jí)API后從響應(yīng)體中uid字段獲取。

  • 集群升級(jí)涉及多維度的組件升級(jí)操作,強(qiáng)烈建議統(tǒng)一通過CCE控制臺(tái)執(zhí)行交互式升級(jí),降低集群升級(jí)過程的業(yè)務(wù)意外受損風(fēng)險(xiǎn);

  • 當(dāng)前集群升級(jí)相關(guān)接口受限開放。

調(diào)用方法

請(qǐng)參見如何調(diào)用API。

URI

GET /api/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks/{task_id}

表1 路徑參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

項(xiàng)目ID,獲取方式請(qǐng)參見如何獲取接口URI中參數(shù)

cluster_id

String

集群ID,獲取方式請(qǐng)參見如何獲取接口URI中參數(shù)。

task_id

String

升級(jí)任務(wù)ID,調(diào)用集群升級(jí)API后從響應(yīng)體中uid字段獲取。

請(qǐng)求參數(shù)

響應(yīng)參數(shù)

狀態(tài)碼: 200

表2 響應(yīng)Body參數(shù)

參數(shù)

參數(shù)類型

描述

apiVersion

String

api版本,默認(rèn)為v3

kind

String

資源類型,默認(rèn)為UpgradeTask

metadata

UpgradeTaskMetadata object

升級(jí)任務(wù)元數(shù)據(jù)信息

spec

UpgradeTaskSpec object

升級(jí)任務(wù)信息

status

UpgradeTaskStatus object

升級(jí)任務(wù)狀態(tài)

表3 UpgradeTaskMetadata

參數(shù)

參數(shù)類型

描述

uid

String

升級(jí)任務(wù)ID

creationTimestamp

String

任務(wù)創(chuàng)建時(shí)間

updateTimestamp

String

任務(wù)更新時(shí)間

表4 UpgradeTaskSpec

參數(shù)

參數(shù)類型

描述

version

String

升級(jí)前集群版本

targetVersion

String

升級(jí)的目標(biāo)集群版本

items

Object

升級(jí)任務(wù)附屬信息

表5 UpgradeTaskStatus

參數(shù)

參數(shù)類型

描述

phase

String

升級(jí)任務(wù)狀態(tài).

說明:

Init:初始化 Queuing:等待 Running:運(yùn)行中 Pause:暫停 Success:成功 Failed:失敗

progress

String

升級(jí)任務(wù)進(jìn)度

completionTime

String

升級(jí)任務(wù)結(jié)束時(shí)間

請(qǐng)求示例

響應(yīng)示例

狀態(tài)碼: 200

表示獲取集群升級(jí)任務(wù)詳情成功。

{
  "kind" : "UpgradeTask",
  "apiVersion" : "v3",
  "metadata" : {
    "uid" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "creationTimestamp" : "2022-12-16 13:40:20.75671 +0800 CST",
    "updateTimestamp" : "2022-12-16 13:40:20.756712 +0800 CST"
  },
  "spec" : {
    "version" : "v1.19.16-r4",
    "targetVersion" : "v1.23.5-r0"
  },
  "status" : {
    "phase" : "Init",
    "progress" : "0.00",
    "completionTime" : "2022-12-16 13:40:20.756712 +0800 CST"
  }
}

SDK代碼示例

SDK代碼示例如下。

  • Java
  • Python
  • Go
  • 更多
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cce.v3.region.CceRegion;
import com.huaweicloud.sdk.cce.v3.*;
import com.huaweicloud.sdk.cce.v3.model.*;


public class ShowUpgradeClusterTaskSolution {

    public static void main(String[] args) {
        String ak = "<YOUR AK>";
        String sk = "<YOUR SK>";
        String projectId = "<project_id>";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        CceClient client = CceClient.newBuilder()
                .withCredential(auth)
                .withRegion(CceRegion.valueOf("cn-north-4"))
                .build();
        ShowUpgradeClusterTaskRequest request = new ShowUpgradeClusterTaskRequest();
        request.withClusterId("<cluster_id>");
        request.withTaskId("<task_id>");
        try {
            ShowUpgradeClusterTaskResponse response = client.showUpgradeClusterTask(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcce.v3.region.cce_region import CceRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcce.v3 import *

if __name__ == "__main__":
    ak = "<YOUR AK>"
    sk = "<YOUR SK>"
    projectId = "<project_id>"

    credentials = BasicCredentials(ak, sk, projectId) \

    client = CceClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CceRegion.value_of("cn-north-4")) \
        .build()

    try:
        request = ShowUpgradeClusterTaskRequest()
        request.cluster_id = "<cluster_id>"
        request.task_id = "<task_id>"
        response = client.show_upgrade_cluster_task(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cce "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/region"
)

func main() {
    ak := "<YOUR AK>"
    sk := "<YOUR SK>"
    projectId := "<project_id>"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := cce.NewCceClient(
        cce.CceClientBuilder().
            WithRegion(region.ValueOf("cn-north-4")).
            WithCredential(auth).
            Build())

    request := &model.ShowUpgradeClusterTaskRequest{}
	request.ClusterId = "<cluster_id>"
	request.TaskId = "<task_id>"
	response, err := client.ShowUpgradeClusterTask(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多編程語言的SDK代碼示例,請(qǐng)參見API Explorer的代碼示例頁簽,可生成自動(dòng)對(duì)應(yīng)的SDK代碼示例。

狀態(tài)碼

狀態(tài)碼

描述

200

表示獲取集群升級(jí)任務(wù)詳情成功。

錯(cuò)誤碼

請(qǐng)參見錯(cuò)誤碼