虚拟机评估——如何确定一个CPU核上部署的虚拟机数量?

最近研究虚拟化技术,不可避免遇到一个问题:如何评估物理主机上虚拟主机的容量?下面这篇文章的思路有一定的启发性,转发一下。

如何确定一个CPU核上部署的虚拟机数量?

摘要:本文说明一个CPU核上部署虚拟机的理想数量。

用户经常会问我这样一个问题,“在一个CPU核上部署虚拟机的理想数量是多少?”我试图从下面两个答案中其中一方面回答:要么用户基于业内测试实例做出决定,要么基于他们自己的桌面PC机来验证性能、评估CPU需求量。

  用业内标准来评判,一个3.0GHz四核心双CPU的服务器通常可以负载的虚拟机数量是30到80个,数量不同的因素是办公桌面类型不同。

轻量级用户:对CPU资源使用的预期值是300MHz;这类用户可能是售报机操作员、接待员、管理员或者仅仅浏览网页的用户。这类用户的办公桌面可能是暂停状态或者根本没有使用,因此前面提到那种配置的服务器每核比率大概接近10:1。
  
      中等用户:对CPU资源使用的预期值是500MHz;这类用户可能包括数据录入人员、医生、学生、Microsoft Office用户、使用公司内部应用软件的电话销售员,或者服务台工作人员。这类用户仅仅在工作时间使用他们的办公桌面。因此,前面提到那种配置的服务器每核比率大概接近6:1。

重量级用户:对CPU资源使用的预期值是800MHz;这类用户可能包括开发人员、系统管理员、IT工作人员、数据库管理员或者工程师。无论是正常工作时间还是下班之后,这类用户的办公桌面负载都很大。他们可能需要运行很大的图形处理工具或者Java应用程序,这些软件都会加重办公桌面负担。因此,前面提到那种配置的服务器每核比率大概接近3.75:1。

超重量级用户:对CPU资源使用的预期值是1GHz;这类用户可能使用大型图形处理工具,如CAD用户或者图形界面处理的开发人员。还有另外一类开发人员,他们处理对CPU使用率比较大的Java或者Web设计。这类用户办公桌面的使用率通常保持在一个较高水平,因此前面提到那种配置的服务器每核比率可能接近2:1。
  
      如果使用这个评估系统来设计一个VDI架构的话,需要知道所有这些用户在整个工作环境中是混杂在一起的。并且由于他们更倾向于需要更多的可收缩性而非CPU,所以也必须考虑内存和磁盘空间。

  规划虚拟桌面架构的另外一个方法就是从实际工作环境的办公桌面中收集数据,并且对这些数据做些基本分析、计算。

  如果一个标准办公桌面对一个2.5 GHz单核CPU使用率是10%,那么这个办公桌面平均就使用250 MHz。峰值时刻使用率是25%,即625MHz,但这种情况一天内仅出现20分钟。根据这个时间度量标准,我们考虑使用平均利用时间。

  提示:在虚拟化这些办公桌面时,需要少量系统开销来运行一些部件,如虚拟化图形界面、声音和其它需要连接的设备。在此我们假设针对每台办公桌面会增加25%的系统开销。

  因此,我们这样计算:250 MHz * 30% = 75MHz

  则有250 MHz + 75 MHz = 32 MHz

  如果我们使用3.0四核心双CPU的服务器,将得到如下计算等式:

  (3.0 GHz * 8) / 325 MHz = 73.85个办公桌面。

  要知道这些计算等式并不是非常科学,只用实际测试才能够提供精确数据。但是对于大多数用户来讲,这些计算结果和精确数字已经非常接近了,并且在规划虚拟桌面架构时可以提供必要的帮助。

时间: 2024-10-01 02:48:59

虚拟机评估——如何确定一个CPU核上部署的虚拟机数量?的相关文章

linux下如何将sheduler绑定到制定的cpu核上

作者:张昌昌 1.顺序绑定 erl +sbt db 是按从前到后的顺序来绑定调度器的,如: erl +sbt db +S 3含义是启动erlang虚拟机,开启3个调度器,按顺序绑定在0,1,2号核上. 2.随机绑定 利用taskset命令, taskset -c 1,3,5 erl +S 3:含义是启动3个调度器的erlang虚拟机,3个调度器分别绑定在指定的1,3,5号cpu核上,然后可执行 top命令,按下1查看各核的负载情况. taskset -c 1-5 erl +S 5:含义是启动5个

Linux 进程、线程运行在指定CPU核上

/******************************************************************************** * Linux 进程.线程运行在指定CPU核上 * 说明: * affinity参数决定了进程.线程是否可在CPU多核之间切换,当然,并不是说就不进行 * 线程切换. * * 2017-9-22 深圳 龙华樟坑村 曾剑锋 *********************************************************

Ubuntu系统进程绑定CPU核

Ubuntu系统进程绑定CPU核 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs 本文讲述如何在Ubuntu系统中,把指定的进程绑定到指定的CPU核运行.而通常是由操作系统负责管理进程和线程的调度,但是这种情况下是不清楚由哪个CPU核运行你的进程,因为操作系统的调度是基于资源的可用性进行判断的. 可以这样,把指定的CPU核绑定到你的进程. taskset -cp <CPU ID | CPU IDs> <Process ID&

云计算之路-阿里云上:消灭“黑色n秒”第二招——给w3wp进程指定CPU核

虽然昨天的第一招失败了,但是从失败中我们学到了与多核CPU相关的Processor Affinity(处理器关联)的知识. 既然我们可以让.NET程序的不同线程运行于指定的CPU核,那是不是也可以让IIS应用程序池的进程w3wp运行于指定的CPU核? 虽然看起来"黑色n秒"似乎与w3wp运行于哪些CPU核没有什么关系,但是我们既然把怀疑对象锁定在CPU,那么任何与CPU相关的线索都不能放过.即使失败,也会满载而归,因为如果没有"黑色n秒"这个问题的驱动,我们根本不会

《一个销售的VMWARE学习系列之三:在ESXI主机上安装WINDOWS虚拟机》

上一篇文章已经学会了怎样安装ESXI主机啦,那下面我们就要学,如何在ESXI主机上安装WINDOWS虚拟机啦:ESXI主机是基于LINUX内核啊!是不是要写命令创建WINDOWS虚拟机呢,哈!这个不用担心,VMWARE提供了vSphere Client 管理工具,而且必须使用才能创建虚拟机啊,你想写命令都不行啊. 1.首先,我们找一台客户机安装vSphere Client 管理工具先,选择"中文",确定安装,如下: 2.安装步骤都是一直"下一步"就可以啦,安装完成后

Go语言在国产CPU平台上应用前景的探索与思考

http://www.chinaaet.com/article/3000087559 0 引言 CPU是电子产品的核心,代表着信息产业的发展水平.CPU发展至今已经有四十多年的历史了,实际就是Intel公司的发展历史[1].Intel的CPU和其兼容产品占领了PC的大半江山.我国CPU战略已经发展十余年,部分领域完全具有核心技术,产业化取得积极进展,但是与国际主流厂商Intel等仍存在较大差距.国产CPU由于受多方因素制约,单核性能并不高,在2000年左右所有的微处理器厂商都转向了多核微处理器的

关于容器、虚拟机以及 Docker 的一个入门教程

Yves yao · 2017-09-05翻译 · 1315阅读 原文链接 huangxiaolu审校 源地址:http://zcfy.cc/article/a-beginner-friendly-introduction-to-containers-vms-and-docker-4139.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io Source: https://flipboard.com/topic/

如何让程序运行在所有CPU核心上

先解释几个概念:多CPU,多核,超线程 多CPU:(一台主机的)主板上有多个CPU. 多核:一个CPU有多个核心(下图是6个物理核心). 超线程:CPU有一个重要的参数是某个型号的CPU是否支持超线程.例如,某个CPU有4个物理核心,它支持超线程技术,那么在逻辑上可以看作8个核心(也叫4核8线程).比如我们在中关村在线上看到某款CPU的参数如下: 表明这款CPU是支持超线程技术的. 在Windows系统下如何设置一个进程能在所有的(逻辑)核心上执行呢? 方法一:在任务管理器中设置进程的相关性.

在Mac 上搭建Linux虚拟机--MacOS &amp; VMware10 &amp; CentOS 7

在大型项目开发中, 需要使用Linux下的C语言对工程进行开发, 在个人PC或者工作站上搭建Linux系统十分容易且方便. 本篇文章将介绍操作系统和虚拟机的搭建: 1 操作系统2 虚拟机概念3 Linux镜像下载安装(CentOS7)4 VMware端搭建5 Mac端设置6 配置CentOS (Linux的一个发行版)系统操作环境: VMware Fusion 10.1.3 MacAir 系列 MacOS: 10.13.1 Linux版本: CentOS7 64位 1 操作系统操作系统是安装在P