在Kubernetes大家是如何对requests进行优化的?

总是说Kubernetes能够提高资源利用率,在我实际使用过程中,实际的usage/request/limit三个值与node的总资源比例差距很多;大概是

使用率requestlimit
Node-1cpu: 20%, mem 30%cpu: 83%, mem 90%cpu: 210%, mem 260%
Node-2cpu: 18%, mem 32%cpu: 76%, mem 87%cpu: 310%, mem 290%
Node-3cpu: 34%, mem 26%cpu: 85%, mem 80%cpu: 400%, mem 320%

即出现实际上资源占用并无多少,但是node资源已经被分配完毕导致node无法继续分配资源。

request设计的太小会太过频繁触发横向伸缩,导致客户端响应有时候会丢失,例如缩容时候有几个请求较慢的被强制中断。

request设计的太大会导致低峰期会导致资源浪费,并且扩容起来也容易导致NODE资源因为空间不足分配不了。

  1. request该如何设计找到 预设计的资源与我们实际中的使用率的平衡呢?
  2. 可以看到表格中limit的资源超卖现象非常严重,高峰期很容易导致服务群的雪崩,limit又该超卖多少合适呢?
阅读 788
1 个回答

用资源分析工具 Prometheus 和Grafan先分析一下具体的情况,然后在用用 Vertical Pod Autoscaler (VPA) 自动调整 Pods 的请求和限制。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏