调用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"
}

请求参数

表 1. 请求Path参数
参数名称 类型 是否必选 示例 说明
ClusterId String ca375a93a30474552ad2a0ebe183e****

集群ID。

表 2. 请求Body参数
参数名称 类型 是否必选 示例 说明
nodepool_id String np1c9229d9be2d432c93f77a88fca0****

节点池ID,添加节点时可以将该节点添加到指定的节点池中。

format_disk Boolean false

手动添加已有实例到集群时,是否对该实例进行数据盘挂载,将容器和镜像存储在数据盘上。取值:

  • true:对实例进行数据盘挂载,数据盘内原有数据将丢失,请注意备份数据。
  • false:不对实例进行数据盘挂载。

默认值:false

数据盘挂在规则:

  • 如果 ECS 已挂载数据盘,且最后一块数据盘的文件系统未初始化,系统会自动将该数据盘格式化为 ext4,用来存放内容/var/lib/docker、/var/lib/kubelet 。
  • 如果 ECS 未挂载数据盘,则不会挂载新的数据盘。
keep_instance_name Boolean true

添加已有实到集群时,是否保留实例名称。如果不保留,则实例名称格式为worker-k8s-for-cs-<clusterid>。取值:

  • true:保留实例名称。
  • false:不保留实例名称,会用系统规则进行替换。。

默认值:true

rds_instances Array of String rm-xxx

RDS实例名称。

arch String amd64

节点CPU架构。支持的CPU架构包括amd64armarm64

默认值:amd64

说明 当集群类型为边缘托管版时必填。
options String {\"enableIptables\": true,\"manageRuntime\": true,\"quiet\": true,\"allowedClusterAddons\": [\"kube-proxy\",\"flannel\",\"coredns\"]}

节点的接入配置参数。

说明 当集群类型为边缘托管版时必填。

响应体语法

HTTP/1.1 200
Content-Type:application/json
{
  "result" : "String"
}

响应参数

表 3. 响应Body参数
参数名称 类型 示例 说明
String "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=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\\\"]}"
}

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<result>"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=XXX --node-spec="{\"flannelIface\":\"eth0\",\"enableIptables\":true,\"assumeYes\":true,\"manageRuntime\":true,\"nodeNameStrategy\":\"hostname\",\"enabledAddons\":[\"kube-proxy\",\"flannel\",\"coredns\"]}""</result>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "result" : "\"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=XXX --node-spec=\"{\\\"flannelIface\\\":\\\"eth0\\\",\\\"enableIptables\\\":true,\\\"assumeYes\\\":true,\\\"manageRuntime\\\":true,\\\"nodeNameStrategy\\\":\\\"hostname\\\",\\\"enabledAddons\\\":[\\\"kube-proxy\\\",\\\"flannel\\\",\\\"coredns\\\"]}\"\""
}

错误码

访问错误中心查看更多错误码。

开发者资源

  • SDK

    阿里云为您提供多种语言的SDK,帮助您快速通过API集成阿里云的产品和服务,推荐您使用SDK调用API,已免除您手动签名验证,详情请参见SDK参考文档链接。

  • OpenAPI Explorer

    快速检索,可视化调试API,在线命令行工具,同步动态生成可执行的SDK代码示例。

  • 阿里云CLI

    阿里云资产管理和配置工具,可通过命令方式同时管理多个阿里云产品和服务,简单快捷,是您上云好帮手。