开发者社区> 问答> 正文

Kubernetes 集群如何扩容和缩容集群

反向一觉 2017-10-30 16:15:47 2348
基于 ROS 的堆栈更新能力,您可以根据实际业务需要对 Kubernetes 集群的 Worker 节点进行扩容和缩容。

使用限制
  • 代理节点数必须介于 1 到 1000(含)之间。
  • 目前,不支持自动扩容容器服务集群中的 Master 节点。

扩容集群
  1. 登录 ROS 管理控制台
  2. 选择资源栈所在的地域,在列表中找到所需的 Kubernetes 集群,单击右侧的 [backcolor=transparent]更多 > [backcolor=transparent]更新堆栈。
  3. 单击 [backcolor=transparent]下一步。
    单击 [backcolor=transparent]更新堆栈 后,会显示部署 Kubernetes 集群所使用的编排模板,通过修改模板您可以完成非常复杂的集群升级。如果只是进行集群扩容,可以直接单击 [backcolor=transparent]下一步。
  4. 在参数配置页面,修改 [backcolor=transparent]Worker节点数 来完成集群扩容。
  5. 单击 [backcolor=transparent]创建。
    资源编排服务开始对集群进行相应的扩容处理。您可以通过事件列表来实时监控更新过程。

[backcolor=transparent]注意:
  • 由于升级过程依赖登录到 ECS 来拷贝配置信息,所以扩容时填的密码必须和部署集群时填写的密码一致。
  • 资源编排服务显示栈更新完成后,通过 [backcolor=transparent]kubectl get node 或者 Kubernetes 控制台并不能马上看到新增的节点,需要几分钟时间等待节点注册。

缩容集群
您可以通过下面的操作从集群中删除一些节点来达到缩容集群的目的。
对于正在使用中的节点,通常会有许多 Pod 已经调度到该节点上运行,如果直接删除会导致服务的短暂失联。因此,需要先下线节点等待 Pod 被驱逐出节点后删除节点。
  1. 连接到集群。
    有关如何连接集群,参见 通过 kubectl 连接 Kubernetes 集群
  2. 下线节点。
    通过 kubectl get node -o wide 命令列出需要删除的节点。
    假设节点 ID 为 izuf694l8lw6xvdx6gh7tkz.
  3. 执行 kubectl drain node izuf694l8lw6xvdx6gh7tkz --ignore-daemonsets 下线节点。
    等待命令返回后,节点上的 Pod 就被驱逐了。

删除 Kubernetes 节点元信息。
执行 kubectl delete node izuf694l8lw6xvdx6gh7tkz 命令从集群的元数据中删除该节点。
稍等片刻后您会发现目标节点上的容器已经全部被停止并删除了。
登录 ECS 管理控制台删除该 ECS 节点。
弹性计算 Kubernetes 监控 调度 数据安全/隐私保护 容器 Perl
分享到
取消 提交回答
全部回答(0)
+ 订阅

云原生时代,是开发者最好的时代

推荐文章
相似问题
推荐课程