華為云計(jì)算 云知識(shí) 刪除節(jié)點(diǎn)池DeleteNodePool
刪除節(jié)點(diǎn)池DeleteNodePool

 

功能介紹

該API用于刪除指定的節(jié)點(diǎn)池。

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

調(diào)用方法

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

URI

DELETE /api/v3/projects/{project_id}/clusters/{cluster_id}/nodepools/{nodepool_id}

表1 路徑參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

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

cluster_id

String

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

nodepool_id

String

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

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

表2 請(qǐng)求Header參數(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)參見(jiàn)獲取token。

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

狀態(tài)碼: 200

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

參數(shù)

參數(shù)類型

描述

kind

String

API類型,固定值“NodePool”。

apiVersion

String

API版本,固定值“v3”。

metadata

NodePoolMetadata object

節(jié)點(diǎn)池的元數(shù)據(jù)信息

spec

NodePoolSpec object

節(jié)點(diǎn)池的規(guī)格描述

status

NodePoolStatus object

節(jié)點(diǎn)池狀態(tài)

表4 NodePoolMetadata

參數(shù)

參數(shù)類型

描述

name

String

節(jié)點(diǎn)名池名稱。

說(shuō)明:

命名規(guī)則:

  • 以小寫字母開頭,由小寫字母、數(shù)字、中劃線(-)組成,長(zhǎng)度范圍1-50位,且不能以中劃線(-)結(jié)尾。
  • 不允許創(chuàng)建名為 DefaultPool 的節(jié)點(diǎn)池。

uid

String

節(jié)點(diǎn)池的uid。創(chuàng)建成功后自動(dòng)生成,填寫無(wú)效

annotations

Map<String,String>

節(jié)點(diǎn)池的注解,以key value對(duì)表示。僅用于查詢,不支持請(qǐng)求時(shí)傳入,填寫無(wú)效。

updateTimestamp

String

更新時(shí)間

creationTimestamp

String

創(chuàng)建時(shí)間

表5 NodePoolSpec

參數(shù)

參數(shù)類型

描述

type

String

節(jié)點(diǎn)池類型。不填寫時(shí)默認(rèn)為vm。

nodeTemplate

NodeSpec object

節(jié)點(diǎn)池模板詳細(xì)參數(shù)。

initialNodeCount

Integer

節(jié)點(diǎn)池初始化節(jié)點(diǎn)個(gè)數(shù)。查詢時(shí)為節(jié)點(diǎn)池目標(biāo)節(jié)點(diǎn)數(shù)量。

autoscaling

NodePoolNodeAutoscaling object

彈性伸縮 參數(shù)。

nodeManagement

NodeManagement object

節(jié)點(diǎn)管理相關(guān)配置

podSecurityGroups

Array of SecurityID objects

安全組相關(guān)配置, 僅turbo集群支持配置該參數(shù)。

customSecurityGroups

Array of strings

節(jié)點(diǎn)池自定義安全組相關(guān)配置。支持節(jié)點(diǎn)池新擴(kuò)容節(jié)點(diǎn)綁定指定的安全組。

  • 未指定安全組ID,新建節(jié)點(diǎn)將添加Node節(jié)點(diǎn)默認(rèn)安全組。
  • 指定有效安全組ID,新建節(jié)點(diǎn)將使用指定安全組。
  • 指定安全組,應(yīng)避免對(duì)CCE運(yùn)行依賴的端口規(guī)則進(jìn)行修改。詳細(xì)設(shè)置請(qǐng)參考集群安全組規(guī)則配置。
表6 NodeSpec

參數(shù)

參數(shù)類型

描述

flavor

String

節(jié)點(diǎn)的規(guī)格,CCE支持的節(jié)點(diǎn)規(guī)格請(qǐng)參考節(jié)點(diǎn)規(guī)格說(shuō)明獲取。

az

String

待創(chuàng)建節(jié)點(diǎn)所在的可用區(qū),需要指定可用區(qū)(AZ)的名稱。 CCE支持的可用區(qū)請(qǐng)參考地區(qū)和終端節(jié)點(diǎn)

os

String

節(jié)點(diǎn)的操作系統(tǒng)類型。具體支持的操作系統(tǒng)請(qǐng)參見(jiàn)節(jié)點(diǎn)操作系統(tǒng)說(shuō)明。

說(shuō)明:
  • 系統(tǒng)會(huì)根據(jù)集群版本自動(dòng)選擇支持的系統(tǒng)版本。當(dāng)前集群版本不支持該系統(tǒng)類型,則會(huì)報(bào)錯(cuò)。
  • 若在創(chuàng)建節(jié)點(diǎn)時(shí)指定了extendParam中的alpha.cce/NodeImageID參數(shù),可以不填寫此參數(shù)。
  • 創(chuàng)建節(jié)點(diǎn)池時(shí),該參數(shù)為必選。

login

Login object

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

rootVolume

Volume object

節(jié)點(diǎn)的磁盤信息

dataVolumes

Array of Volume objects

節(jié)點(diǎn)的數(shù)據(jù)盤參數(shù)(目前已支持通過(guò)控制臺(tái)為CCE節(jié)點(diǎn)添加第二塊數(shù)據(jù)盤)。 如果數(shù)據(jù)盤正供容器運(yùn)行時(shí)和Kubelet組件使用,則不可被卸載,否則將導(dǎo)致節(jié)點(diǎn)不可用。 針對(duì)專屬云節(jié)點(diǎn),參數(shù)解釋與rootVolume一致

storage

Storage object

磁盤初始化配置管理參數(shù)。

該參數(shù)配置邏輯較為復(fù)雜,詳細(xì)說(shuō)明請(qǐng)參見(jiàn)節(jié)點(diǎn)磁盤掛載。

該參數(shù)缺省時(shí),按照extendParam中的DockerLVMConfigOverride(已廢棄)參數(shù)進(jìn)行磁盤管理。此參數(shù)對(duì)1.15.11及以上集群版本支持。

說(shuō)明:

如存在節(jié)點(diǎn)規(guī)格涉及本地盤并同時(shí)使用 云硬盤 場(chǎng)景時(shí),請(qǐng)勿缺省此參數(shù),避免出現(xiàn)將用戶未期望的磁盤分區(qū)。

publicIP

NodePublicIP object

節(jié)點(diǎn)的 彈性公網(wǎng)IP

說(shuō)明:

創(chuàng)建節(jié)點(diǎn)池添加節(jié)點(diǎn)時(shí)不支持該參數(shù)。

nodeNicSpec

NodeNicSpec object

節(jié)點(diǎn)的網(wǎng)卡信息

count

Integer

批量創(chuàng)建時(shí)節(jié)點(diǎn)的個(gè)數(shù),必須為大于等于1,小于等于最大限額的正整數(shù)。作用于節(jié)點(diǎn)池時(shí)該項(xiàng)可以不填寫。

billingMode

Integer

節(jié)點(diǎn)的計(jì)費(fèi)模式:

  • 0: 按需付費(fèi)
  • 1: 包周期
  • 2: 已廢棄:自動(dòng)付費(fèi)包周期

taints

Array of Taint objects

支持給創(chuàng)建出來(lái)的節(jié)點(diǎn)加Taints來(lái)設(shè)置反親和性,taints配置不超過(guò)20條。每條Taints包含以下3個(gè)參數(shù):

  • Key:必須以字母或數(shù)字開頭,可以包含字母、數(shù)字、連字符、下劃線和點(diǎn),最長(zhǎng)63個(gè)字符;另外可以使用DNS子域作為前綴。
  • Value:必須以字符或數(shù)字開頭,可以包含字母、數(shù)字、連字符、下劃線和點(diǎn),最長(zhǎng)63個(gè)字符。
  • Effect:只可選NoSchedule,PreferNoSchedule或NoExecute。 字段使用場(chǎng)景:在節(jié)點(diǎn)創(chuàng)建場(chǎng)景下,支持指定初始值,查詢時(shí)不返回該字段;在節(jié)點(diǎn)池場(chǎng)景下,其中節(jié)點(diǎn)模板中支持指定初始值,查詢時(shí)支持返回該字段;在其余場(chǎng)景下,查詢時(shí)都不會(huì)返回該字段。

示例:

"taints": [{
  "key": "status",
  "value": "unavailable",
  "effect": "NoSchedule"
}, {
  "key": "looks",
  "value": "bad",
  "effect": "NoSchedule"
}]

k8sTags

Map<String,String>

格式為key/value鍵值對(duì)。鍵值對(duì)個(gè)數(shù)不超過(guò)20條。

  • Key:必須以字母或數(shù)字開頭,可以包含字母、數(shù)字、連字符、下劃線和點(diǎn),最長(zhǎng)63個(gè)字符;另外可以使用DNS子域作為前綴,例如example.com/my-key,DNS子域最長(zhǎng)253個(gè)字符。
  • Value:可以為空或者非空字符串,非空字符串必須以字符或數(shù)字開頭,可以包含字母、數(shù)字、連字符、下劃線和點(diǎn),最長(zhǎng)63個(gè)字符。 字段使用場(chǎng)景:在節(jié)點(diǎn)創(chuàng)建場(chǎng)景下,支持指定初始值,查詢時(shí)不返回該字段;在節(jié)點(diǎn)池場(chǎng)景下,其中節(jié)點(diǎn)模板中支持指定初始值,查詢時(shí)支持返回該字段;在其余場(chǎng)景下,查詢時(shí)都不會(huì)返回該字段。

示例:

"k8sTags": {
  "key": "value"
}

ecsGroupId

String

云服務(wù)器組ID,若指定,將節(jié)點(diǎn)創(chuàng)建在該云服務(wù)器組下

dedicatedHostId

String

指定DeH主機(jī)的ID,將節(jié)點(diǎn)調(diào)度到自己的DeH上。

說(shuō)明:

創(chuàng)建節(jié)點(diǎn)池添加節(jié)點(diǎn)時(shí)不支持該參數(shù)。

userTags

Array of UserTag objects

云服務(wù)器標(biāo)簽,鍵必須唯一,CCE支持的最大用戶自定義標(biāo)簽數(shù)量依region而定,自定義標(biāo)簽數(shù)上限為8個(gè)。 字段使用場(chǎng)景:在節(jié)點(diǎn)創(chuàng)建場(chǎng)景下,支持指定初始值,查詢時(shí)不返回該字段;在節(jié)點(diǎn)池場(chǎng)景下,其中節(jié)點(diǎn)模板中支持指定初始值,查詢時(shí)支持返回該字段;在其余場(chǎng)景下,查詢時(shí)都不會(huì)返回該字段。

說(shuō)明:

標(biāo)簽鍵只能包含大寫字母.小寫字母、數(shù)字和特殊字符(-_)以及Unicode字符,長(zhǎng)度不超過(guò)36個(gè)字符。

runtime

Runtime object

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

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

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)。

  • 必須以字母、數(shù)字組成,長(zhǎng)度范圍1-20位。
  • 標(biāo)記數(shù)量不超過(guò)2個(gè)

extendParam

NodeExtendParam object

創(chuàng)建節(jié)點(diǎn)時(shí)的擴(kuò)展參數(shù)。

表7 Login

參數(shù)

參數(shù)類型

描述

sshKey

String

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

userPassword

UserPassword object

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

表8 UserPassword

參數(shù)

參數(shù)類型

描述

username

String

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

password

String

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

  • 長(zhǎng)度為8-26位。
  • 密碼至少必須包含大寫字母、小寫字母、數(shù)字和特殊字符(!@$%^-_=+[{}]:,./?~#*)中的三種。
  • 密碼不能包含用戶名或用戶名的逆序。 創(chuàng)建節(jié)點(diǎn)時(shí)password字段需要加鹽加密,具體方法請(qǐng)參見(jiàn)創(chuàng)建節(jié)點(diǎn)時(shí)password字段加鹽加密。
表9 Volume

參數(shù)

參數(shù)類型

描述

size

Integer

磁盤大小,單位為GB

  • 系統(tǒng)盤取值范圍:40~1024
  • 數(shù)據(jù)盤取值范圍:100~32768

volumetype

String

磁盤類型,取值請(qǐng)參見(jiàn)創(chuàng)建云服務(wù)器 中“root_volume字段數(shù)據(jù)結(jié)構(gòu)說(shuō)明”。

  • SAS:高IO,是指由SAS存儲(chǔ)提供資源的磁盤類型。
  • SSD:超高IO,是指由SSD存儲(chǔ)提供資源的磁盤類型。
  • SATA:普通IO,是指由SATA存儲(chǔ)提供資源的磁盤類型。EVS已下線SATA磁盤,僅存量節(jié)點(diǎn)有此類型的磁盤。
  • ESSD:通用型SSD云硬盤,是指由SSD存儲(chǔ)提供資源的磁盤類型。
  • GPSDD:通用型SSD云硬盤,是指由SSD存儲(chǔ)提供資源的磁盤類型。
說(shuō)明:

了解不同磁盤類型的詳細(xì)信息,鏈接請(qǐng)參見(jiàn)創(chuàng)建云服務(wù)器。

extendParam

Map<String,Object>

磁盤擴(kuò)展參數(shù),取值請(qǐng)參見(jiàn)創(chuàng)建云服務(wù)器中“extendparam”參數(shù)的描述。 鏈接請(qǐng)參見(jiàn)創(chuàng)建云服務(wù)器

cluster_id

String

云服務(wù)器系統(tǒng)盤對(duì)應(yīng)的存儲(chǔ)池的ID。僅用作專屬云集群, 專屬分布式存儲(chǔ) DSS的存儲(chǔ)池ID,即dssPoolID。

獲取方法請(qǐng)參見(jiàn)獲取單個(gè)專屬分布式存儲(chǔ)池詳情中“表3 響應(yīng)參數(shù)”的ID字段。

cluster_type

String

云服務(wù)器系統(tǒng)盤對(duì)應(yīng)的磁盤存儲(chǔ)類型。僅用作專屬云集群,固定取值為dss。

hw:passthrough

Boolean

  • 使用SDI規(guī)格創(chuàng)建虛擬機(jī)時(shí)請(qǐng)關(guān)注該參數(shù),如果該參數(shù)值為true,說(shuō)明創(chuàng)建的為SCSI類型的卷
  • 節(jié)點(diǎn)池類型為ElasticBMS時(shí),此參數(shù)必須填寫為true
  • 如存在節(jié)點(diǎn)規(guī)格涉及本地盤并同時(shí)使用云硬盤場(chǎng)景時(shí),請(qǐng)?jiān)O(shè)置磁盤初始化配置管理參數(shù),參見(jiàn)節(jié)點(diǎn)磁盤掛載。

metadata

VolumeMetadata object

云硬盤加密信息,僅在創(chuàng)建節(jié)點(diǎn)系統(tǒng)盤或數(shù)據(jù)盤需加密時(shí)須填寫。

表10 VolumeMetadata

參數(shù)

參數(shù)類型

描述

__system__encrypted

String

表示云硬盤加密功能的字段,'0'代表不加密,'1'代表加密。

該字段不存在時(shí),云硬盤默認(rèn)為不加密。

__system__cmkid

String

用戶主密鑰ID,是metadata中的表示加密功能的字段,與__system__encrypted配合使用。

表11 Storage

參數(shù)

參數(shù)類型

描述

storageSelectors

Array of StorageSelectors objects

磁盤選擇,根據(jù)matchLabels和storageType對(duì)匹配的磁盤進(jìn)行管理。磁盤匹配存在先后順序,靠前的匹配規(guī)則優(yōu)先匹配。

storageGroups

Array of StorageGroups objects

由多個(gè)存儲(chǔ)設(shè)備組成的存儲(chǔ)組,用于各個(gè)存儲(chǔ)空間的劃分。

表12 StorageSelectors

參數(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

matchLabels object

evs盤的匹配字段,支持DataVolume中的size、volumeType、metadataEncrypted、metadataCmkid、count五個(gè)字段。

表13 matchLabels

參數(shù)

參數(shù)類型

描述

size

String

匹配的磁盤大小,不填則無(wú)磁盤大小限制。例如:100.

volumeType

String

云硬盤類型,目前支持SSD\GPSSD\SAS\ESSD\SATA等。

metadataEncrypted

String

磁盤加密標(biāo)識(shí)符,0代表不加密,1代表加密。

metadataCmkid

String

加密磁盤的用戶主密鑰ID,長(zhǎng)度為36字節(jié)的字符串。

count

String

磁盤選擇個(gè)數(shù),不填則選擇所有此類磁盤。

表14 StorageGroups

參數(shù)

參數(shù)類型

描述

name

String

storageGroups的名字,作為虛擬存儲(chǔ)組的名字,因此各個(gè)group名字不能重復(fù)。

說(shuō)明:

|

  • 當(dāng)cceManaged=ture時(shí),name必須為:vgpass。
  • 當(dāng)數(shù)據(jù)盤作為臨時(shí)存儲(chǔ)卷時(shí):name必須為:vg-everest-localvolume-ephemeral。
  • 當(dāng)數(shù)據(jù)盤作為持久存儲(chǔ)卷時(shí):name必須為:vg-everest-localvolume-persistent。

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

Array of VirtualSpace objects

group中空間配置的詳細(xì)管理。

表15 VirtualSpace

參數(shù)

參數(shù)類型

描述

name

String

virtualSpace的名稱,當(dāng)前僅支持三種類型:kubernetes、runtime、user。

  • kubernetes:k8s空間配置,需配置lvmConfig;
  • runtime:運(yùn)行時(shí)空間配置,需配置runtimeConfig;
  • user:用戶空間配置,需配置lvmConfig

size

String

virtualSpace的大小,僅支持整數(shù)百分比。例如:90%。

說(shuō)明:

一個(gè)group中所有virtualSpace的百分比之和不得超過(guò)100%

lvmConfig

LVMConfig object

lvm配置管理,適用于kubernetes和user空間配置。 需要注意:一個(gè)virtualSpace僅支持一個(gè)config配置。

runtimeConfig

RuntimeConfig object

runtime配置管理,適用于運(yùn)行時(shí)空間配置。 需要注意:一個(gè)virtualSpace僅支持一個(gè)config配置。

表16 LVMConfig

參數(shù)

參數(shù)類型

描述

lvType

String

LVM寫入模式:linear、striped。linear:線性模式;striped:條帶模式,使用多塊磁盤組成條帶模式,能夠提升磁盤性能。

path

String

磁盤掛載路徑。僅在用戶配置中生效。支持包含:數(shù)字、大小寫字母、點(diǎn)、中劃線、下劃線的絕對(duì)路徑。

表17 RuntimeConfig

參數(shù)

參數(shù)類型

描述

lvType

String

LVM寫入模式:linear、striped。linear:線性模式;striped:條帶模式,使用多塊磁盤組成條帶模式,能夠提升磁盤性能。

表18 NodePublicIP

參數(shù)

參數(shù)類型

描述

ids

Array of strings

已有的彈性IP的ID列表。數(shù)量不得大于待創(chuàng)建節(jié)點(diǎn)數(shù)

說(shuō)明:

若已配置ids參數(shù),則無(wú)需配置count和eip參數(shù)

count

Integer

要?jiǎng)討B(tài)創(chuàng)建的彈性IP個(gè)數(shù)。

說(shuō)明:

count參數(shù)與eip參數(shù)必須同時(shí)配置。

eip

NodeEIPSpec object

彈性IP參數(shù)

表19 NodeEIPSpec

參數(shù)

參數(shù)類型

描述

iptype

String

彈性IP類型,取值請(qǐng)參見(jiàn)申請(qǐng)EIP接口中publicip.type說(shuō)明。 鏈接請(qǐng)參見(jiàn)申請(qǐng)EIP

bandwidth

NodeBandwidth object

彈性IP的帶寬參數(shù)

表20 NodeBandwidth

參數(shù)

參數(shù)類型

描述

chargemode

String

帶寬的計(jì)費(fèi)類型:

  • 未傳該字段,表示按帶寬計(jì)費(fèi)。 - 字段值為空,表示按帶寬計(jì)費(fèi)。
  • 字段值為“traffic”,表示按流量計(jì)費(fèi)。
  • 字段為其它值,會(huì)導(dǎo)致創(chuàng)建云服務(wù)器失敗。
說(shuō)明:
  • 按帶寬計(jì)費(fèi):按公網(wǎng)傳輸速率(單位為Mbps)計(jì)費(fèi)。當(dāng)您的帶寬利用率高于10%時(shí),建議優(yōu)先選擇按帶寬計(jì)費(fèi)。
  • 按流量計(jì)費(fèi):只允許在創(chuàng)建按需節(jié)點(diǎn)時(shí)指定,按公網(wǎng)傳輸?shù)臄?shù)據(jù)總量(單位為GB)計(jì)費(fèi)。當(dāng)您的帶寬利用率低于10%時(shí),建議優(yōu)先選擇按流量計(jì)費(fèi)。

size

Integer

帶寬大小,取值請(qǐng)參見(jiàn)取值請(qǐng)參見(jiàn)申請(qǐng)EIP接口中bandwidth.size說(shuō)明。 鏈接請(qǐng)參見(jiàn)申請(qǐng)EIP

sharetype

String

帶寬的共享類型,共享類型枚舉:PER,表示獨(dú)享,目前僅支持獨(dú)享。

表21 NodeNicSpec

參數(shù)

參數(shù)類型

描述

primaryNic

NicSpec object

主網(wǎng)卡的描述信息。

extNics

Array of NicSpec objects

擴(kuò)展網(wǎng)卡

說(shuō)明:

創(chuàng)建節(jié)點(diǎn)池添加節(jié)點(diǎn)時(shí)不支持該參數(shù)。

表22 NicSpec

參數(shù)

參數(shù)類型

描述

subnetId

String

網(wǎng)卡所在子網(wǎng)的網(wǎng)絡(luò)ID。主網(wǎng)卡創(chuàng)建時(shí)若未指定subnetId,將使用集群子網(wǎng)。擴(kuò)展網(wǎng)卡創(chuàng)建時(shí)必須指定subnetId。

fixedIps

Array of strings

主網(wǎng)卡的IP將通過(guò)fixedIps指定,數(shù)量不得大于創(chuàng)建的節(jié)點(diǎn)數(shù)。fixedIps或ipBlock同時(shí)只能指定一個(gè)。擴(kuò)展網(wǎng)卡不支持指定fiexdIps。

ipBlock

String

主網(wǎng)卡的IP段的CIDR格式,創(chuàng)建的節(jié)點(diǎn)IP將屬于該IP段內(nèi)。fixedIps或ipBlock同時(shí)只能指定一個(gè)。

表23 Taint

參數(shù)

參數(shù)類型

描述

key

String

value

String

effect

String

作用效果

表24 UserTag

參數(shù)

參數(shù)類型

描述

key

String

云服務(wù)器標(biāo)簽的鍵。不得以"CCE-"或"__type_baremetal"開頭

value

String

云服務(wù)器標(biāo)簽的值

表25 Runtime

參數(shù)

參數(shù)類型

描述

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"
表26 NodeExtendParam

參數(shù)

參數(shù)類型

ecs:performancetype

String

orderID

String

productID

String

maxPods

Integer

periodType

String

periodNum

Integer

isAutoRenew

String

isAutoPay

String

DockerLVMConfigOverride

String

dockerBaseSize

Integer

publicKey

String

alpha.cce/preInstall

String

alpha.cce/postInstall

String

alpha.cce/NodeImageID

String

nicMultiqueue

String

nicThreshold

String

chargingMode

Integer

agency_name

String

kube-reserved-mem

Integer

system-reserved-mem

Integer

表27 NodePoolNodeAutoscaling

參數(shù)

參數(shù)類型

描述

enable

Boolean

是否開啟自動(dòng)擴(kuò)縮容

minNodeCount

Integer

若開啟自動(dòng)擴(kuò)縮容,最小能縮容的節(jié)點(diǎn)個(gè)數(shù)。不可大于集群規(guī)格所允許的節(jié)點(diǎn)上限

maxNodeCount

Integer

若開啟自動(dòng)擴(kuò)縮容,最大能擴(kuò)容的節(jié)點(diǎn)個(gè)數(shù),應(yīng)大于等于 minNodeCount,且不超過(guò)集群規(guī)格對(duì)應(yīng)的節(jié)點(diǎn)數(shù)量上限。

scaleDownCooldownTime

Integer

節(jié)點(diǎn)保留時(shí)間,單位為分鐘,擴(kuò)容出來(lái)的節(jié)點(diǎn)在這個(gè)時(shí)間內(nèi)不會(huì)被縮掉

priority

Integer

節(jié)點(diǎn)池權(quán)重,更高的權(quán)重在擴(kuò)容時(shí)擁有更高的優(yōu)先級(jí)

表28 NodeManagement

參數(shù)

參數(shù)類型

描述

serverGroupReference

String

云服務(wù)器組ID,若指定,節(jié)點(diǎn)池中所有節(jié)點(diǎn)將創(chuàng)建在該云服務(wù)器組下,節(jié)點(diǎn)池的云服務(wù)器組只能在創(chuàng)建時(shí)指定,無(wú)法修改。指定云服務(wù)器組時(shí)節(jié)點(diǎn)池中的節(jié)點(diǎn)數(shù)量不允許超出云服務(wù)器組的配額限制。

表29 SecurityID

參數(shù)

參數(shù)類型

描述

id

String

安全組ID。

表30 NodePoolStatus

參數(shù)

參數(shù)類型

描述

currentNode

Integer

當(dāng)前節(jié)點(diǎn)池中所有節(jié)點(diǎn)數(shù)量(不含刪除中的節(jié)點(diǎn))。

creatingNode

Integer

當(dāng)前節(jié)點(diǎn)池中處于創(chuàng)建流程中的節(jié)點(diǎn)數(shù)量。

deletingNode

Integer

當(dāng)前節(jié)點(diǎn)池中刪除中的節(jié)點(diǎn)數(shù)量。

phase

String

節(jié)點(diǎn)池狀態(tài)。

  • 空值:可用(節(jié)點(diǎn)池當(dāng)前節(jié)點(diǎn)數(shù)已達(dá)到預(yù)期,且無(wú)伸縮中的節(jié)點(diǎn))
  • Synchronizing:伸縮中(節(jié)點(diǎn)池當(dāng)前節(jié)點(diǎn)數(shù)未達(dá)到預(yù)期,且無(wú)伸縮中的節(jié)點(diǎn))
  • Synchronized:伸縮等待中(節(jié)點(diǎn)池當(dāng)前節(jié)點(diǎn)數(shù)未達(dá)到預(yù)期,或者存在伸縮中的節(jié)點(diǎn))
  • SoldOut:節(jié)點(diǎn)池當(dāng)前不可擴(kuò)容(兼容字段,標(biāo)記節(jié)點(diǎn)池資源售罄、資源配額不足等不可擴(kuò)容狀態(tài))
說(shuō)明:

上述節(jié)點(diǎn)池狀態(tài)已廢棄,僅兼容保留,不建議使用,替代感知方式如下:

  • 節(jié)點(diǎn)池?cái)U(kuò)縮狀態(tài):可通過(guò)currentNode/creatingNode/deletingNode節(jié)點(diǎn)狀態(tài)統(tǒng)計(jì)信息,精確感知當(dāng)前節(jié)點(diǎn)池?cái)U(kuò)縮狀態(tài)。
  • 節(jié)點(diǎn)池可擴(kuò)容狀態(tài):可通過(guò)conditions感知節(jié)點(diǎn)池詳細(xì)狀態(tài),其中"Scalable"可替代SoldOut語(yǔ)義。
  • Deleting:刪除中
  • Error:錯(cuò)誤

jobId

String

對(duì)節(jié)點(diǎn)池執(zhí)行操作時(shí)的 JobID。

conditions

Array of NodePoolCondition objects

節(jié)點(diǎn)池當(dāng)前詳細(xì)狀態(tài)列表,詳情參見(jiàn)Condition類型定義。

表31 NodePoolCondition

參數(shù)

參數(shù)類型

描述

type

String

Condition類型,當(dāng)前支持類型如下

  • "Scalable":節(jié)點(diǎn)池實(shí)際的可擴(kuò)容狀態(tài),如果狀態(tài)為"False"時(shí)則不會(huì)再次觸發(fā)節(jié)點(diǎn)池?cái)U(kuò)容行為。
  • "QuotaInsufficient":節(jié)點(diǎn)池?cái)U(kuò)容依賴的配額不足,影響節(jié)點(diǎn)池可擴(kuò)容狀態(tài)。
  • "ResourceInsufficient":節(jié)點(diǎn)池?cái)U(kuò)容依賴的資源不足,影響節(jié)點(diǎn)池可擴(kuò)容狀態(tài)。
  • "UnexpectedError":節(jié)點(diǎn)池非預(yù)期擴(kuò)容失敗,影響節(jié)點(diǎn)池可擴(kuò)容狀態(tài)。
  • "LockedByOrder":包周期節(jié)點(diǎn)池被訂單鎖定,此時(shí)Reason為待支付訂單ID。
  • "Error":節(jié)點(diǎn)池錯(cuò)誤,通常由于刪除失敗觸發(fā)。

status

String

Condition當(dāng)前狀態(tài),取值如下

  • "True"
  • "False"

lastProbeTime

String

上次狀態(tài)檢查時(shí)間。

lastTransitTime

String

上次狀態(tài)變更時(shí)間。

reason

String

上次狀態(tài)變更原因。

message

String

Condition詳細(xì)描述。

請(qǐng)求示例

無(wú)

響應(yīng)示例

狀態(tài)碼: 200

表示刪除節(jié)點(diǎn)池作業(yè)下發(fā)成功。

{
  "kind" : "NodePool",
  "apiVersion" : "v3",
  "metadata" : {
    "name" : "lc-it-nodepool-79796",
    "uid" : "99addaa2-69eb-11ea-a592-0255ac1001bb"
  },
  "spec" : {
    "type" : "vm",
    "nodeTemplate" : {
      "flavor" : "s6.large.2",
      "az" : "******",
      "os" : "EulerOS 2.5",
      "login" : {
        "sshKey" : "KeyPair-001"
      },
      "rootVolume" : {
        "volumetype" : "SAS",
        "size" : 40
      },
      "dataVolumes" : [ {
        "volumetype" : "SAS",
        "size" : 100,
        "extendParam" : {
          "useType" : "docker"
        }
      } ],
      "publicIP" : {
        "eip" : {
          "bandwidth" : { }
        }
      },
      "nodeNicSpec" : {
        "primaryNic" : {
          "subnetId" : "7e767d10-7548-4df5-ad72-aeac1d08bd8a"
        }
      },
      "billingMode" : 0,
      "extendParam" : {
        "maxPods" : 110
      },
      "k8sTags" : {
        "cce.cloud.com/cce-nodepool" : "lc-it-nodepool-79796"
      }
    },
    "autoscaling" : { },
    "nodeManagement" : { }
  },
  "status" : {
    "phase" : "Deleting",
    "jobId" : "3281fa02-69ee-11ea-a592-0255ac1001bb"
  }
}

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 DeleteNodePoolSolution {

    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();
        DeleteNodePoolRequest request = new DeleteNodePoolRequest();
        request.withClusterId("<cluster_id>");
        request.withNodepoolId("<nodepool_id>");
        try {
            DeleteNodePoolResponse response = client.deleteNodePool(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 = DeleteNodePoolRequest()
        request.cluster_id = "<cluster_id>"
        request.nodepool_id = "<nodepool_id>"
        response = client.delete_node_pool(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.DeleteNodePoolRequest{}
	request.ClusterId = "<cluster_id>"
	request.NodepoolId = "<nodepool_id>"
	response, err := client.DeleteNodePool(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ò)誤碼。