ECS选型推荐配置

本文介绍构建Kubernetes集群时该如何选择ECS类型以及选型的注意事项。

集群规格规划

目前在创建Kubernetes集群时,存在着使用很多小规格ECS的现象,这样做有以下弊端:

  • 网络问题:小规格Worker ECS的网络资源受限。

  • 容量问题:为了确保集群的稳定性和可靠性,系统需要预留一部分节点资源用于集群管理和基础设施组件的运行,包括CPU、内存和磁盘等。小规格ECS可能影响集群的性能和可用性。

  • 碎片化问题:节点资源分配时,如果一个容器基本可以占用一个小规格ECS,由于资源需求的不一致或不连续性,将导致该ECS的剩余资源无法利用(构建新的容器或恢复失败的容器),从而造成资源浪费。例如,某个节点只能分配整数倍的CPU,而其应用程序只需要少量CPU,那么剩余的CPU资源将被浪费。

使用大规格ECS的优势:

  • 网络优势:网络带宽大,对于大带宽类的应用,资源利用率高。同时,容器在一台ECS内建立通信的比例增大,将减少网络传输。

  • 镜像拉取优势:拉取镜像的效率更高。因为镜像只需要拉取一次就可以被多个容器使用。而对于小规格的ECS拉取镜像的次数就会增多,若需要联动ECS伸缩集群,则需要花费更多的时间,反而达不到立即响应的目的。

关于ECS规格的选择,请参见下文选择Master节点规格选择Worker节点规格

选择Master节点规格

通过容器服务创建的Kubernetes集群,Master节点上运行着etcd、kube-apiserver、kube-controller等核心组件,对于Kubernetes集群的稳定性有着至关重要的影响,对于生产环境的集群,必须慎重选择Master规格。Master规格与集群规模有关,集群规模越大,所需要的Master规格也越高。

说明

您可从多个角度衡量集群规模,例如节点数量、Pod数量、部署频率、访问量。这里简单地认为集群规模就是集群里的节点数量。

在个人测试和学习环境中,您可以选择小规格ECS进行体验。对于常见的生产集群规模,可以参见下表选择Master节点的规格。下表推荐配置能尽量保证Master负载维持在一个较低的水平上。

节点规模

Master节点推荐规格

1~5个节点

4核 8 GB(不推荐使用2核 4 GB)

6~20个节点

4核 16 GB

21~100个节点

8核 32 GB

100~200个节点

16核 64 GB

200~500个节点(请估爆炸半径风险)

64核 128GB

选择Worker节点规格

  • ECS规格要求:CPU大于等于4核,且内存大于等于8 GiB。

  • 确定整个集群的日常使用的总核数以及可用度的容忍度。

    例如,集群总的核数有160核,可以容忍10%的错误。那么最小选择10台16核ECS,并且高峰运行的负荷不要超过160*90%=144核。如果容忍度是20%,那么最小选择5台32核ECS,并且高峰运行的负荷不要超过160*80%=128核。这样即使有一台ECS出现故障,剩余ECS仍可以支持现有业务正常运行。

    当集群日常规模达到1000核左右,可以选用裸金属神龙服务器。更多信息,请参见裸金属神龙服务器使用场景及优势

  • 根据Pod资源要求,确定CPU和Memory的配比,例如1:2、1:4等。对于使用内存较多的应用例如Java类应用,建议考虑使用1:8的机型。

裸金属神龙服务器使用场景及优势

使用场景

  • 集群日常规模能够达到1000核。一台神龙服务器至少96核,这样可以通过10台或11台神龙服务器即可构建一个集群。

  • 快速扩展容器数量。例如,电商类大促场景下,为应对流量尖峰,可以使用神龙服务作为新增节点,每增加一台神龙服务器就可以支持多个容器的运行。

优势

  • 超强网络: 配备RDMA(Remote Direct Memory Access)技术。通过Terway容器网络,充分发挥硬件性能,跨宿主机容器带宽超过9 GB。

  • 计算性能零抖动:自研芯片取代Hypervisor,无虚拟化开销,无资源抢占。

  • 安全:物理级别加密,支持Intel SGX加密,可信计算环境,支持区块链等应用。

更多信息,请参见弹性裸金属服务器概述