硬件虚拟化:资源控制与可观测性详解
1. 硬件虚拟化概述
Nitro 管理程序消除了额外的 I/O 步骤,预计大型云提供商为追求最高性能,会利用硬件支持消除 I/O 代理。不过,多租户环境下存在资源竞争问题,如 CPU 被盗用时间和 CPU 缓存污染,这在容器中比虚拟机更为突出,因为容器为支持 CPU 突发而促进资源共享。此外,其他租户的 I/O 操作可能导致中断,影响执行。资源竞争可通过资源控制进行管理。
2. 资源控制
2.1 CPU 资源控制
- 分配方式 :CPU 资源通常以虚拟 CPU(vCPU)的形式分配给客户机,由管理程序进行调度,分配的 vCPU 数量大致限制了 CPU 资源的使用。
- Xen 调度器 :
- 借用虚拟时间(BVT) :基于虚拟时间分配的公平共享调度器,可提前借用时间,为实时和交互式应用提供低延迟执行。
- 简单最早截止时间优先(SEDF) :实时调度器,可配置运行时保证,优先处理最早截止时间的任务。
- 基于信用 :支持 CPU 使用的优先级(权重)和上限,并在多个 CPU 之间进行负载均衡。
- KVM 调度 :可通过主机操作系统应用细粒度的 CPU 配额,如使用主机内核公平共享调度器,在 Linux 上可使用 cgroup CPU 带宽控
订阅专栏 解锁全文
17万+

被折叠的 条评论
为什么被折叠?



