热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

VMware虚拟机优化十招技巧

虚拟机的性能优化可以通过各种方法来实现。本文介绍了十个常用的VMware虚拟机的优化方法,有需要的朋友可以看一下。

在VMware虚拟机(VMware Workstation或VMware Server)中我们可以同时运行多个Guest OS,当同时在同一Host OS中运行多台虚拟机时势必会严重影响到Host OS的运行效率和性能。那么我们如何对虚拟机进行优化以达到最佳的资源利用率呢?在本文中向大家介绍10种目前通行的做法。

1、增加内存

在我看来,增加内存对Host OS及Guest OS的性能都有本质上的提升,而相对于CPU和磁盘来说内存的成本是最廉价的。通过增加内存,我们可以分配更多的内存给每个虚拟机,以防止Host OS与Guest OS过多的数据和资源交换。

2、升级CPU

您的CPU需要能够应付和处理Host OS及多个Guest OS的运算任务,当然对于任何应用程序来说,一颗更快的CPU都将提供更高的运算速率。

3、升级磁盘

升级到更高速的磁盘转速可在很大程度上提高虚拟机性能,此外,当您的更换高速硬盘时也不妨考虑下RAID阵列以提高冗余和性能(取决于您选择的RAID类型)。

4、更改页面文件存放位置

Windows会自动保留一小部分硬盘空间用于存放pagefile.sys页面文件,当系统没有足够的物理内存时,虚拟内存的页面文件将被作为一个数据和代码的临时存放空间。通过将虚拟内存的存放位置放到非系统分区时,也可以提升Host OS的性能,同样也就达到了提升Guest OS性能的目的。

我们可通过如下步骤来更改页面文件存储位置:在桌面上右击“计算机”选择“属性”——点击“高级系统设置”——选择“高级”选项卡的“性能”项目中点击“设置”——选择“高级“选项卡。如下图:

5、将虚拟磁盘文件分布到多块物理硬盘上

无论何时,我们都可以将数据分布在多块不同的物理磁盘上以获取更高的磁盘I/O性能。当然,这种设计和思想同样也适用于VMware。例如您在环境中测试或运营SQL Server或Exchange Server,则可以将其应用程序、事务日志及数据库文件分别存放到3个不同的虚拟磁盘文件当中,然后再将这3个虚拟磁盘文件分布到3块不同的物理硬盘上,以获取更高的磁盘性能。或者,我们也可以对物理磁盘使用RAID以提升虚拟机磁盘文件读写的性能。

6、在VMware中禁用光驱

每当我们对虚拟机进行开机、登录和关机的时候,Windows和VMware都会尝试读取光驱是是否有光盘,这会在一定程度上影响到虚拟机的性能。特别是VMware会尝试读取Host OS的光驱中是否有光盘,这也会严重影响到操行效率,因此禁用虚拟机的CDROM也可以提升其性能。

我们可在VM -> Settings (或Ctrl-D)中取消Connected和Connect at Power-On这两个选中。如下图:

7、全屏模式操作虚拟机

当我们做某个测试时,大部分操作都是在虚拟机窗口中进行的,当我们以全屏模式在虚拟机中进行操作时,会获得更高的图形处理性能。要将VMware虚拟机切换到全屏模式,可以直接按下Ctrl – Alt – Enter键,要退出全屏模式请按Ctrl – Alt。

8、禁用视觉效果

在Windows中有一些通用的视觉效果,这些视觉效果让Windows看起来非常酷,各种界面的操作和过渡非常自然。然而在虚拟机当中,这些视觉效果就不太适用了。这些视觉效果需要采用过多的CPU和GPU来进行处理,这样势必会拖慢虚拟机对应用的处理和执行。因此,碎片建议大家在虚拟机当禁用“视觉效果”以达到稍许的性能提升。

在Windows中禁用视觉效果的通行操作步骤如下:右击“计算机”选择“属性”——点击“高级系统设置”——在“性能”区域中选择“设置”——在“视觉效果”选项卡中选择“调整为最佳性能”并“确认”。如下图:

最后碎片还建议您禁用虚拟机的屏保,因为实在是没啥必要……

9、整理虚拟机磁盘

同其它操作系统一样,在长时间运行之后磁盘文件会产生很多碎片,Guest OS也是如此。当我们在虚拟机中增加或删除文件时,随着时间的推移,虚拟磁盘也将会产生很多碎片。为了保持虚拟机的磁盘性能,碎片建议大家定期对虚拟机磁盘进行碎片整理。我个人比较推荐使用像Diskkeeper这样的整理工具,当然您也可以使用Windows自带的磁盘碎片整理程序。如下图:

请记住,虚拟机操作系统也需要像Host OS那样进行定期维护。

10、安装VMware Tools

在Windows或Linux虚拟机中安装完VMware Tools 后将会在很大程度上提升虚拟机的性能。首先,我们可以使用SVGA分辨率而不仅仅是标准VGA,这显然增强了虚拟机的图形及图像处理性能。其次,可实现鼠标在Host OS及Guest OS之间的同步,您不再需要使用Ctrl-Alt在Host OS及Guest OS之间切换鼠标,这使得鼠标的使用性能和效率也有提提升。最后,您可以在Host OS及Guest OS之间实现复制、剪切和粘贴操作。安装VMware Tools的步骤也非常简单,您只需要在VMware管理界面中点击VM -> Install VMware Tools即可。如下图:

总结

我们已经简要介绍了10种用于提升VMware Workstation和VMware Server性能的方法,其中有软件方面的优化方式也有针对硬件的加强和提升,通过这10种方法相信您已能根据需要随时并灵活的对虚拟机进行优化。


推荐阅读
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 近年来,大数据成为互联网世界的新宠儿,被列入阿里巴巴、谷歌等公司的战略规划中,也在政府报告中频繁提及。据《大数据人才报告》显示,目前全国大数据人才仅46万,未来3-5年将出现高达150万的人才缺口。根据领英报告,数据剖析人才供应指数最低,且跳槽速度最快。中国商业结合会数据剖析专业委员会统计显示,未来中国基础性数据剖析人才缺口将高达1400万。目前BAT企业中,60%以上的招聘职位都是针对大数据人才的。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
author-avatar
程橙屋04_kc275_938
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有