功能介紹
該API用于在指定集群下重置節(jié)點(diǎn)。
集群管理的URL格式為:https://Endpoint/uri。其中uri為資源路徑,也即API訪問的路徑。
調(diào)用方法
請(qǐng)參見如何調(diào)用API。
URI
POST /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/reset
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
項(xiàng)目ID,獲取方式請(qǐng)參見如何獲取接口URI中參數(shù)。 |
|
cluster_id |
是 |
String |
集群ID,獲取方式請(qǐng)參見如何獲取接口URI中參數(shù)。 |
請(qǐng)求參數(shù)
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
Content-Type |
是 |
String |
消息體的類型(格式) |
|
X-Auth-Token |
是 |
String |
調(diào)用接口的認(rèn)證方式分為Token和AK/SK兩種,如果您使用的Token方式,此參數(shù)為必填,請(qǐng)?zhí)顚慣oken的值,獲取方式請(qǐng)參見獲取token。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
apiVersion |
是 |
String |
API版本,固定值“v3”。 |
|
kind |
是 |
String |
API類型,固定值“List”。 |
|
nodeList |
是 |
重置節(jié)點(diǎn)列表 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
nodeID |
是 |
String |
節(jié)點(diǎn)ID,獲取方式請(qǐng)參見如何獲取接口URI中參數(shù)。 |
|
spec |
是 |
節(jié)點(diǎn)重裝配置參數(shù)。節(jié)點(diǎn)池內(nèi)節(jié)點(diǎn)不支持外部指定,將以節(jié)點(diǎn)池配置進(jìn)行重裝,默認(rèn)節(jié)點(diǎn)池中節(jié)點(diǎn)此參數(shù)必選。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
os |
是 |
String |
操作系統(tǒng)。指定自定義 鏡像 場(chǎng)景將以IMS鏡像的實(shí)際操作系統(tǒng)版本為準(zhǔn)。請(qǐng)選擇當(dāng)前集群支持的操作系統(tǒng)版本,例如EulerOS 2.5、CentOS 7.6、EulerOS 2.8。 |
|
login |
是 |
節(jié)點(diǎn)的登錄方式。密鑰對(duì)和密碼登錄方式二者必選其一。 |
|
|
name |
否 |
String |
節(jié)點(diǎn)名稱 說明:
重裝時(shí)指定將修改節(jié)點(diǎn)名稱,且服務(wù)器名稱會(huì)同步修改。默認(rèn)以服務(wù)器當(dāng)前名稱作為節(jié)點(diǎn)名稱。 命名規(guī)則:以小寫字母開頭,由小寫字母、數(shù)字、中劃線(-)組成,長度范圍1-56位。 |
|
serverConfig |
否 |
服務(wù)器配置 |
|
|
volumeConfig |
否 |
卷管理配置 |
|
|
runtimeConfig |
否 |
容器運(yùn)行時(shí)配置 |
|
|
k8sOptions |
否 |
Kubernetes節(jié)點(diǎn)配置 |
|
|
lifecycle |
否 |
節(jié)點(diǎn)自定義生命周期配置 |
|
|
initializedConditions |
否 |
Array of strings |
自定義初始化標(biāo)記。 CCE節(jié)點(diǎn)在初始化完成之前,會(huì)打上初始化未完成污點(diǎn)(node.cloudprovider.kubernetes.io/uninitialized)防止pod調(diào)度到節(jié)點(diǎn)上。 cce支持自定義初始化標(biāo)記,在接收到initializedConditions參數(shù)后,會(huì)將參數(shù)值轉(zhuǎn)換成節(jié)點(diǎn)標(biāo)簽,隨節(jié)點(diǎn)下發(fā),例如:cloudprovider.openvessel.io/inject-initialized-conditions=CCEInitial_CustomedInitial。 當(dāng)節(jié)點(diǎn)上設(shè)置了此標(biāo)簽,會(huì)輪詢節(jié)點(diǎn)的status.Conditions,查看conditions的type是否存在標(biāo)記名,如CCEInitial、CustomedInitial標(biāo)記,如果存在所有傳入的標(biāo)記,且狀態(tài)為True,認(rèn)為節(jié)點(diǎn)初始化完成,則移除初始化污點(diǎn)。
|
|
extendParam |
否 |
重裝拓展參數(shù),已廢棄 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
sshKey |
否 |
String |
選擇密鑰對(duì)方式登錄時(shí)的密鑰對(duì)名稱。 |
|
userPassword |
否 |
選擇密碼方式登錄時(shí)的帳號(hào)密碼信息,之后可通過此帳號(hào)密碼登錄節(jié)點(diǎn)。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
username |
否 |
String |
登錄帳號(hào),默認(rèn)為“root” |
|
password |
是 |
String |
登錄密碼,若創(chuàng)建節(jié)點(diǎn)通過用戶名密碼方式,即使用該字段,則響應(yīng)體中該字段作屏蔽展示。 密碼復(fù)雜度要求:
|
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
userTags |
否 |
云服務(wù)器 標(biāo)簽,鍵必須唯一,CCE支持的最大用戶自定義標(biāo)簽數(shù)量依region而定,自定義標(biāo)簽數(shù)上限為5個(gè)。 |
|
|
rootVolume |
否 |
系統(tǒng)盤重裝配置 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
key |
否 |
String |
云服務(wù)器標(biāo)簽的鍵。不得以"CCE-"或"__type_baremetal"開頭 |
|
value |
否 |
String |
云服務(wù)器標(biāo)簽的值 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
imageID |
否 |
String |
用戶自定義鏡像ID |
|
cmkID |
否 |
String |
用戶主密鑰ID。默認(rèn)為空時(shí),表示 云硬盤 不加密。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
storageSelectors |
是 |
磁盤選擇,根據(jù)matchLabels和storageType對(duì)匹配的磁盤進(jìn)行管理。磁盤匹配存在先后順序,靠前的匹配規(guī)則優(yōu)先匹配。 |
|
|
storageGroups |
是 |
由多個(gè)存儲(chǔ)設(shè)備組成的存儲(chǔ)組,用于各個(gè)存儲(chǔ)空間的劃分。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
selector的名字,作為storageGroup中selectorNames的索引,因此各個(gè)selector間的名字不能重復(fù)。 |
|
storageType |
是 |
String |
存儲(chǔ)類型,當(dāng)前僅支持evs(云硬盤)或local(本地盤);local存儲(chǔ)類型不支持磁盤選擇,所有本地盤將被組成一個(gè)VG,因此也僅允許只有一個(gè)local類型的storageSelector。 |
|
matchLabels |
否 |
evs盤的匹配字段,支持DataVolume中的size、volumeType、metadataEncrypted、metadataCmkid、count五個(gè)字段。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
size |
否 |
String |
匹配的磁盤大小,不填則無磁盤大小限制。例如:100. |
|
volumeType |
否 |
String |
云硬盤類型,目前支持SSD\GPSSD\SAS\ESSD\SATA等。 |
|
metadataEncrypted |
否 |
String |
磁盤加密標(biāo)識(shí)符,0代表不加密,1代表加密。 |
|
metadataCmkid |
否 |
String |
加密磁盤的用戶主密鑰ID,長度為36字節(jié)的字符串。 |
|
count |
否 |
String |
磁盤選擇個(gè)數(shù),不填則選擇所有此類磁盤。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
storageGroups的名字,作為虛擬存儲(chǔ)組的名字,因此各個(gè)group名字不能重復(fù)。 說明:
|
|
|
cceManaged |
否 |
Boolean |
k8s及runtime所屬存儲(chǔ)空間。有且僅有一個(gè)group被設(shè)置為true,不填默認(rèn)false。 |
|
selectorNames |
是 |
Array of strings |
對(duì)應(yīng)storageSelectors中的name,一個(gè)group可選擇多個(gè)selector;但一個(gè)selector只能被一個(gè)group選擇。 |
|
virtualSpaces |
是 |
group中空間配置的詳細(xì)管理。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
virtualSpace的名稱,當(dāng)前僅支持三種類型:kubernetes、runtime、user。
|
|
size |
是 |
String |
virtualSpace的大小,僅支持整數(shù)百分比。例如:90%。 說明:
一個(gè)group中所有virtualSpace的百分比之和不得超過100% |
|
lvmConfig |
否 |
lvm配置管理,適用于kubernetes和user空間配置。 需要注意:一個(gè)virtualSpace僅支持一個(gè)config配置。 |
|
|
runtimeConfig |
否 |
runtime配置管理,適用于運(yùn)行時(shí)空間配置。 需要注意:一個(gè)virtualSpace僅支持一個(gè)config配置。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
lvType |
是 |
String |
LVM寫入模式:linear、striped。linear:線性模式;striped:條帶模式,使用多塊磁盤組成條帶模式,能夠提升磁盤性能。 |
|
path |
否 |
String |
磁盤掛載路徑。僅在用戶配置中生效。支持包含:數(shù)字、大小寫字母、點(diǎn)、中劃線、下劃線的絕對(duì)路徑。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
lvType |
是 |
String |
LVM寫入模式:linear、striped。linear:線性模式;striped:條帶模式,使用多塊磁盤組成條帶模式,能夠提升磁盤性能。 |
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
dockerBaseSize |
否 |
Integer |
節(jié)點(diǎn)上單容器的可用磁盤空間大小,單位G。 不配置該值或值為0時(shí)將使用默認(rèn)值,Devicemapper模式下默認(rèn)值為10;OverlayFS模式默認(rèn)不限制單容器可用空間大小,且dockerBaseSize設(shè)置僅在新版本集群的EulerOS和HCE節(jié)點(diǎn)上生效。 CCE節(jié)點(diǎn)容器運(yùn)行時(shí)空間配置請(qǐng)參考數(shù)據(jù)盤空間分配說明。 Devicemapper模式下建議dockerBaseSize配置不超過80G,設(shè)置過大時(shí)可能會(huì)導(dǎo)致容器運(yùn)行時(shí)初始化時(shí)間過長而啟動(dòng)失敗,若對(duì)容器磁盤大小有特殊要求,可考慮使用掛載外部或本地存儲(chǔ)方式代替。 |
|
runtime |
否 |
容器運(yùn)行時(shí), 默認(rèn)場(chǎng)景:
|
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
name |
否 |
String |
容器運(yùn)行時(shí),默認(rèn)場(chǎng)景:
|
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
labels |
否 |
Map<String,String> |
格式為key/value鍵值對(duì)。鍵值對(duì)個(gè)數(shù)不超過20條。
示例: "k8sTags": {
"key": "value"
}
|
|
taints |
否 |
支持給創(chuàng)建出來的節(jié)點(diǎn)加Taints來設(shè)置反親和性,taints配置不超過20條。每條Taints包含以下3個(gè)參數(shù):
示例: "taints": [{
"key": "status",
"value": "unavailable",
"effect": "NoSchedule"
}, {
"key": "looks",
"value": "bad",
"effect": "NoSchedule"
}]
|
|
|
maxPods |
否 |
Integer |
節(jié)點(diǎn)最大允許創(chuàng)建的實(shí)例數(shù)(Pod),該數(shù)量包含系統(tǒng)默認(rèn)實(shí)例,取值范圍為16~256。 該設(shè)置的目的為防止節(jié)點(diǎn)因管理過多實(shí)例而負(fù)載過重,請(qǐng)根據(jù)您的業(yè)務(wù)需要進(jìn)行設(shè)置。 |
|
nicMultiqueue |
否 |
String |
"[{\"queue\":4}]"
包含如下字段:
|
|
nicThreshold |
否 |
String |
"0.3:0.6"
|
響應(yīng)參數(shù)
狀態(tài)碼: 200
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
jobid |
String |
提交任務(wù)成功后返回的任務(wù)ID,用戶可以使用該ID對(duì)任務(wù)執(zhí)行情況進(jìn)行查詢。 |
請(qǐng)求示例
- 重置默認(rèn)節(jié)點(diǎn)池中節(jié)點(diǎn),操作系統(tǒng)為EulerOS 2.5。
POST /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/reset { "kind" : "List", "apiVersion" : "v3", "nodeList" : [ { "nodeID" : "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy", "spec" : { "name" : "my-ecs-0001", "os" : "EulerOS 2.5", "login" : { "sshKey" : "KeyPair-001" } } } ] } - 重置節(jié)點(diǎn)池中節(jié)點(diǎn)(spec參數(shù)無效)
POST /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/reset { "kind" : "List", "apiVersion" : "v3", "nodeList" : [ { "nodeID" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "spec" : { "name" : "my-ecs-0001", "os" : "EulerOS 2.5", "login" : { "sshKey" : "KeyPair-001" } } } ] }
響應(yīng)示例
狀態(tài)碼: 200
表示在指定集群下重置節(jié)點(diǎn)的作業(yè)下發(fā)成功。
{
"jobid" : "2ec9b78d-9368-46f3-8f29-d1a95622a568"
}
SDK代碼示例
SDK代碼示例如下。
- 重置默認(rèn)節(jié)點(diǎn)池中節(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.UUID; import java.util.List; import java.util.ArrayList; public class ResetNodeSolution { 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(); ResetNodeRequest request = new ResetNodeRequest(); request.withClusterId("<cluster_id>"); ResetNodeList body = new ResetNodeList(); Login loginSpec = new Login(); loginSpec.withSshKey("KeyPair-001"); ReinstallNodeSpec specNodeList = new ReinstallNodeSpec(); specNodeList.withOs("EulerOS 2.5") .withLogin(loginSpec) .withName("my-ecs-0001"); List<ResetNode> listbodyNodeList = new ArrayList<>(); listbodyNodeList.add( new ResetNode() .withNodeID(UUID.fromString("yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy")) .withSpec(specNodeList) ); body.withNodeList(listbodyNodeList); body.withKind("List"); body.withApiVersion("v3"); request.withBody(body); try { ResetNodeResponse response = client.resetNode(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()); } } } - 重置節(jié)點(diǎn)池中節(jié)點(diǎn)(spec參數(shù)無效)
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.UUID; import java.util.List; import java.util.ArrayList; public class ResetNodeSolution { 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(); ResetNodeRequest request = new ResetNodeRequest(); request.withClusterId("<cluster_id>"); ResetNodeList body = new ResetNodeList(); Login loginSpec = new Login(); loginSpec.withSshKey("KeyPair-001"); ReinstallNodeSpec specNodeList = new ReinstallNodeSpec(); specNodeList.withOs("EulerOS 2.5") .withLogin(loginSpec) .withName("my-ecs-0001"); List<ResetNode> listbodyNodeList = new ArrayList<>(); listbodyNodeList.add( new ResetNode() .withNodeID(UUID.fromString("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")) .withSpec(specNodeList) ); body.withNodeList(listbodyNodeList); body.withKind("List"); body.withApiVersion("v3"); request.withBody(body); try { ResetNodeResponse response = client.resetNode(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()); } } }
- 重置默認(rèn)節(jié)點(diǎn)池中節(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 = ResetNodeRequest() request.cluster_id = "<cluster_id>" loginSpec = Login( ssh_key="KeyPair-001" ) specNodeList = ReinstallNodeSpec( os="EulerOS 2.5", login=loginSpec, name="my-ecs-0001" ) listNodeListbody = [ ResetNode( node_id="yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy", spec=specNodeList ) ] request.body = ResetNodeList( node_list=listNodeListbody, kind="List", api_version="v3" ) response = client.reset_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) - 重置節(jié)點(diǎn)池中節(jié)點(diǎn)(spec參數(shù)無效)
# 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 = ResetNodeRequest() request.cluster_id = "<cluster_id>" loginSpec = Login( ssh_key="KeyPair-001" ) specNodeList = ReinstallNodeSpec( os="EulerOS 2.5", login=loginSpec, name="my-ecs-0001" ) listNodeListbody = [ ResetNode( node_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", spec=specNodeList ) ] request.body = ResetNodeList( node_list=listNodeListbody, kind="List", api_version="v3" ) response = client.reset_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)
- 重置默認(rèn)節(jié)點(diǎn)池中節(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.ResetNodeRequest{} request.ClusterId = "<cluster_id>" sshKeyLogin:= "KeyPair-001" loginSpec := &model.Login{ SshKey: &sshKeyLogin, } nameSpec:= "my-ecs-0001" specNodeList := &model.ReinstallNodeSpec{ Os: "EulerOS 2.5", Login: loginSpec, Name: &nameSpec, } var listNodeListbody = []model.ResetNode{ { NodeID: "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy", Spec: specNodeList, }, } request.Body = &model.ResetNodeList{ NodeList: listNodeListbody, Kind: "List", ApiVersion: "v3", } response, err := client.ResetNode(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } - 重置節(jié)點(diǎn)池中節(jié)點(diǎn)(spec參數(shù)無效)
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.ResetNodeRequest{} request.ClusterId = "<cluster_id>" sshKeyLogin:= "KeyPair-001" loginSpec := &model.Login{ SshKey: &sshKeyLogin, } nameSpec:= "my-ecs-0001" specNodeList := &model.ReinstallNodeSpec{ Os: "EulerOS 2.5", Login: loginSpec, Name: &nameSpec, } var listNodeListbody = []model.ResetNode{ { NodeID: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", Spec: specNodeList, }, } request.Body = &model.ResetNodeList{ NodeList: listNodeListbody, Kind: "List", ApiVersion: "v3", } response, err := client.ResetNode(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 |
表示在指定集群下重置節(jié)點(diǎn)的作業(yè)下發(fā)成功。 |
錯(cuò)誤碼
請(qǐng)參見錯(cuò)誤碼。
最新文章
- VPCEP終端節(jié)點(diǎn)產(chǎn)品功能_VPC終端節(jié)點(diǎn)免費(fèi)嗎_VPC終端節(jié)點(diǎn)優(yōu)勢(shì)
- GaussDB磁盤擴(kuò)容_協(xié)調(diào)節(jié)點(diǎn)縮容_協(xié)調(diào)節(jié)點(diǎn)擴(kuò)容_分片數(shù)量擴(kuò)容
- 終端節(jié)點(diǎn)管理_如何使用VPC終端節(jié)點(diǎn)_VPC終端節(jié)點(diǎn)應(yīng)用場(chǎng)景
- 好用的VPCEP_終端節(jié)點(diǎn)服務(wù)管理_VPC終端節(jié)點(diǎn)是什么
- CDN節(jié)點(diǎn)_CDN訪問加速_CDN準(zhǔn)入
- CDN加速_網(wǎng)站加速CDN_CDN加速節(jié)點(diǎn)
