EC2 T2“突发”类型的文档说:
基准性能和突增能力由 CPU 积分控制。每个 T2 实例以设定的速率连续接收 CPU 积分,具体取决于实例大小。T2 实例在空闲时累积 CPU 积分,并在它们处于活动状态时使用 CPU 积分。CPU 积分可在一分钟内提供完整 CPU 内核的性能。
我不明白的是空闲是什么意思?所有实例都使用一些 CPU > 0%,那么是否有 CPU 使用率数据在该数据下实例被视为“空闲”?
令人惊讶的是,鉴于该术语的自由使用,我无法在任何地方找到“空闲”的定义。
EC2 T2“突发”类型的文档说:
基准性能和突增能力由 CPU 积分控制。每个 T2 实例以设定的速率连续接收 CPU 积分,具体取决于实例大小。T2 实例在空闲时累积 CPU 积分,并在它们处于活动状态时使用 CPU 积分。CPU 积分可在一分钟内提供完整 CPU 内核的性能。
我不明白的是空闲是什么意思?所有实例都使用一些 CPU > 0%,那么是否有 CPU 使用率数据在该数据下实例被视为“空闲”?
令人惊讶的是,鉴于该术语的自由使用,我无法在任何地方找到“空闲”的定义。
好问题,T2 实例中 CPU 积分的Amazon EC2文档确实可以在这里更精确 - 介绍性博客文章New Low Cost EC2 Instances with Burstable Performance提供了更好的解释,请参见中间的表格:
众所周知,对于 Linux 服务器,“空闲”通常很难定义。在一般层面上,空闲应该是任何不花在用户模式、系统模式、低优先级模式、i/o 等待或中断上的时间——特殊规定是给定正确类型的工作负载,i/o 等待时间可以转换为用户模式时间(用于另一个进程)。
但是,在 AWS t2 空闲的问题上,这并不成立。它也不适用于 t1 (由于“被盗”时间),但即便如此也不能解释 t2 的行为。我遇到过空闲时间(由 Linux top 和 AWS CloudWatch 报告)远高于记录的阈值水平的情况,但实例正在失去 CPU 积分而不是获得它们。我认为这是亚马逊方面的一个会计错误,在它被修复之前,努力理解 CPU 利用率和空闲是如何定义的将是浪费时间。
我已经在 AWS 的支持论坛上发布了一些说明性图表,希望他们会做出回应。https://forums.aws.amazon.com/thread.jspa?messageID=568026#568026
这就像下面
如果您使用的是在最大 10% 单核上运行的微型实例。假设当你的服务器消耗 5% 的单核时,它认为剩余 5% 的计算能力是空闲的。这 5% 仅在偏离航线 24 小时内继续累积。现在,如果您有这种积累,并且意味着当您的服务器急需计算能力时,它就可以从这种积累的计算能力中借用。对于这种计算能力,他们使用了一个花哨的词,称为 CPU Credits。
我用谷歌搜索并在一些博客上找到了很好的解释http://themindtracks.com/amazon-launches-new-low-cost-ec2-instances-burstable-performance/