华为云计算 云知识 获取指定的节点ShowNode
获取指定的节点ShowNode

 

接口说明

该API用于通过节点ID获取指定节点的详细信息。

集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。

URL
GET  https://cce.cn-north-4.myhuaweicloud.com/api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/{node_id} 
请求参数
名称 类型 IN 必选 描述
Content-Type
 
string header

消息体的类型(格式)

X-Auth-Token
 
string header

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token

project_id
 
string path

项目ID,获取方式请参见如何获取接口URI中参数

cluster_id
 
string path

集群ID,获取方式请参见如何获取接口URI中参数

node_id
 
string path

节点ID,获取方式请参见如何获取接口URI中参数

返回参数
返回码: 200

表示获取集群下指定的节点成功。

名称 类型 必选 描述
kind
 
string

API类型,固定值“Node”,该值不可修改。

apiVersion
 
string

API版本,固定值“v3”,该值不可修改。

metadata
 
NodeMetadata object

metadata是节点对象的元数据定义,是集合类的元素类型,包含一组由不同名称定义的属性。

spec
 
NodeSpec object

spec是集合类的元素类型,用户对需要管理的节点对象进行详细描述的主体部分都在spec中给出。系统通过spec的描述来创建或更新对象。

status
 
NodeStatus object

节点状态,动态记录,创建或修改时指定无意义.

200 metadata
名称 类型 必选 描述
name
 
string

节点名称

命名规则:以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围1-56位,且不能以中划线(-)结尾。 若name未指定或指定为空字符串,则按照默认规则生成节点名称。默认规则为:“集群名称-随机字符串”,若集群名称过长,则只取前36个字符。 若节点数量(count)大于1时,则按照默认规则会在用户输入的节点名称末尾添加随机字符串。默认规则为:“用户输入名称-随机字符串”,若用户输入的节点名称长度范围超过50位时,系统截取前50位,并在末尾添加随机字符串。

uid
 
string

节点ID,资源唯一标识,创建成功后自动生成,填写无效

labels
 
Map<String,String>

CCE自有节点标签,非Kubernetes原生labels。

标签可用于选择对象并查找满足某些条件的对象集合,格式为key/value键值对。

示例:

"labels": {
  "key" : "value"
}
annotations
 
Map<String,String>

CCE自有节点注解,非Kubernetes原生annotations,格式为key/value键值对。 示例:

"annotations": {
  "key1" : "value1",
  "key2" : "value2"
}

Annotations不用于标识和选择对象。Annotations中的元数据可以是small或large,structured或unstructured,并且可以包括标签不允许使用的字符。

creationTimestamp
 
string

创建时间,创建成功后自动生成,填写无效

updateTimestamp
 
string

更新时间,创建成功后自动生成,填写无效

200 spec
名称 类型 必选 描述
flavor
 
string

节点的规格,CCE支持的节点规格请参考节点规格说明获取。

az
 
string

待创建节点所在的可用区,需要指定可用区(AZ)的名称。 CCE支持的可用区请参考地区和 终端节点

os
 
string

节点的操作系统类型。具体支持的操作系统请参见节点操作系统说明

  • 系统会根据集群版本自动选择支持的系统版本。当前集群版本不支持该系统类型,则会报错。
  • 若在创建节点时指定了extendParam中的alpha.cce/NodeImageID参数,可以不填写此参数。
login
 
Login object

节点的登录方式。密钥对和密码登录方式二者必选其一。

rootVolume
 
Volume object

节点的磁盘信息

dataVolumes
 
Array of Volume objects

节点的数据盘参数(目前已支持通过控制台为CCE节点添加第二块数据盘)。 如果数据盘正供容器运行时和Kubelet组件使用,则不可被卸载,否则将导致节点不可用。 针对专属云节点,参数解释与rootVolume一致

storage
 
Storage object

磁盘初始化配置管理参数。

该参数配置逻辑较为复杂,详细说明请参见节点磁盘挂载

该参数缺省时,按照extendParam中的DockerLVMConfigOverride(已废弃)参数进行磁盘管理。此参数对1.15.11及以上集群版本支持。

如存在节点规格涉及本地盘并同时使用 云硬盘 场景时,请勿缺省此参数,避免出现将用户未期望的磁盘分区。

publicIP
 
NodePublicIP object

节点的 弹性公网IP

创建节点池添加节点时不支持该参数。

nodeNicSpec
 
NodeNicSpec object

节点的网卡信息

count
 
integer

批量创建时节点的个数,必须为大于等于1,小于等于最大限额的正整数。作用于节点池时该项可以不填写。

billingMode
 
integer

节点的计费模式:

  • 0: 按需付费
  • 1: 包周期
  • 2: 已废弃:自动付费包周期
taints
 
Array of Taint objects

支持给创建出来的节点加Taints来设置反亲和性,taints配置不超过20条。每条Taints包含以下3个参数:

  • Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀。
  • Value:必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。
  • Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。 字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

示例:

"taints": [{
  "key": "status",
  "value": "unavailable",
  "effect": "NoSchedule"
}, {
  "key": "looks",
  "value": "bad",
  "effect": "NoSchedule"
}]
k8sTags
 
Map<String,String>

格式为key/value键值对。键值对个数不超过20条。

  • Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀,例如example.com/my-key,DNS子域最长253个字符。
  • Value:可以为空或者非空字符串,非空字符串必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。 字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

示例:

"k8sTags": {
  "key": "value"
}
ecsGroupId
 
string

云服务器 组ID,若指定,将节点创建在该 云服务 器组下

dedicatedHostId
 
string

指定DeH主机的ID,将节点调度到自己的DeH上。

创建节点池添加节点时不支持该参数。

userTags
 
Array of UserTag objects

云服务器标签,键必须唯一,CCE支持的最大用户自定义标签数量依region而定,自定义标签数上限为8个。 字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

runtime
 
Runtime object

容器运行时, 默认场景:

  • 1.25以下集群:默认为" docker "
  • 1.25及以上集群,随操作系统变化,默认的容器运行时不同:操作系统为欧拉2.5、欧拉2.8的节点默认为"docker",其余操作系统的节点默认为"containerd"
initializedConditions
 
Array of strings

自定义初始化标记。

CCE节点在初始化完成之前,会打上初始化未完成污点(node.cloudprovider.kubernetes.io/uninitialized)防止pod调度到节点上。

cce支持自定义初始化标记,在接收到initializedConditions参数后,会将参数值转换成节点标签,随节点下发,例如:cloudprovider.openvessel.io/inject-initialized-conditions=CCEInitial_CustomedInitial。

当节点上设置了此标签,会轮询节点的status.Conditions,查看conditions的type是否存在标记名,如CCEInitial、CustomedInitial标记,如果存在所有传入的标记,且状态为True,认为节点初始化完成,则移除初始化污点。

  • 必须以字母、数字组成,长度范围1-20位。
  • 标记数量不超过2个
extendParam
 
NodeExtendParam object

创建节点时的扩展参数。

200 spec.login
名称 类型 必选 描述
sshKey
 
string

选择密钥对方式登录时的密钥对名称。

userPassword
 
UserPassword object

选择密码方式登录时的帐号密码信息,之后可通过此帐号密码登录节点。

200 spec.login.userPassword
名称 类型 必选 描述
username
 
string

登录帐号,默认为“root”

password
 
string

登录密码,若创建节点通过用户名密码方式,即使用该字段,则响应体中该字段作屏蔽展示。 密码复杂度要求:

  • 长度为8-26位。
  • 密码至少必须包含大写字母、小写字母、数字和特殊字符(!@$%^-_=+[{}]:,./?~#*)中的三种。
  • 密码不能包含用户名或用户名的逆序。 创建节点时password字段需要加盐加密,具体方法请参见创建节点时password字段加盐加密
200 spec.rootVolume
名称 类型 必选 描述
size
 
integer

磁盘大小,单位为GB

  • 系统盘取值范围:40~1024
  • 数据盘取值范围:100~32768
volumetype
 
string

磁盘类型,取值请参见创建云服务器 中“root_volume字段数据结构说明”。

  • SAS:高IO,是指由SAS存储提供资源的磁盘类型。
  • SSD:超高IO,是指由SSD存储提供资源的磁盘类型。
  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。EVS已下线SATA磁盘,仅存量节点有此类型的磁盘。
extendParam
 
Map<String,Object>

磁盘扩展参数,取值请参见创建云服务器中“extendparam”参数的描述。 链接请参见创建云服务器

cluster_id
 
string

云服务器系统盘对应的存储池的ID。仅用作专属云集群, 专属分布式存储 DSS的存储池ID,即dssPoolID。

获取方法请参见获取单个专属分布式存储池详情中“表3 响应参数”的ID字段。

cluster_type
 
string

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough
 
boolean
  • 使用SDI规格创建虚拟机时请关注该参数,如果该参数值为true,说明创建的为SCSI类型的卷
  • 节点池类型为ElasticBMS时,此参数必须填写为true
  • 如存在节点规格涉及本地盘并同时使用云硬盘场景时,请设置磁盘初始化配置管理参数,参见节点磁盘挂载
metadata
 
VolumeMetadata object

云硬盘加密信息,仅在创建节点系统盘或数据盘需加密时须填写。

200 spec.rootVolume.metadata
名称 类型 必选 描述
__system__encrypted
 
string

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

该字段不存在时,云硬盘默认为不加密。

__system__cmkid
 
string

用户主密钥ID,是metadata中的表示加密功能的字段,与__system__encrypted配合使用。

200 spec.dataVolumes
名称 类型 必选 描述
size
 
integer

磁盘大小,单位为GB

  • 系统盘取值范围:40~1024
  • 数据盘取值范围:100~32768
volumetype
 
string

磁盘类型,取值请参见创建云服务器 中“root_volume字段数据结构说明”。

  • SAS:高IO,是指由SAS存储提供资源的磁盘类型。
  • SSD:超高IO,是指由SSD存储提供资源的磁盘类型。
  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。EVS已下线SATA磁盘,仅存量节点有此类型的磁盘。
extendParam
 
Map<String,Object>

磁盘扩展参数,取值请参见创建云服务器中“extendparam”参数的描述。 链接请参见创建云服务器

cluster_id
 
string

云服务器系统盘对应的存储池的ID。仅用作专属云集群,专属分布式存储DSS的存储池ID,即dssPoolID。

获取方法请参见获取单个专属分布式存储池详情中“表3 响应参数”的ID字段。

cluster_type
 
string

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough
 
boolean
  • 使用SDI规格创建虚拟机时请关注该参数,如果该参数值为true,说明创建的为SCSI类型的卷
  • 节点池类型为ElasticBMS时,此参数必须填写为true
  • 如存在节点规格涉及本地盘并同时使用云硬盘场景时,请设置磁盘初始化配置管理参数,参见节点磁盘挂载
metadata
 
VolumeMetadata object

云硬盘加密信息,仅在创建节点系统盘或数据盘需加密时须填写。

200 spec.dataVolumes.metadata
名称 类型 必选 描述
__system__encrypted
 
string

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

该字段不存在时,云硬盘默认为不加密。

__system__cmkid
 
string

用户主密钥ID,是metadata中的表示加密功能的字段,与__system__encrypted配合使用。

200 spec.storage
名称 类型 必选 描述
storageSelectors
 
Array of StorageSelectors objects

磁盘选择,根据matchLabels和storageType对匹配的磁盘进行管理。磁盘匹配存在先后顺序,靠前的匹配规则优先匹配。

storageGroups
 
Array of StorageGroups objects

由多个存储设备组成的存储组,用于各个存储空间的划分。

200 spec.storage.storageSelectors
名称 类型 必选 描述
name
 
string

selector的名字,作为storageGroup中selectorNames的索引,因此各个selector间的名字不能重复。

storageType
 
string

存储类型,当前仅支持evs(云硬盘)或local(本地盘);local存储类型不支持磁盘选择,所有本地盘将被组成一个VG,因此也仅允许只有一个local类型的storageSelector。

matchLabels
 
matchLabels object

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

200 spec.storage.storageSelectors.matchLabels
名称 类型 必选 描述
size
 
string

匹配的磁盘大小,不填则无磁盘大小限制。例如:100.

volumeType
 
string

云硬盘类型,目前支持SSD\GPSSD\SAS三种。

metadataEncrypted
 
string

磁盘加密标识符,0代表不加密,1代表加密。

metadataCmkid
 
string

加密磁盘的用户主密钥ID,长度为36字节的字符串。

count
 
string

磁盘选择个数,不填则选择所有此类磁盘。

200 spec.storage.storageGroups
名称 类型 必选 描述
name
 
string

storageGroups的名字,作为虚拟存储组的名字,因此各个group名字不能重复。

cceManaged
 
boolean

k8s及runtime所属存储空间。有且仅有一个group被设置为true,不填默认false。

selectorNames
 
Array of strings

对应storageSelectors中的name,一个group可选择多个selector;但一个selector只能被一个group选择。

virtualSpaces
 
Array of VirtualSpace objects

group中空间配置的详细管理。

200 spec.storage.storageGroups.virtualSpaces
名称 类型 必选 描述
name
 
string

virtualSpace的名称,当前仅支持三种类型:kubernetes、runtime、user。

  • kubernetes:k8s空间配置,需配置lvmConfig;
  • runtime:运行时空间配置,需配置runtimeConfig;
  • user:用户空间配置,需配置lvmConfig
size
 
string

virtualSpace的大小,仅支持整数百分比。例如:90%。

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

lvmConfig
 
LVMConfig object

lvm配置管理,适用于kubernetes和user空间配置。 需要注意:一个virtualSpace仅支持一个config配置。

runtimeConfig
 
RuntimeConfig object

runtime配置管理,适用于运行时空间配置。 需要注意:一个virtualSpace仅支持一个config配置。

200 spec.storage.storageGroups.virtualSpaces.lvmConfig
名称 类型 必选 描述
lvType
 
string

LVM写入模式:linear、striped。linear:线性模式;striped:条带模式,使用多块磁盘组成条带模式,能够提升磁盘性能。

path
 
string

磁盘挂载路径。仅在用户配置中生效。支持包含:数字、大小写字母、点、中划线、下划线的绝对路径。

200 spec.storage.storageGroups.virtualSpaces.runtimeConfig
名称 类型 必选 描述
lvType
 
string

LVM写入模式:linear、striped。linear:线性模式;striped:条带模式,使用多块磁盘组成条带模式,能够提升磁盘性能。

200 spec.publicIP
名称 类型 必选 描述
ids
 
Array of strings

已有的弹性IP的ID列表。数量不得大于待创建节点数

若已配置ids参数,则无需配置count和eip参数

count
 
integer

要动态创建的弹性IP个数。

count参数与eip参数必须同时配置。

eip
 
NodeEIPSpec object

弹性IP参数

200 spec.publicIP.eip
名称 类型 必选 描述
iptype
 
string

弹性IP类型,取值请参见申请EIP接口中publicip.type说明。 链接请参见申请EIP

bandwidth
 
NodeBandwidth object

弹性IP的带宽参数

200 spec.publicIP.eip.bandwidth
名称 类型 必选 描述
chargemode
 
string

带宽的计费类型:

  • 未传该字段,表示按带宽计费。 - 字段值为空,表示按带宽计费。
  • 字段值为“traffic”,表示按流量计费。
  • 字段为其它值,会导致创建云服务器失败。
  • 按带宽计费:按公网传输速率(单位为Mbps)计费。当您的带宽利用率高于10%时,建议优先选择按带宽计费。
  • 按流量计费:只允许在创建按需节点时指定,按公网传输的数据总量(单位为GB)计费。当您的带宽利用率低于10%时,建议优先选择按流量计费。
size
 
integer

带宽大小,取值请参见取值请参见申请EIP接口中bandwidth.size说明。 链接请参见申请EIP

sharetype
 
string

带宽的共享类型,共享类型枚举:PER,表示独享。WHOLE,表示共享。

200 spec.nodeNicSpec
名称 类型 必选 描述
primaryNic
 
NicSpec object

主网卡的描述信息。

extNics
 
Array of NicSpec objects

扩展网卡

创建节点池添加节点时不支持该参数。

200 spec.nodeNicSpec.primaryNic
名称 类型 必选 描述
subnetId
 
string

网卡所在子网的网络ID。主网卡创建时若未指定subnetId,将使用集群子网。拓展网卡创建时必须指定subnetId。

fixedIps
 
Array of strings

主网卡的IP将通过fixedIps指定,数量不得大于创建的节点数。fixedIps或ipBlock同时只能指定一个。

ipBlock
 
string

主网卡的IP段的CIDR格式,创建的节点IP将属于该IP段内。fixedIps或ipBlock同时只能指定一个。

200 spec.nodeNicSpec.extNics
名称 类型 必选 描述
subnetId
 
string

网卡所在子网的网络ID。主网卡创建时若未指定subnetId,将使用集群子网。拓展网卡创建时必须指定subnetId。

fixedIps
 
Array of strings

主网卡的IP将通过fixedIps指定,数量不得大于创建的节点数。fixedIps或ipBlock同时只能指定一个。

ipBlock
 
string

主网卡的IP段的CIDR格式,创建的节点IP将属于该IP段内。fixedIps或ipBlock同时只能指定一个。

200 spec.taints
名称 类型 必选 描述
key
 
string

value
 
string

effect
 
string

作用效果

200 spec.userTags
名称 类型 必选 描述
key
 
string

云服务器标签的键。不得以"CCE-"或"__type_baremetal"开头

value
 
string

云服务器标签的值

200 spec.runtime
名称 类型 必选 描述
name
 
string

容器运行时, 默认场景:

  • 1.25以下集群:默认为"docker"
  • 1.25及以上集群,随操作系统变化,默认的容器运行时不同:操作系统为欧拉2.5、欧拉2.8的节点默认为"docker",其余操作系统的节点默认为"containerd"
200 spec.extendParam
名称 类型 必选
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
200 status
名称 类型 必选 描述
phase
 
string

节点状态:节点资源生命周期管理(如安装卸载等)状态和集群内k8s node状态的综合体现,取值如下

  • Build:创建中,表示节点正处于创建过程中。
  • Installing:纳管中,表示节点正处于纳管过程中。
  • Upgrading:升级中,表示节点正处于升级过程中。
  • Active:正常,表示节点处于正常状态。
  • Abnormal:异常,表示节点处于异常状态。
  • Deleting: 删除中,表示节点正处于删除过程中。
  • Error:故障,表示节点处于故障状态。
lastProbeTime
 
string

节点最近一次状态检查时间。集群处于异常、冻结或者中间态(例如创建中)时,节点的状态检查动作可能受影响。检查时间超过5分的节点状态不具有参考意义。

jobID
 
string

创建或删除时的任务ID。

serverId
 
string

底层云服务器或裸金属节点ID。

privateIP
 
string

节点主网卡私有网段IP地址。

privateIPv6IP
 
string

节点主网卡私有网段IPv6地址。

publicIP
 
string

节点弹性 公网IP 地址。如果ECS的数据没有实时同步,可在界面上通过“同步节点信息”手动进行更新。

deleteStatus
 
DeleteStatus object

删除资源时表示资源删除状态

200 status.deleteStatus
名称 类型 必选 描述
previous_total
 
integer

集群删除时已经存在的集群资源记录总数

current_total
 
integer

基于当前集群资源记录信息,生成实际最新资源记录总数

updated
 
integer

集群删除时更新的资源记录总数

added
 
integer

集群删除时更新的资源记录总数

deleted
 
integer

集群删除时删除的资源记录总数

返回示例
返回码:200

表示获取集群下指定的节点成功。

示例 1
 
{
"kind": "Node",
"apiVersion": "v3",
"metadata": {
"name": "myhost",
"uid": "4d1ecb2c-229a-11e8-9c75-0255ac100ceb",
"creationTimestamp": "2018-08-02 08:12:40.124294439 +0000 UTC",
"updateTimestamp": "2018-08-02 08:18:20.221871842 +0000 UTC",
"annotations": {
"kubernetes.io/node-pool.id": "az1.dc1#s1.medium#EulerOS 2.2"
}
},
"spec": {
"flavor": "s1.medium",
"az": "******",
"os": "EulerOS 2.2",
"login": {
"sshKey": "KeyPair-001"
},
"rootVolume": {
"volumetype": "SAS",
"size": 40
},
"dataVolumes": [
{
"volumetype": "SAS",
"size": 100
}
],
"publicIP": {
"eip": {
"bandwidth": {}
}
},
"billingMode": 0
},
"status": {
"phase": "Active",
"serverId": "456789abc-9368-46f3-8f29-d1a95622a568",
"publicIP": "10.34.56.78",
"privateIP": "192.168.1.23"
}
}
SDK
点击  云容器引擎  (CCE) SDK, 下载SDK或查看SDK文档。SDK的安装、认证方式等在SDK文档中对应语言类型的【使用】目录下。
错误码
请参考 错误码说明

 

上一篇:查询智能企业网关设备基础规格配置ShowEquipmentSpecificConfig 下一篇:查询云专线项目标签ListProjectTags