華為云計(jì)算 云知識(shí) 節(jié)點(diǎn)遷移MigrateNode
節(jié)點(diǎn)遷移MigrateNode

 

功能介紹

該API用于在指定集群下 遷移 節(jié)點(diǎn)到另一集群(僅支持在同一VPC、同一項(xiàng)目下的不同集群之間進(jìn)行遷移,且遷移前后的集群類(lèi)型需相同)。 CCE Turbo集群下彈性云服務(wù)-物理機(jī)類(lèi)型節(jié)點(diǎn)不支持遷移。

集群管理的URL格式為:https://Endpoint/uri。其中uri為資源路徑,也即API訪問(wèn)的路徑。

調(diào)用方法

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

URI

PUT /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/operation/migrateto/{target_cluster_id}

表1 路徑參數(shù)

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

project_id

String

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

cluster_id

String

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

target_cluster_id

String

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

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

表2 請(qǐng)求Header參數(shù)

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

Content-Type

String

消息體的類(lèi)型(格式)

X-Auth-Token

String

調(diào)用接口的認(rèn)證方式分為T(mén)oken和AK/SK兩種,如果您使用的Token方式,此參數(shù)為必填,請(qǐng)?zhí)顚?xiě)Token的值,獲取方式請(qǐng)參見(jiàn)獲取token。

表3 請(qǐng)求Body參數(shù)

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

apiVersion

String

API版本,固定值“v3”。

kind

String

API類(lèi)型,固定值“MigrateNodesTask”。

spec

MigrateNodesSpec object

配置信息

status

TaskStatus object

任務(wù)狀態(tài)

表4 MigrateNodesSpec

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

os

String

操作系統(tǒng)類(lèi)型,須精確到版本號(hào)。 當(dāng)指定“alpha.cce/NodeImageID”參數(shù)時(shí),“os”參數(shù)必須和用戶(hù)自定義 鏡像 的操作系統(tǒng)一致。

extendParam

MigrateNodeExtendParam object

遷移節(jié)點(diǎn)時(shí)的擴(kuò)展參數(shù)

login

Login object

節(jié)點(diǎn)的登錄方式。密鑰對(duì)和密碼登錄方式二者必選其一。

runtime

Runtime object

容器運(yùn)行時(shí)

nodes

Array of NodeItem objects

待操作節(jié)點(diǎn)列表

表5 MigrateNodeExtendParam

參數(shù)

是否必選

參數(shù)類(lèi)型

maxPods

Integer

DockerLVMConfigOverride

String

alpha.cce/preInstall

String

alpha.cce/postInstall

String

alpha.cce/NodeImageID

String

表6 Login

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

sshKey

String

選擇密鑰對(duì)方式登錄時(shí)的密鑰對(duì)名稱(chēng)。

userPassword

UserPassword object

選擇密碼方式登錄時(shí)的帳號(hào)密碼信息,之后可通過(guò)此帳號(hào)密碼登錄節(jié)點(diǎn)。

表7 UserPassword

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

username

String

登錄帳號(hào),默認(rèn)為“root”

password

String

登錄密碼,若創(chuàng)建節(jié)點(diǎn)通過(guò)用戶(hù)名密碼方式,即使用該字段,則響應(yīng)體中該字段作屏蔽展示。 密碼復(fù)雜度要求:

  • 長(zhǎng)度為8-26位。

  • 密碼至少必須包含大寫(xiě)字母、小寫(xiě)字母、數(shù)字和特殊字符(!@$%^-_=+[{}]:,./?~#*)中的三種。

  • 密碼不能包含用戶(hù)名或用戶(hù)名的逆序。 創(chuàng)建節(jié)點(diǎn)時(shí)password字段需要加鹽加密,具體方法請(qǐng)參見(jiàn)創(chuàng)建節(jié)點(diǎn)時(shí)password字段加鹽加密。

表8 Runtime

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

name

String

容器運(yùn)行時(shí),默認(rèn)場(chǎng)景:

  • v1.25以下集群:默認(rèn)為"docker"

  • v1.25及以上集群,隨操作系統(tǒng)變化,默認(rèn)的容器運(yùn)行時(shí)不同:操作系統(tǒng)為EulerOS 2.5、EulerOS 2.8的節(jié)點(diǎn)默認(rèn)為"docker",其余操作系統(tǒng)的節(jié)點(diǎn)默認(rèn)為"containerd"

表9 NodeItem

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

uid

String

節(jié)點(diǎn)ID

表10 TaskStatus

參數(shù)

是否必選

參數(shù)類(lèi)型

描述

jobID

String

任務(wù)ID,供調(diào)用者查詢(xún)?nèi)蝿?wù)進(jìn)度。

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

狀態(tài)碼: 200

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

參數(shù)

參數(shù)類(lèi)型

描述

apiVersion

String

API版本,固定值“v3”。

kind

String

API類(lèi)型,固定值“MigrateNodesTask”。

spec

MigrateNodesSpec object

配置信息

status

TaskStatus object

任務(wù)狀態(tài)

表12 MigrateNodesSpec

參數(shù)

參數(shù)類(lèi)型

描述

os

String

操作系統(tǒng)類(lèi)型,須精確到版本號(hào)。 當(dāng)指定“alpha.cce/NodeImageID”參數(shù)時(shí),“os”參數(shù)必須和用戶(hù)自定義鏡像的操作系統(tǒng)一致。

extendParam

MigrateNodeExtendParam object

遷移節(jié)點(diǎn)時(shí)的擴(kuò)展參數(shù)

login

Login object

節(jié)點(diǎn)的登錄方式。密鑰對(duì)和密碼登錄方式二者必選其一。

runtime

Runtime object

容器運(yùn)行時(shí)

nodes

Array of NodeItem objects

待操作節(jié)點(diǎn)列表

表13 MigrateNodeExtendParam

參數(shù)

參數(shù)類(lèi)型

maxPods

Integer

DockerLVMConfigOverride

String

alpha.cce/preInstall

String

alpha.cce/postInstall

String

alpha.cce/NodeImageID

String

表14 Login

參數(shù)

參數(shù)類(lèi)型

描述

sshKey

String

選擇密鑰對(duì)方式登錄時(shí)的密鑰對(duì)名稱(chēng)。

userPassword

UserPassword object

選擇密碼方式登錄時(shí)的帳號(hào)密碼信息,之后可通過(guò)此帳號(hào)密碼登錄節(jié)點(diǎn)。

表15 UserPassword

參數(shù)

參數(shù)類(lèi)型

描述

username

String

登錄帳號(hào),默認(rèn)為“root”

password

String

登錄密碼,若創(chuàng)建節(jié)點(diǎn)通過(guò)用戶(hù)名密碼方式,即使用該字段,則響應(yīng)體中該字段作屏蔽展示。 密碼復(fù)雜度要求:

  • 長(zhǎng)度為8-26位。

  • 密碼至少必須包含大寫(xiě)字母、小寫(xiě)字母、數(shù)字和特殊字符(!@$%^-_=+[{}]:,./?~#*)中的三種。

  • 密碼不能包含用戶(hù)名或用戶(hù)名的逆序。 創(chuàng)建節(jié)點(diǎn)時(shí)password字段需要加鹽加密,具體方法請(qǐng)參見(jiàn)創(chuàng)建節(jié)點(diǎn)時(shí)password字段加鹽加密。

表16 Runtime

參數(shù)

參數(shù)類(lèi)型

描述

name

String

容器運(yùn)行時(shí),默認(rèn)場(chǎng)景:

  • v1.25以下集群:默認(rèn)為"docker"

  • v1.25及以上集群,隨操作系統(tǒng)變化,默認(rèn)的容器運(yùn)行時(shí)不同:操作系統(tǒng)為EulerOS 2.5、EulerOS 2.8的節(jié)點(diǎn)默認(rèn)為"docker",其余操作系統(tǒng)的節(jié)點(diǎn)默認(rèn)為"containerd"

表17 NodeItem

參數(shù)

參數(shù)類(lèi)型

描述

uid

String

節(jié)點(diǎn)ID

表18 TaskStatus

參數(shù)

參數(shù)類(lèi)型

描述

jobID

String

任務(wù)ID,供調(diào)用者查詢(xún)?nèi)蝿?wù)進(jìn)度。

請(qǐng)求示例

  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5。

    PUT /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/operation/migrateto/{target_cluster_id}
    
    {
      "spec" : {
        "os" : "EulerOS 2.5",
        "login" : {
          "sshKey" : "KeyPair-001"
        },
        "nodes" : [ {
          "uid" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
        }, {
          "uid" : "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
        } ]
      }
    }
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5,并指定用戶(hù)鏡像ID。

    PUT /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/operation/migrateto/{target_cluster_id}
    
    {
      "spec" : {
        "os" : "EulerOS 2.5",
        "extendParam" : {
          "alpha.cce/NodeImageID" : "cc697ad7-9563-11e8-8ea7-0255ac106311"
        },
        "login" : {
          "sshKey" : "KeyPair-001"
        },
        "nodes" : [ {
          "uid" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
        }, {
          "uid" : "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
        } ]
      }
    }

響應(yīng)示例

狀態(tài)碼: 200

表示在指定集群下遷移節(jié)點(diǎn)至另一集群的作業(yè)下發(fā)成功。

{
  "spec" : {
    "os" : "EulerOS 2.5",
    "login" : {
      "sshKey" : "KeyPair-001"
    },
    "runtime" : {
      "name" : "docker"
    },
    "nodes" : [ {
      "uid" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    }, {
      "uid" : "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
    } ]
  },
  "status" : {
    "jobID" : "2ec9b78d-9368-46f3-8f29-d1a95622a568"
  }
}

SDK代碼示例

SDK代碼示例如下。

  • Java
  • Python
  • Go
  • 更多
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5。

    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.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class MigrateNodeSolution {
    
        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();
            MigrateNodeRequest request = new MigrateNodeRequest();
            request.withClusterId("<cluster_id>");
            request.withTargetClusterId("<target_cluster_id>");
            MigrateNodesTask body = new MigrateNodesTask();
            List<NodeItem> listSpecNodes = new ArrayList<>();
            listSpecNodes.add(
                new NodeItem()
                    .withUid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
            );
            listSpecNodes.add(
                new NodeItem()
                    .withUid("yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy")
            );
            Login loginSpec = new Login();
            loginSpec.withSshKey("KeyPair-001");
            MigrateNodesSpec specbody = new MigrateNodesSpec();
            specbody.withOs("EulerOS 2.5")
                .withLogin(loginSpec)
                .withNodes(listSpecNodes);
            body.withSpec(specbody);
            request.withBody(body);
            try {
                MigrateNodeResponse response = client.migrateNode(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());
            }
        }
    }
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5,并指定用戶(hù)鏡像ID。

    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.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class MigrateNodeSolution {
    
        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();
            MigrateNodeRequest request = new MigrateNodeRequest();
            request.withClusterId("<cluster_id>");
            request.withTargetClusterId("<target_cluster_id>");
            MigrateNodesTask body = new MigrateNodesTask();
            List<NodeItem> listSpecNodes = new ArrayList<>();
            listSpecNodes.add(
                new NodeItem()
                    .withUid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
            );
            listSpecNodes.add(
                new NodeItem()
                    .withUid("yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy")
            );
            Login loginSpec = new Login();
            loginSpec.withSshKey("KeyPair-001");
            MigrateNodeExtendParam extendParamSpec = new MigrateNodeExtendParam();
            extendParamSpec.withAlphaCceNodeImageID("cc697ad7-9563-11e8-8ea7-0255ac106311");
            MigrateNodesSpec specbody = new MigrateNodesSpec();
            specbody.withOs("EulerOS 2.5")
                .withExtendParam(extendParamSpec)
                .withLogin(loginSpec)
                .withNodes(listSpecNodes);
            body.withSpec(specbody);
            request.withBody(body);
            try {
                MigrateNodeResponse response = client.migrateNode(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());
            }
        }
    }
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5。

    # 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 = MigrateNodeRequest()
            request.cluster_id = "<cluster_id>"
            request.target_cluster_id = "<target_cluster_id>"
            listNodesSpec = [
                NodeItem(
                    uid="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
                ),
                NodeItem(
                    uid="yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
                )
            ]
            loginSpec = Login(
                ssh_key="KeyPair-001"
            )
            specbody = MigrateNodesSpec(
                os="EulerOS 2.5",
                login=loginSpec,
                nodes=listNodesSpec
            )
            request.body = MigrateNodesTask(
                spec=specbody
            )
            response = client.migrate_node(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5,并指定用戶(hù)鏡像ID。

    # 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 = MigrateNodeRequest()
            request.cluster_id = "<cluster_id>"
            request.target_cluster_id = "<target_cluster_id>"
            listNodesSpec = [
                NodeItem(
                    uid="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
                ),
                NodeItem(
                    uid="yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
                )
            ]
            loginSpec = Login(
                ssh_key="KeyPair-001"
            )
            extendParamSpec = MigrateNodeExtendParam(
                alpha_cce_node_image_id="cc697ad7-9563-11e8-8ea7-0255ac106311"
            )
            specbody = MigrateNodesSpec(
                os="EulerOS 2.5",
                extend_param=extendParamSpec,
                login=loginSpec,
                nodes=listNodesSpec
            )
            request.body = MigrateNodesTask(
                spec=specbody
            )
            response = client.migrate_node(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5。

    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.MigrateNodeRequest{}
    	request.ClusterId = "<cluster_id>"
    	request.TargetClusterId = "<target_cluster_id>"
    	var listNodesSpec = []model.NodeItem{
            {
                Uid: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            },
            {
                Uid: "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
            },
        }
    	sshKeyLogin:= "KeyPair-001"
    	loginSpec := &model.Login{
    		SshKey: &sshKeyLogin,
    	}
    	specbody := &model.MigrateNodesSpec{
    		Os: "EulerOS 2.5",
    		Login: loginSpec,
    		Nodes: listNodesSpec,
    	}
    	request.Body = &model.MigrateNodesTask{
    		Spec: specbody,
    	}
    	response, err := client.MigrateNode(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
  • 遷移一個(gè)節(jié)點(diǎn)到另一個(gè)集群中,且節(jié)點(diǎn)操作系統(tǒng)為EulerOS 2.5,并指定用戶(hù)鏡像ID。

    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.MigrateNodeRequest{}
    	request.ClusterId = "<cluster_id>"
    	request.TargetClusterId = "<target_cluster_id>"
    	var listNodesSpec = []model.NodeItem{
            {
                Uid: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            },
            {
                Uid: "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
            },
        }
    	sshKeyLogin:= "KeyPair-001"
    	loginSpec := &model.Login{
    		SshKey: &sshKeyLogin,
    	}
    	alphaCceNodeImageIDExtendParam:= "cc697ad7-9563-11e8-8ea7-0255ac106311"
    	extendParamSpec := &model.MigrateNodeExtendParam{
    		AlphaCceNodeImageID: &alphaCceNodeImageIDExtendParam,
    	}
    	specbody := &model.MigrateNodesSpec{
    		Os: "EulerOS 2.5",
    		ExtendParam: extendParamSpec,
    		Login: loginSpec,
    		Nodes: listNodesSpec,
    	}
    	request.Body = &model.MigrateNodesTask{
    		Spec: specbody,
    	}
    	response, err := client.MigrateNode(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }

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

狀態(tài)碼

狀態(tài)碼

描述

200

表示在指定集群下遷移節(jié)點(diǎn)至另一集群的作業(yè)下發(fā)成功。

錯(cuò)誤碼

請(qǐng)參見(jiàn)錯(cuò)誤碼。