调用DescribeClusterAttachScripts添加已有实例至ACK集群。该API返回唯一的可执行脚本。您获取脚本后,在已有节点上执行该脚本即可完成节点的接入。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求语法
POST /clusters/ClusterId/attachscript HTTP/1.1
Content-Type:application/json
{
"nodepool_id" : "String",
"format_disk" : Boolean,
"keep_instance_name" : Boolean,
"rds_instances" : [ "String" ],
"arch" : "String",
"options" : "String"
}
请求参数
参数名称 | 类型 | 是否必选 | 示例 | 说明 |
---|---|---|---|---|
ClusterId | String | 是 | ca375a93a30474552ad2a0ebe183e**** |
集群ID。 |
参数名称 | 类型 | 是否必选 | 示例 | 说明 |
---|---|---|---|---|
nodepool_id | String | 否 | np1c9229d9be2d432c93f77a88fca0**** |
节点池ID,添加节点时可以将该节点添加到指定的节点池中。 说明 如果不指定节点池ID,默认将节点添加至默认节点池。
|
format_disk | Boolean | 否 | false |
手动添加已有实例到集群时,是否对该实例进行数据盘挂载,将容器和镜像存储在数据盘上。取值:
默认值: 数据挂载规则:
|
keep_instance_name | Boolean | 否 | true |
添加已有实到集群时,是否保留实例名称。如果不保留,则实例名称格式为
默认值: |
rds_instances | Array of String | 否 | rm-xxx |
RDS实例名称。 |
arch | String | 否 | amd64 |
节点CPU架构。支持的CPU架构包括 默认值: 说明 当集群类型为边缘托管版时必填。
|
options | String | 否 | {\"enableIptables\": true,\"manageRuntime\": true,\"quiet\": true,\"allowedClusterAddons\": [\"kube-proxy\",\"flannel\",\"coredns\"]} |
节点的接入配置参数。 说明 当集群类型为边缘托管版时必填。
|
响应体语法
HTTP/1.1 200
Content-Type:application/json
响应参数
参数名称 | 类型 | 示例 | 说明 |
---|---|---|---|
String | "curl http://aliacs-k8s-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/public/pkg/run/attach/1.12.6-aliyunedge.1/edgeadm -O edgeadm; chmod u+x edgeadm; ./edgeadm join --openapi-token=XXX --node-spec="{\"flannelIface\":\"eth0\",\"enableIptables\":true,\"assumeYes\":true,\"manageRuntime\":true,\"nodeNameStrategy\":\"hostname\",\"enabledAddons\":[\"kube-proxy\",\"flannel\",\"coredns\"]}"" |
节点接入脚本。 |
手动添加已有实例至ACK集群示例
请求示例
POST /clusters/ca375a93a30474552ad2a0ebe183e****/attachscript HTTP/1.1
Content-Type:application/json
{
"nodepool_id" : "np1c9229d9be2d432c93f77a88fca0****",
"format_disk" : false,
"keep_instance_name" : true,
"rds_instances" : [ "rm-xxx" ],
"arch" : "amd64",
"options" : "{\\\"enableIptables\\\": true,\\\"manageRuntime\\\": true,\\\"quiet\\\": true,\\\"allowedClusterAddons\\\": [\\\"kube-proxy\\\",\\\"flannel\\\",\\\"coredns\\\"]}"
}
请求示例补充说明
添加已有实例到边缘托管版集群时,options参数以及arch参数为必填,下面对options内的参数做说明:
```
{
"options":"{
"allowedClusterAddons": 组件名称。
"enableIptables": 是否开启iptables,默认值true。
"flannelIface": flannel使用的网卡名。默认使用节点默认路由的网卡名。
"gpuVersion": 表示要接入的节点是否为GPU节点,默认为空。当前支持的GPU版本是Nvidia_Tesla_T4、Nvidia_Tesla_P4、Nvidia_Tesla_P100。
"manageRuntime": 是否由edgeadm安装并检测Runtime,默认false。
"nodeNameOverride": 设置节点名,提供3种方式:""(默认值,表示使用主机名);"*"(表示随机生成6位的字符串。);"*.XXX"(表示随机生成6位字符串+XXX后缀。)。
"quiet": 是否使用静默模式安装。
}
}
```
正常返回示例
JSON
格式
HTTP/1.1 200 OK
返回示例补充说明
非边缘托管版:
"curl http://aliacs-k8s-cn-chengdu.oss-cn-chengdu-internal.aliyuncs.com/public/pkg/run/attach/1.16.9-aliyun.1/attach_node.sh | bash -s -- --node-name-mode nodeip --cms-enabled --cms-version 1.3.7 --openapi-token **** --addon-names flannel,csi-plugin,csi-provisioner,logtail-ds,ack-node-problem-detector,nginx-ingress-controller,kube-flannel-ds --cpu-policy none --node-cidr-mask 26 --node-port-range 30000-32767 --runtime docker --runtime-version 19.03.5"
边缘托管版:
"wget http://aliacs-k8s-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/public/pkg/run/attach/1.12.6-aliyunedge.1/edgeadm -O edgeadm; chmod u+x edgeadm; ./edgeadm join --openapi-token=*** --node-spec="{\"flannelIface\":\"eth0\",\"enableIptables\":true,\"assumeYes\":true,\"manageRuntime\":true,\"nodeNameStrategy\":\"hostname\",\"enabledAddons\":[\"kube-proxy\",\"flannel\",\"coredns\"]}""
错误码
访问错误中心查看更多错误码。