开发者社区 问答 正文

Kubernetes API 参考  集群 API 列表  添加已有 ECS 实例到 Kubernetes 集群

添加已有实例到集群。

        说明
添加过程中会替换系统盘,需要提前做好数据备份。


请求信息


请求行 RequestLinePOST /clusters/{cluster_id}/attach HTTP/1.1
请求行参数 URI Param

[tr=rgb(51, 205, 229)][td]名称 类型是否必须描述cluster_idstring是集群 ID
特有请求头 RequestHead
无,请参考 公共请求头部
请求体 RequestBody{"password": "ECS 实例 root 登录密码","instances": "要添加的实例数组"}
请求体解析
[tr=rgb(51, 205, 229)][td]名称 类型是否必须描述passwordString是ECS 实例密码。密码规则为8 - 30 个字符,且同时包含三项(大、小写字母,数字和特殊符号)instancesArray是已有实例的数组。

返回信息


返回行 ResponseLineH TTP/1.1 202 OK
特有返回头 ResponseHead
无,请参考 公共返回头部
返回体 ResponseBody{"list": [{"code": "200","instanceId": "i-2zee3oiwcyoz7kwdo8bt","message": "successful"},{"code": "200","instanceId": "i-2ze0lgm3y6iylcbtcypf","message": "successful"}],"task_id": "T-5a544aff80282e39ea000039"}

示例


请求示例POST /clusters/Cccfd68c474454665ace07efce924f75f /attach HTTP/ 1.1<公共请求头>{ "password": "Hello1234", "instances": [ "i-xxxx", "i-yyyy"]}
返回示例HTTP/ 1.1 202 Accepted<公共响应头>{ "list": [{ "code": "200", "instanceId": "i-xxxx", "message": "successful"},{ "code": "200", "instanceId": "i-yyyy", "message": "successful"}], "task_id": "T-5a544aff80282e39ea000039"}

展开
收起
青蛙跳 2018-08-31 22:52:48 1254 分享 版权
阿里云 AI 助理回答

如何将已有ECS实例添加到ACK集群

概述

在已购ECS实例基础上,您可以通过调用API接口将其加入到阿里云容器服务ACK(Alibaba Cloud Container Service for Kubernetes)集群中作为Worker节点。此过程涉及发送POST请求携带必要参数至特定URL,以实现实例的高效管理和资源利用。

详细步骤

  1. 准备数据

    • 确保您拥有集群ID (cluster_id),这是操作中必不可少的参数。
    • 准备一个JSON文件(例如attach.json),内容需包含ECS实例的密码和要添加的实例ID列表。示例内容如下:
      {
       "password": "ECS实例root登录密码",
       "instances": ["i-xxxx", "i-yyyy"]
      }
      

      注意:请确保提供的密码符合规则(8-30个字符,且包含大写字母、小写字母、数字和特殊符号)。

  2. 构造请求

    • 使用curl或类似工具执行POST请求。请求格式如下:
      aliyun cs POST /clusters/<cluster_id>/attach --header "Content-Type=application/json" --body "$(cat attach.json)"
      

      其中,<cluster_id>需要替换为您的实际集群ID。

  3. 执行请求

    • 在命令行环境中运行上述构造的命令。这会触发将指定ECS实例添加到集群的操作。
  4. 验证结果

    • 成功响应会返回每个实例处理的结果状态码、实例ID及消息,以及一个任务ID (task_id),如:
      {
       "list": [
           {"code": "200", "instanceId": "i-xxxx", "message": "successful"},
           {"code": "200", "instanceId": "i-yyyy", "message": "successful"}
       ],
       "task_id": "T-5a544aff80282e39ea000039"
      }
      

      使用task_id可以进一步跟踪任务执行情况。

注意事项

  • 数据备份:由于添加过程中可能会对系统盘进行操作,请在操作前做好ECS实例上重要数据的备份工作。
  • 参数配置:确保JSON文件中的密码正确无误,且列出的所有实例ID都是您计划添加进集群的。
  • API权限:执行此操作的账号需具备更新(update)指定集群的权限,具体RAM策略配置可参考相关文档。

通过以上步骤,您可以将已有ECS实例成功添加至ACK集群中,实现资源的灵活扩展与管理。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答