关于性能测试中使用物理机和虚拟机的区别

需要说明的情况,以下对比表格主要针对性能测试

  举例的物理机和虚拟机的数值

  CPU  2Ghz
  内存 4GB
  网卡 100M
  硬盘 200G

  虚拟机所在的物理机器称之为“宿主机”,单独的物理机和虚拟机是在数值等同的情况下进行以下比对:

图片点击可在新窗口打开查看

  其他:

  VM实现:

  VMware 虚拟化的工作原理是,直接在计算机硬件或主机操作系统上面插入一个精简的软件层,用软件模拟计算机软硬件环境,占用物理机本身的资源,将这部分资源“硬件化”--划分了一个特定的可以格式化的分区,在其中包含cpu的应用资源、内存、硬盘、网络资源等等,建立完整的运行环境。

  1、虚拟机的CPU实现:

  由于虚拟机是基于一个软件层实现的,CPU的处理能力实际上是物理机进程调度虚拟机组件来实现的,虚拟机的CPU取决于宿主机的CPU分配。

  2、虚拟机的内存分配:

  无论怎样分配,推荐的内存的大小值不能超过所在的物理宿主机的内存,而且物理机的内存动态调整会直接影响到虚拟机的内存使用率;如果内存值大于宿主机的物理内存值,最终还是会导致宿主机本身在内存和硬盘间调度。

  同时,虚拟机的内存实际使用率低于虚拟机的内存分配值,仍有一部分用于虚拟机的运作-以上两个原因决定了虚拟机的内存值是一个时刻变动的动态值,并且在物理机内存恶化的情况下,表现更糟糕。

  3,虚拟机的网络使用:

  1、桥接Bridge

  bridge方式里面,就是利用网卡的这种功能为每一个VM分配一个外网的IP;每个VM在网络上的地位与宿主机是对等的。可认为每一个VM都是一个网络上的物理机。

图片点击可在新窗口打开查看

2、Host only

  第3种的NAT方式实际上是在这种方式上加了一个功能而已(增加一项NAT服务)。host only 用的是vmnet1,它包括两个组件,一个虚拟的网卡(Host Virtual Adapter),一个网拟的交换机(Virtual Switch),虚拟的网卡自动连到这个交换机上。Host Virtual Adapter和各个虚拟机的网卡一起已经组成了一个局域网,而且Host Virtual Adapter所在的宿主机还有一个网卡(物理网卡)连接着外网—不过这个宿主机上的两个网卡间不能通信。虚拟网卡不能和物理网卡通讯,导致了VM不能访问外网,但通过Host Virtual Adapter,VM们可以访问host,所以叫做 host only。

  另外,让VM们能够访问外网的方法:

  把host 配置成一个简单的NAT服务器:在Windows XP 下使用的方法:打开网络连接,右击物理网卡的连接,属性,高级,找到 Internet Connection Sharing(ICS),勾选,VMware默认装了两个网卡:vmnet1和。确定vmnet1共享物理网卡的IP,XP会弹出一个对话框,提示再用共享文件--使用ICS后,不能在局域网里共享文件---系统会将vmnet1上的 Host Virtual Adapter的IP设为 192.168.0.1,未提供DHCP,将VM的IP静态地设为192.168.0.x,网关设成Host Virtual Adapter(192.168.0.1),VM们的DNS也要设置成静态的,最好设置成宿主机的DNS。

图片点击可在新窗口打开查看

  3、NAT

  增加一项NAT服务,而这个NAT服务并不连接 Host Virtual Adapter与物理网卡, 它相当于又虚拟出来一个网卡--默认情况下,这个未命名的网卡插到mnet8的交换机的第二个插槽上。VMware虚拟机配置的网络号192.168.221.0,那么这个无名网卡就是192.168.221.2,而Host Virtual Adapter是192.168.221.1,你的VM们的网络连接的配置要设成自动获取IP和DNS,这是因为这个NAT服务还提供了DHCP服务,DHCP服务除了给VM们提供IP外,还可以给它们提供DNS服务器的IP。NAT方式中,Host Virtual Adapter并没有提供特殊的作用,Host Virtual Adapter在各种配置中都起了一个相同的作用,就是与主机进行通信。

图片点击可在新窗口打开查看

  4、虚拟机应用程序的运行:

  这个涉及到虚拟机的硬盘、内存和CPU,由于虚拟机是一个“特殊”的应用程序,本身就运行在物理机的抽象层上,除硬盘的访问方式/速度完全一致外,VM访问CPU和内存、网络这几大块,都是离不开宿主机的分配和影响的,特别是在性能测试中,多个因素的综合影响,会导致资源的争用,而无法具体分析在哪一个环节出现了瓶颈:如访问数据库或是中间件,只知道反应缓慢,请求超时,而无法确实是因为CPU的处理速度跟不上还是因为网络拥塞导致,抑或是内存紧张而调度失败,在VM中宿主机的动态对VM这组进程的调整,更是无法掌控和预测的。

  由此,可以看到,确保性能测试能顺利有效的进行,选择物理机的实体测试,可以宿主机对其上运行VM的干扰及影响,提升性能测试的有效性。

2、Host only

  第3种的NAT方式实际上是在这种方式上加了一个功能而已(增加一项NAT服务)。host only 用的是vmnet1,它包括两个组件,一个虚拟的网卡(Host Virtual Adapter),一个网拟的交换机(Virtual Switch),虚拟的网卡自动连到这个交换机上。Host Virtual Adapter和各个虚拟机的网卡一起已经组成了一个局域网,而且Host Virtual Adapter所在的宿主机还有一个网卡(物理网卡)连接着外网—不过这个宿主机上的两个网卡间不能通信。虚拟网卡不能和物理网卡通讯,导致了VM不能访问外网,但通过Host Virtual Adapter,VM们可以访问host,所以叫做 host only。

  另外,让VM们能够访问外网的方法:

  把host 配置成一个简单的NAT服务器:在Windows XP 下使用的方法:打开网络连接,右击物理网卡的连接,属性,高级,找到 Internet Connection Sharing(ICS),勾选,VMware默认装了两个网卡:vmnet1和。确定vmnet1共享物理网卡的IP,XP会弹出一个对话框,提示再用共享文件--使用ICS后,不能在局域网里共享文件---系统会将vmnet1上的 Host Virtual Adapter的IP设为 192.168.0.1,未提供DHCP,将VM的IP静态地设为192.168.0.x,网关设成Host Virtual Adapter(192.168.0.1),VM们的DNS也要设置成静态的,最好设置成宿主机的DNS。

图片点击可在新窗口打开查看

  3、NAT

  增加一项NAT服务,而这个NAT服务并不连接 Host Virtual Adapter与物理网卡, 它相当于又虚拟出来一个网卡--默认情况下,这个未命名的网卡插到mnet8的交换机的第二个插槽上。VMware虚拟机配置的网络号192.168.221.0,那么这个无名网卡就是192.168.221.2,而Host Virtual Adapter是192.168.221.1,你的VM们的网络连接的配置要设成自动获取IP和DNS,这是因为这个NAT服务还提供了DHCP服务,DHCP服务除了给VM们提供IP外,还可以给它们提供DNS服务器的IP。NAT方式中,Host Virtual Adapter并没有提供特殊的作用,Host Virtual Adapter在各种配置中都起了一个相同的作用,就是与主机进行通信。

图片点击可在新窗口打开查看

  4、虚拟机应用程序的运行:

  这个涉及到虚拟机的硬盘、内存和CPU,由于虚拟机是一个“特殊”的应用程序,本身就运行在物理机的抽象层上,除硬盘的访问方式/速度完全一致外,VM访问CPU和内存、网络这几大块,都是离不开宿主机的分配和影响的,特别是在性能测试中,多个因素的综合影响,会导致资源的争用,而无法具体分析在哪一个环节出现了瓶颈:如访问数据库或是中间件,只知道反应缓慢,请求超时,而无法确实是因为CPU的处理速度跟不上还是因为网络拥塞导致,抑或是内存紧张而调度失败,在VM中宿主机的动态对VM这组进程的调整,更是无法掌控和预测的。

  由此,可以看到,确保性能测试能顺利有效的进行,选择物理机的实体测试,可以宿主机对其上运行VM的干扰及影响,提升性能测试的有效性。


### 物理机虚拟机区别 物理机是指实际存在的计算机设备,拥有独立的硬件资源(如 CPU、内存、存储等),可以直接在其上安装操作系统并运行应用程序。而虚拟机则是通过虚拟化软件模拟出来的计算环境,它依赖于底层物理主机提供的硬件资源来创建多个逻辑上的独立机器。 #### 区别总结 - **架构层面**: 物理机直接基于真实的硬件构建[^2],所有的操作都发生在实体设备之上;相比之下,虚拟机是在一台或多台物理服务器的基础上利用 Hypervisor 技术抽象出来的一组虚拟化的硬件资源集合[^1]。 - **性能表现**: 由于不存在额外的中间层开销,物理机能更高效地发挥其全部潜力[^2]。然而对于虚拟机来说,则会因为需要共享部分母体系统的处理能力而导致一定程度上的效能折损[^1]。 - **灵活性与扩展性**: 虚拟环境中更容易实现动态调整资源配置以及迁移实例等功能特性,这使得它们成为云计算服务中的核心组件之一。与此同时,虽然单个裸金属解决方案可能缺乏这种敏捷度,但它提供了更高的稳定性更低延迟的服务质量保障[^2]。 --- ### 各自的优点分析 #### 物理机的优势 - 更高的执行效率更好的实时响应速度,适合那些对时间敏感的应用场景; - 高可靠性,减少了因多租户模式下可能出现的安全隐患风险; - 对某些特定类型的负载(比如高性能数据库或者图形密集型工作流),能够提供更加优化的支持效果。 #### 虚拟机的主要益处 - 提供了极大的便利性用于测试不同的OS版本组合或者是隔离开发/生产环境之间的影响范围; - 可以轻松完成备份恢复流程,并且简化灾难恢复计划制定过程; - 改善数据中心利用率的同时降低了总体成本支出,因为它允许在同一套基础架构上面承载更多数量的工作负荷单位。 --- ### 缺点探讨 #### 关于物理机的一些局限因素 - 初始投资较大,维护费用高昂; - 当面临突发流量增长时难以迅速扩充容量规模; - 更新升级周期较长,涉及到更换整套硬部件的情况较多见[^2]。 #### 存在于虚拟机里的挑战事项 - 如前所述存在着一定的性能损失现象; - 如果管理不当的话可能会引发“VM Sprawl”,即过多未被有效监控使用的虚机关卡堆积起来造成混乱局面; - 安全防护边界相对模糊,一旦突破一层防线就有可能波及其他关联区域的数据资产安全状况[^1]。 ```python # 示例代码展示如何查看当前系统是否为虚拟机环境 (Python) import os def is_virtualized(): try: with open('/sys/hypervisor/type', 'r') as f: hypervisor_type = f.read().strip() return True if hypervisor_type != "" else False except FileNotFoundError: return False print(is_virtualized()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值