当前位置: 首页 > 知识库问答 >
问题:

Kubernetes:POD的CPU资源分配

於意蕴
2023-03-14

我正在尝试为kubernetes吊舱中运行的服务分配CPU资源。服务大多是基于nodejs的RESTendpoint,带有一些DB操作。

在负载测试期间,尝试在100米和1000米之间对吊舱进行不同的组合。对于每秒的预期请求数,当值小于

我不知道应该根据什么来选择特定的CPU资源值。有人能在这方面帮助我吗?

共有1个答案

步博厚
2023-03-14

两点:

>

  • 如果您将HPA配置为基于CPU利用率的自动缩放,那么如果CPU请求500m,则副本多于1000m,这是有道理的。这是因为您为HPA定义的目标利用率与Pods的CPU请求相关。

    例如,如果您的目标利用率为80%并且Pods的CPU请求500m,那么如果实际CPU使用率超过400m,HPA会扩展您的应用程序。另一方面,如果CPU请求1000m,那么HPA只会在CPU使用率超过800m时才会扩展。

    为容器选择资源请求(例如CPU)非常重要,但它本身也是一门艺术。CPU是容器可靠运行所需的最小CPU量。要找出此值,您可以在本地运行您的应用程序并尝试评估它实际使用了多少CPU,例如,使用pstop

  •  类似资料:
    • CPU资源设置 默认情况下,所有容器获得CPU周期的比例相同。可以通过改变容器的CPU加权占有率相对于其他正在运行容器的加权占有率的比例来调整。 修改1024的比例,使用-c或--cpu-sharesflag的权重设置为2或更高。 该比例只适用在CPU密集型进程运行时。当在一个容器中的任务处于空闲状态,其他容器可以使用剩余空闲CPU时间。实际CPU时间将根据在系统上运行的容器的数目而变化。 例如,

    • percentCPUUsage Number - 上一次调用getCPUUsage之后使用的CPU占比。 idleWakeupsPerSecond Number - 上一次调用getCPUUsage之后每秒钟的平均空闲cpu唤醒次数。 以上两个参数首次获取均默认返回 0.

    • 问题内容: 我有一个4核CPU,我想为Docker容器分配50%的CPU资源。 阅读完手册和源代码后。 我仍然不知道如何使用该选项。 要么 问题答案: 相对于默认设置1024,cpu-shares是一个“相对权重”,因此,如果您有两个容器在同一内核上运行,则可以通过调整CPU 50-50或80-20或您想要的任何值来给它们数字。它是整数。 您不能使用此标志来提供总体限制,但是可以使用 此处提到的来

    • 计算机的硬件资源是用汇编语言编程所必须要了解的重要内容,因为汇编语言允许、也需要程序员直接使用这些硬件资源,只有这样才能编写出高效的目标代码。 在汇编语言中,需要访问的硬件资源主要有:CPU内部资源、存储器和I/O端口。本章将着重讲解CPU内部寄存器的命名、功能及其常见的用途,还要介绍存储器的分段管理模式、存储单元地址的表示法以及其物理地址的形成方式。 2.1 寄存器组 寄存器是CPU内部重要的数

    • 我试图动态地获取给定数量的资源,但我无法理解语法。在资源集动态分配中,每个单元由其所属的资源集的名称表示。在图中,查封块将查封集合“resourcePool”中的3个资源。 我需要为每一个特工抓取特定数量的资源。然后我尝试创建资源池对象的ArrayList,并将其传递到动态分配中,但由于类型不匹配,因此无法工作。 例如,假设我有一个需要4个资源的代理,所以需要的表达式是:{resourcePool

    • 当用户超过20时,CPU使用率达到95%,Jmeter被挂起。记忆力低于60%。我已经将堆内存增加到2GB,并且取消了每次迭代的Clear cache,但是CPU仍然会下降。非GUI也不工作。 除了分布式负载之外,有没有其他方法可以解决这个问题?