当前位置:主页 > 查看内容

获取指定的节点_云容器引擎 CCE_API参考_API_集群管理

发布时间:2021-09-23 00:00| 位朋友查看

简介:功能介绍 该API用于通过节点ID获取指定节点的详细信息。 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 调试 您可以在 API Explorer 中调试该接口。 URI GET /api/v3/projects/{project_id}/clusters/{cluster_id}/no……

功能介绍

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

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

调试

您可以在API Explorer中调试该接口。

URI

GET /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes/{node_id}

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

cluster_id

String

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

node_id

String

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

表2 Query参数

参数

是否必选

参数类型

描述

errorStatus

String

集群状态兼容Error参数,用于API平滑切换。 兼容场景下,errorStatus为空则屏蔽Error状态为Deleting状态。

最小长度:0

最大长度:10

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

消息体的类型(格式)

缺省值:application/json

X-Auth-Token

String

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

最大长度:16384

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

kind

String

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

缺省值:Node

apiVersion

String

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

缺省值:v3

metadata

NodeMetadata object

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

spec

V3NodeSpec object

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

status

V3NodeStatus object

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

表5 NodeMetadata

参数

参数类型

描述

name

String

节点名称

说明:

命名规则:以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围1-56位,且不能以中划线(-)结尾。

最小长度:1

最大长度:56

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

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

表6 V3NodeSpec

参数

参数类型

描述

flavor

String

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

最小长度:1

最大长度:50

az

String

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

最大长度:200

os

String

节点的操作系统类型。

  • 对于虚拟机节点,可以配置为“EulerOS”、“CentOS”、“Debian”、“Ubuntu”。默认为"EulerOS"。
说明:

系统会根据集群版本自动选择支持的系统版本。当前集群版本不支持该系统类型,则会报错。

  • 对于自动付费包周期的裸金属节点,只支持EulerOS 2.3、EulerOS 2.5、EulerOS 2.8。
  • 若在创建节点时指定了extendParam中的alpha.cce/NodeImageID参数,可以不填写此参数。

login

Login object

节点的登录方式

rootVolume

Volume object

节点的磁盘信息

dataVolumes

Array of Volume objects

节点的数据盘参数(目前已支持通过控制台为CCE节点添加第二块数据盘)。

针对专属云节点,参数解释与rootVolume一致

publicIP

V3NodePublicIP object

节点的弹性公网IP

nodeNicSpec

NodeNicSpec object

节点的网卡信息

count

Integer

批量创建时节点的个数,必须为大于等于1,小于等于最大限额的正整数。作用于节点池时该项允许为0

billingMode

Integer

节点的计费模式:取值为 0(按需付费)、2(自动付费包周期)

自动付费包周期支持普通用户token。

说明:

创建按需节点不影响集群状态;创建包周期节点时,集群状态会转换为“扩容中”。

taints

Array of Taint objects

支持给创建出来的节点加Taints来设置反亲和性,每条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上。\n>创建节点池添加节点时不支持该参数。

offloadNode

Boolean

是否CCE Turbo集群节点

说明:

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

userTags

Array of UserTag objects

云服务器标签,键必须唯一,CCE支持的最大用户自定义标签数量依region而定,自定义标签数上限最少为5个。

runtime

Runtime object

  

extendParam

NodeExtendParam object

创建节点时的扩展参数。

表7 Login

参数

参数类型

描述

sshKey

String

选择密钥对方式登录时的密钥对名称。密钥对和密码登录方式二者必选其一。

userPassword

UserPassword object

选择密码方式登录时的帐号密码信息,之后可通过此帐号密码登录节点。密钥对和密码登录方式二者必选其一。

表8 UserPassword

参数

参数类型

描述

username

String

登录帐号,默认为“root”

缺省值:root

password

String

登录密码,取值请参见创建云服务器adminPass参数的描述。若创建节点通过用户名密码方式,即使用该字段,则响应体中该字段作屏蔽展示。创建节点时password字段需要加盐加密,具体方法请参见创建节点时password字段加盐加密

表9 Volume

参数

参数类型

描述

size

Integer

磁盘大小,单位为GB

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

volumetype

String

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

  • SAS:高IO,是指由SAS存储提供资源的磁盘类型。
  • SSD:超高IO,是指由SSD存储提供资源的磁盘类型。

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

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

表10 VolumeMetadata

参数

参数类型

描述

__system__encrypted

String

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

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

__system__cmkid

String

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

表11 V3NodePublicIP

参数

参数类型

描述

ids

Array of strings

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

说明:

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

count

Integer

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

说明:

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

eip

V3NodeEIPSpec object

弹性IP参数

表12 V3NodeEIPSpec

参数

参数类型

描述

iptype

String

弹性IP类型,取值请参见“创建云服务器 > eip字段数据结构说明”表中“iptype”参数的描述。

bandwidth

V3NodeBandwidth object

弹性IP的带宽参数

表13 V3NodeBandwidth

参数

参数类型

描述

chargemode

String

带宽的计费类型:

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

size

String

带宽大小,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“size”参数的描述。

sharetype

String

带宽的共享类型,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“sharetype”参数的描述。

表14 NodeNicSpec

参数

参数类型

描述

primaryNic

NicSpec object

主网卡的描述信息。

extNics

Array of NicSpec objects

扩展网卡

表15 NicSpec

参数

参数类型

描述

subnetId

String

网卡所在子网的ID。

fixedIps

Array of strings

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

ipBlock

String

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

表16 Taint

参数

参数类型

描述

key

String

value

String

最大长度:63

effect

String

作用效果

枚举值:

  • NoSchedule
  • PreferNoSchedule
  • NoExecute
表17 UserTag

参数

参数类型

描述

key

String

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

最小长度:1

最大长度:36

value

String

云服务器标签的值

最小长度:0

最大长度:43

表18 Runtime

参数

参数类型

描述

name

String

容器运行时,默认为“docker”

缺省值:docker

枚举值:

  • docker
  • containerd
表19 NodeExtendParam

参数

参数类型

描述

ecs:performancetype

String

云服务器规格的分类。裸金属节点无该字段。

orderID

String

订单ID,节点付费类型为自动付费包周期类型时,响应中会返回此字段。

productID

String

产品ID,节点付费类型为自动付费包周期类型时,响应中会返回此字段。

maxPods

Integer

节点最大允许创建的实例数(Pod),该数量包含系统默认实例,取值范围为16~256。 该设置的目的为防止节点因管理过多实例而负载过重,请根据您的业务需要进行设置。

periodType

String

订购周期类型,取值范围:

  • month:月
  • year:年
说明:

billingMode为2(自动付费包周期)时生效,且为必选。

periodNum

Integer

订购周期数,取值范围:

  • periodType=month(周期类型为月)时,取值为[1-9]。
  • periodType=year(周期类型为年)时,取值为1。
说明:

billingMode为2时生效,且为必选。

isAutoRenew

String

是否自动续订

  • “true”:自动续订
  • “false”:不自动续订
说明:

billingMode为2时生效,且为必选。

isAutoPay

String

是否自动扣款

  • “true”:自动扣款
  • “false”:不自动扣款
说明:

billingMode为2时生效,不填写此参数时默认会自动扣款。

DockerLVMConfigOverride

String

Docker数据盘配置项。默认配置示例如下:

"DockerLVMConfigOverride":"dockerThinpool=vgpaas/90%VG;kubernetesLV=vgpaas/10%VG;diskType=evs;lvType=linear"

包含如下字段:

  • userLV:用户空间的大小,示例格式:vgpaas/20%VG
  • userPath:用户空间挂载路径,示例格式:/home/wqt-test
  • diskType:磁盘类型,目前只有evs、hdd和ssd三种格式
  • lvType:逻辑卷的类型,目前支持linear和striped两种,示例格式:striped
  • dockerThinpool:Docker盘的空间大小,示例格式:vgpaas/60%VG
  • kubernetesLV:Kubelet空间大小,示例格式:vgpaas/20%VG

dockerBaseSize

Integer

Device mapper模式下,节点上Docker单容器的可用磁盘空间大小,OverlayFS模式(CCE Turbo集群中CentOS 7.6和Ubuntu 18.04节点,以及混合集群中Ubuntu 18.04节点)下不支持此字段。Device mapper模式下建议dockerBaseSize配置不超过80G,设置过大时可能会导致docker初始化时间过长而启动失败,若对容器磁盘大小有特殊要求,可考虑使用挂载外部或本地存储方式代替。

offloadNode

String

是否为CCE Turbo集群节点。

publicKey

String

节点的公钥。

alpha.cce/preInstall

String

安装前执行脚本

说明:

输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64

alpha.cce/postInstall

String

安装后执行脚本

说明:

输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64。

alpha.cce/NodeImageID

String

如果创建裸金属节点,需要使用自定义镜像时用此参数。

nicMultiqueue

String

  • 弹性网卡队列数配置,默认配置示例如下:
"[{\"queue\":4}]"

包含如下字段:

  • queue: 弹性网卡队列数。
  • 仅在turbo集群的BMS节点时,该字段才可配置。
  • 当前支持可配置队列数以及弹性网卡数:{"1":128, "2":92, "4":92, "8":32, "16":16, "28":9}, 既1弹性网卡队列可绑定128张弹性网卡,2队列弹性网卡可绑定92张,以此类推。
  • 弹性网卡队列数越多,性能越强,但可绑定弹性网卡数越少,请根据您的需求进行配置(创建后不可修改)。

nicThreshold

String

  • 弹性网卡预绑定比例配置,默认配置示例如下:
"0.3:0.6"
  • 第一位小数:预绑定低水位,弹性网卡预绑定的最低比例(最小预绑定弹性网卡数 = ?节点的总弹性网卡数 * 预绑定低水位?)
  • 第二位小数:预绑定高水位,弹性网卡预绑定的最高比例(最大预绑定弹性网卡数 = ?节点的总弹性网卡数 * 预绑定高水位?)
  • BMS节点上绑定的弹性网卡数:Pod正在使用的弹性网卡数 + 最小预绑定弹性网卡数 < BMS节点上绑定的弹性网卡数 < Pod正在使用的弹性网卡数 + 最大预绑定弹性网卡数
  • BMS节点上当预绑定弹性网卡数 < 最小预绑定弹性网卡数时:会绑定弹性网卡,使得预绑定弹性网卡数 = 最小预绑定弹性网卡数
  • BMS节点上当预绑定弹性网卡数 > 最大预绑定弹性网卡数时:会定时解绑弹性网卡(约2分钟一次),直到预绑定弹性网卡数 = 最大预绑定弹性网卡数
  • 取值范围:[0.0, 1.0]; 一位小数; 低水位 <= 高水位
  • 仅在turbo集群的BMS节点时,该字段才可配置。
  • 弹性网卡预绑定能加快工作负载的创建,但会占用IP,请根据您的需求进行配置。
表20 V3NodeStatus

参数

参数类型

描述

phase

String

节点状态。

枚举值:

  • Build
  • Installing
  • Installed
  • ShutDown
  • Upgrading
  • Active
  • Abnormal
  • Deleting
  • Error

jobID

String

创建或删除时的任务ID。

serverId

String

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

privateIP

String

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

publicIP

String

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

deleteStatus

DeleteStatus object

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

表21 DeleteStatus

参数

参数类型

描述

previous_total

Integer

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

current_total

Integer

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

updated

Integer

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

added

Integer

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

deleted

Integer

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

请求示例

响应示例

状态码: 200

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

{
  "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" : "az1.dc1",
    "os" : "EulerOS 2.2",
    "login" : {
      "sshKey" : "myKeypair",
      "userPassword" : { }
    },
    "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"
  }
}

状态码

状态码

描述

200

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

错误码

请参见错误码


本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:CreateScalingRule - 弹性伸缩 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐