華為云計算 云知識 獲取指定的節(jié)點池ShowNodePool
獲取指定的節(jié)點池ShowNodePool

 

功能介紹

該API用于獲取指定節(jié)點池的詳細信息。

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

調(diào)用方法

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

URI

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

表1 路徑參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

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

cluster_id

String

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

nodepool_id

String

節(jié)點池ID

請求參數(shù)

表2 請求Header參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

Content-Type

String

消息體的類型(格式)

X-Auth-Token

String

調(diào)用接口的認證方式分為Token和AK/SK兩種,如果您使用的Token方式,此參數(shù)為必填,請?zhí)顚慣oken的值,獲取方式請參見獲取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é)點池的元數(shù)據(jù)信息

spec

NodePoolSpec object

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

status

NodePoolStatus object

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

表4 NodePoolMetadata

參數(shù)

參數(shù)類型

描述

name

String

節(jié)點名池名稱。

說明:

命名規(guī)則:

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

uid

String

節(jié)點池的uid。創(chuàng)建成功后自動生成,填寫無效

annotations

Map<String,String>

節(jié)點池的注解,以key value對表示。僅用于查詢,不支持請求時傳入,填寫無效。

updateTimestamp

String

更新時間

creationTimestamp

String

創(chuàng)建時間

表5 NodePoolSpec

參數(shù)

參數(shù)類型

描述

type

String

節(jié)點池類型。不填寫時默認為vm。

nodeTemplate

NodeSpec object

節(jié)點池模板詳細參數(shù)。

initialNodeCount

Integer

節(jié)點池初始化節(jié)點個數(shù)。查詢時為節(jié)點池目標節(jié)點數(shù)量。

autoscaling

NodePoolNodeAutoscaling object

彈性伸縮 參數(shù)。

nodeManagement

NodeManagement object

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

podSecurityGroups

Array of SecurityID objects

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

customSecurityGroups

Array of strings

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

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

參數(shù)

參數(shù)類型

描述

flavor

String

節(jié)點的規(guī)格,CCE支持的節(jié)點規(guī)格請參考節(jié)點規(guī)格說明獲取。

az

String

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

os

String

節(jié)點的操作系統(tǒng)類型。具體支持的操作系統(tǒng)請參見節(jié)點操作系統(tǒng)說明

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

login

Login object

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

rootVolume

Volume object

節(jié)點的磁盤信息

dataVolumes

Array of Volume objects

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

storage

Storage object

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

該參數(shù)配置邏輯較為復(fù)雜,詳細說明請參見節(jié)點磁盤掛載。

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

說明:

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

publicIP

NodePublicIP object

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

說明:

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

nodeNicSpec

NodeNicSpec object

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

count

Integer

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

billingMode

Integer

節(jié)點的計費模式:

  • 0: 按需付費
  • 1: 包周期
  • 2: 已廢棄:自動付費包周期

taints

Array of Taint objects

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

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

示例:

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

k8sTags

Map<String,String>

格式為key/value鍵值對。鍵值對個數(shù)不超過20條。

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

示例:

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

ecsGroupId

String

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

dedicatedHostId

String

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

說明:

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

userTags

Array of UserTag objects

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

說明:

標簽鍵只能包含大寫字母.小寫字母、數(shù)字和特殊字符(-_)以及Unicode字符,長度不超過36個字符。

runtime

Runtime object

容器運行時, 默認場景:

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

initializedConditions

Array of strings

自定義初始化標記。

CCE節(jié)點在初始化完成之前,會打上初始化未完成污點(node.cloudprovider.kubernetes.io/uninitialized)防止pod調(diào)度到節(jié)點上。

cce支持自定義初始化標記,在接收到initializedConditions參數(shù)后,會將參數(shù)值轉(zhuǎn)換成節(jié)點標簽,隨節(jié)點下發(fā),例如:cloudprovider.openvessel.io/inject-initialized-conditions=CCEInitial_CustomedInitial。

當節(jié)點上設(shè)置了此標簽,會輪詢節(jié)點的status.Conditions,查看conditions的type是否存在標記名,如CCEInitial、CustomedInitial標記,如果存在所有傳入的標記,且狀態(tài)為True,認為節(jié)點初始化完成,則移除初始化污點。

  • 必須以字母、數(shù)字組成,長度范圍1-20位。
  • 標記數(shù)量不超過2個

extendParam

NodeExtendParam object

創(chuàng)建節(jié)點時的擴展參數(shù)。

表7 Login

參數(shù)

參數(shù)類型

描述

sshKey

String

選擇密鑰對方式登錄時的密鑰對名稱。

userPassword

UserPassword object

選擇密碼方式登錄時的帳號密碼信息,之后可通過此帳號密碼登錄節(jié)點。

表8 UserPassword

參數(shù)

參數(shù)類型

描述

username

String

登錄帳號,默認為“root”

password

String

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

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

參數(shù)

參數(shù)類型

描述

size

Integer

磁盤大小,單位為GB

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

volumetype

String

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

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

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

extendParam

Map<String,Object>

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

cluster_id

String

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

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

cluster_type

String

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

hw:passthrough

Boolean

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

metadata

VolumeMetadata object

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

表10 VolumeMetadata

參數(shù)

參數(shù)類型

描述

__system__encrypted

String

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

該字段不存在時,云硬盤默認為不加密。

__system__cmkid

String

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

表11 Storage

參數(shù)

參數(shù)類型

描述

storageSelectors

Array of StorageSelectors objects

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

storageGroups

Array of StorageGroups objects

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

表12 StorageSelectors

參數(shù)

參數(shù)類型

描述

name

String

selector的名字,作為storageGroup中selectorNames的索引,因此各個selector間的名字不能重復(fù)。

storageType

String

存儲類型,當前僅支持evs(云硬盤)或local(本地盤);local存儲類型不支持磁盤選擇,所有本地盤將被組成一個VG,因此也僅允許只有一個local類型的storageSelector。

matchLabels

matchLabels object

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

表13 matchLabels

參數(shù)

參數(shù)類型

描述

size

String

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

volumeType

String

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

metadataEncrypted

String

磁盤加密標識符,0代表不加密,1代表加密。

metadataCmkid

String

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

count

String

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

表14 StorageGroups

參數(shù)

參數(shù)類型

描述

name

String

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

說明:

|

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

cceManaged

Boolean

k8s及runtime所屬存儲空間。有且僅有一個group被設(shè)置為true,不填默認false。

selectorNames

Array of strings

對應(yīng)storageSelectors中的name,一個group可選擇多個selector;但一個selector只能被一個group選擇。

virtualSpaces

Array of VirtualSpace objects

group中空間配置的詳細管理。

表15 VirtualSpace

參數(shù)

參數(shù)類型

描述

name

String

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

  • kubernetes:k8s空間配置,需配置lvmConfig;
  • runtime:運行時空間配置,需配置runtimeConfig;
  • user:用戶空間配置,需配置lvmConfig

size

String

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

說明:

一個group中所有virtualSpace的百分比之和不得超過100%

lvmConfig

LVMConfig object

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

runtimeConfig

RuntimeConfig object

runtime配置管理,適用于運行時空間配置。 需要注意:一個virtualSpace僅支持一個config配置。

表16 LVMConfig

參數(shù)

參數(shù)類型

描述

lvType

String

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

path

String

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

表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é)點數(shù)

說明:

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

count

Integer

要動態(tài)創(chuàng)建的彈性IP個數(shù)。

說明:

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

eip

NodeEIPSpec object

彈性IP參數(shù)

表19 NodeEIPSpec

參數(shù)

參數(shù)類型

描述

iptype

String

彈性IP類型,取值請參見申請EIP接口中publicip.type說明。 鏈接請參見申請EIP

bandwidth

NodeBandwidth object

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

表20 NodeBandwidth

參數(shù)

參數(shù)類型

描述

chargemode

String

帶寬的計費類型:

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

size

Integer

帶寬大小,取值請參見取值請參見申請EIP接口中bandwidth.size說明。 鏈接請參見申請EIP

sharetype

String

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

表21 NodeNicSpec

參數(shù)

參數(shù)類型

描述

primaryNic

NicSpec object

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

extNics

Array of NicSpec objects

擴展網(wǎng)卡

說明:

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

表22 NicSpec

參數(shù)

參數(shù)類型

描述

subnetId

String

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

fixedIps

Array of strings

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

ipBlock

String

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

表23 Taint

參數(shù)

參數(shù)類型

描述

key

String

value

String

effect

String

作用效果

表24 UserTag

參數(shù)

參數(shù)類型

描述

key

String

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

value

String

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

表25 Runtime

參數(shù)

參數(shù)類型

描述

name

String

容器運行時,默認場景:

  • v1.25以下集群:默認為"docker"
  • v1.25及以上集群,隨操作系統(tǒng)變化,默認的容器運行時不同:操作系統(tǒng)為EulerOS 2.5、EulerOS 2.8的節(jié)點默認為"docker",其余操作系統(tǒng)的節(jié)點默認為"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

是否開啟自動擴縮容

minNodeCount

Integer

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

maxNodeCount

Integer

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

scaleDownCooldownTime

Integer

節(jié)點保留時間,單位為分鐘,擴容出來的節(jié)點在這個時間內(nèi)不會被縮掉

priority

Integer

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

表28 NodeManagement

參數(shù)

參數(shù)類型

描述

serverGroupReference

String

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

表29 SecurityID

參數(shù)

參數(shù)類型

描述

id

String

安全組ID。

表30 NodePoolStatus

參數(shù)

參數(shù)類型

描述

currentNode

Integer

當前節(jié)點池中所有節(jié)點數(shù)量(不含刪除中的節(jié)點)。

creatingNode

Integer

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

deletingNode

Integer

當前節(jié)點池中刪除中的節(jié)點數(shù)量。

phase

String

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

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

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

  • 節(jié)點池擴縮狀態(tài):可通過currentNode/creatingNode/deletingNode節(jié)點狀態(tài)統(tǒng)計信息,精確感知當前節(jié)點池擴縮狀態(tài)。
  • 節(jié)點池可擴容狀態(tài):可通過conditions感知節(jié)點池詳細狀態(tài),其中"Scalable"可替代SoldOut語義。
  • Deleting:刪除中
  • Error:錯誤

jobId

String

對節(jié)點池執(zhí)行操作時的 JobID。

conditions

Array of NodePoolCondition objects

節(jié)點池當前詳細狀態(tài)列表,詳情參見Condition類型定義。

表31 NodePoolCondition

參數(shù)

參數(shù)類型

描述

type

String

Condition類型,當前支持類型如下

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

status

String

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

  • "True"
  • "False"

lastProbeTime

String

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

lastTransitTime

String

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

reason

String

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

message

String

Condition詳細描述。

請求示例

響應(yīng)示例

狀態(tài)碼: 200

表示獲取指定節(jié)點池成功。

{
  "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 ShowNodePoolSolution {

    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();
        ShowNodePoolRequest request = new ShowNodePoolRequest();
        request.withClusterId("<cluster_id>");
        request.withNodepoolId("<nodepool_id>");
        try {
            ShowNodePoolResponse response = client.showNodePool(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 = ShowNodePoolRequest()
        request.cluster_id = "<cluster_id>"
        request.nodepool_id = "<nodepool_id>"
        response = client.show_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.ShowNodePoolRequest{}
	request.ClusterId = "<cluster_id>"
	request.NodepoolId = "<nodepool_id>"
	response, err := client.ShowNodePool(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

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

狀態(tài)碼

狀態(tài)碼

描述

200

表示獲取指定節(jié)點池成功。

錯誤碼

請參見錯誤碼。