让 Xen dom0 得到足够 CPU 处理 IO

让 Xen dom0 得到足够 CPU 处理 IO

默认情况下 Xen 使用的是 Credit-Based CPU Scheduler , 一种基于权重的 CPU 调度算法。简单的说就是给每个虚拟机的 CPU 一个权重,权重多的得到和使用物理 CPU 的时间就会多,如果虚拟机1的 CPU(VCPU 1.0)权重是256,虚拟机2(VCPU 2.0)的权重是512,那么虚拟机2的 VCPU 2.0 得到物理 CPU 的使用时间就是虚拟机1的2倍。

Xen 给每个虚拟机(包括 dom0 和 domU)分配的默认权重都是 256,也就是说 Xen 上运行的所有 guest 操作系统,dom0 和 众多 domU 都是均分和共享 CPU 的,他们能得到 CPU 的时间和机会都是一样的。这看上去对虚拟机用户(domU)来说很公平,但这种大锅饭的方法对 dom0 来说可不合适,dom0 承担着艰巨的任务,要处理来自其他 domU 的 IO 请求,如果都平均享用 CPU 的话就会造成 dom0 常常因得不到足够的 CPU 时间而不能及时处理自己或来自 domU 的 IO,所以在各虚拟机 IO 负载重的情况下我们需要修改 dom0 的权重,以便它能及时处理 IO. IO 这个问题很重要,一旦 IO 处理不及时,所有虚拟机的 IO 都会等待,将会影响所有虚拟机用户。这也是为什么我们不提供 64MB VPS 的一个原因,64MB VPS 用户会明显感到内存不足,系统会大量频繁 swapping,大量 disk IO 请求会影响服务器整体性能和所有其他用户。可以在这篇:64MB 的 VPS 能支持多少访问量? 看到 128MB 的 swap 就用了 75MB.

查看当前 dom0 的 CPU 权重:

# xm sched-credit -d Domain-0
{'cap': 0, 'weight': 256}

修改 dom0 的 CPU 权重:

# xm sched-credit -d Domain-0 -w 512

# xm sched-credit -d Domain-0
{'cap': 0, 'weight': 512}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值