千家信息网

高效运行Linux虚拟机的六大技巧分别是什么

发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,这篇文章给大家介绍高效运行Linux虚拟机的六大技巧分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux在企业数据中心已经盛行多年。LAMP服务、Web服务器、代理
千家信息网最后更新 2025年01月25日高效运行Linux虚拟机的六大技巧分别是什么

这篇文章给大家介绍高效运行Linux虚拟机的六大技巧分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Linux在企业数据中心已经盛行多年。LAMP服务、Web服务器、代理服务器、防火墙和负载平衡器,只是Linux为基本操作系统提供的几个用例。在过去十年,随着易用性的提高和文档的完善,许多Linux发行版使用量明显增加。在增长阶段,我们还将虚拟化技术引入数据中心。与此同时,在运行Linux虚拟机时要留意一些注意事项。

逻辑卷管理

最近许多Linux的发行版都包含逻辑卷管理(LVM)这一技术,因为它属于磁盘和分区管理,允许管理员执行大量的任务。一些分段特性——扩展或跨多个磁盘分段数据——在虚拟化的世界里可能不太普遍,用户通常是将数据存储在同一存储区域网络或数据存储区。除了这些,LVM还提供其他有趣的功能。通过启用LVM,管理员可以扩展网络文件系统,在工作中扩展不同的分区和文件系统,同时保持文件系统在线和可访问。根据严格的合规要求,LVM允许我们在没有调用vSphere所带功能的情况下执行基于卷的快照用于备份和恢复。

我的建议是如果在工作负载下,你有严格的可用性策略并利用在线调整功能,就要将LVM与虚拟机分区。如果你不需要大量的正常运行时间或不打算安装Linux在单独的分区运行,LVM的复杂性将远远大于好处,最终禁用LVM。

分区选项

默认安装的Linux通常提示用户仅仅使用一个分区的所有文件。在某些情况下这样做没错,但当你试着调整和改善虚拟机安全性和性能时,每个文件有单独的分区如/tmp、/var、/home、/usr,这样做更有意义——特别是如果你想要每个分区有不同的安装选项。通过利用/etc/fstab文件,可以在相应的行指定适用于不同分区的安装选项,如下所示:

UUID=0aef28b9-3d11-4ab4-a0d4-d53d7b4d3aa4 /tmp ext4 defaults,noexec 1 2

例如Web服务器,一个最常见的用例为Linux虚拟机,我们很快就会发现一些"默认"安装选项最终破坏安全以及绩效计划。

Noatime/atime/relatime:这些安装选项决定如何处理包含在分区文件上的时间戳。在旧的Linux发行版中,默认是"一次",这意味着每读写一次,操作系统会为文件元数据写一个时间戳——是的,仅仅读调用次数。一直使用对外提供文件的Web服务器,你可以想象这个过程的开销。通过指定存放Web服务器数据分区上的"noatime",你可以不更新访问时间,减轻服务器的开销。新发行版默认选项是"relatime",它的功能很强大,如果修改时间更新,只更新访问时间。

Noexec/exec:在给定的分区禁用或启用二进制文件执行。对于Web服务器的例子而言,用"noexec"安装/tmp分区的意义重大。事实上,许多硬化指南建议使用这个选项来提高安全性。

用户更改访问时间参数时必须谨慎。一些应用程序,比如邮件相关的功能,需要一个完整的"一次"安装选项。在Web服务器的例子中,只要安全指导方针允许它访问,可以用"noatime"安装Web服务器数据。就noexec而言,明智地使用这个选项,很多自动安装程序和安装包就解压到/tmp并从那儿开始执行。它很容易打开和关闭,但我至少可以为/tmp添加noexec。

VMXNET3和PVSCSI

很长一段时间,大家都推荐在虚拟机中利用VMXNET3网络适配器和超虚拟化磁盘适配器。在基于Windows系统的虚拟机,我们可以仅仅指定这些还有利用VMware工具自动安装的驱动。利用这个硬件,Linux带来了一些挑战。首先,新版的Linux发行版通常有自己的VMXNET3适配器和驱动程序,即使安装了VMware工具,也将它们作为默认驱动程序。

旧的Linux发行版可能包含一个过时的VMXNET3驱动版本,可能不会为你提供包含在VMware工具版本的完整特性集。VMware的KB2020567概述如何在VMXNET驱动启用某些特性。如果你想在VMware工具安装VMXNET3驱动,可以在VMware工具安装时指定以下选项:

./vmware-install.pl –clobber-kernel-modules=vmxnet3

低成本的CPU想要获得一些额外的吞吐量,超虚拟化SCSI适配器是一个不错的方式。做出这个选择之前一定要检查所支持的操作系统列表,以确保超虚拟化SCSI适配器支持内核或分布。

如果可能的话,我建议管理员使用VMXNET3和PVSCSI。如果使用一个旧的内核,就安装VMware工具VMXNET3版本。如果你使用一个更新的内核,在分布中使用本地Linux驱动程序。

内存管理

Linux操作系统不断将存储页面从物理内存页移动到本地交换分区,这是由设计决定的。事实上,VMware利用内存管理功能在做同样的事。但是Linux内存管理的行为有点不同,即使物理内存——目前虚拟内存可用,也会移动内存页面。为了减少Linux虚拟机内部交换活动,我们可以调整一个"swapiness"值。更高的值表示更多的运动,而较低的值表示内存不会移动。要调整这个值,只需在/etc/sysctl.conf 添加"Vm.swappiness=##",重启后将"##"替换为你想要的值。

我喜欢将这个值替换成一个低于默认值60的数字。同时使用操作系统和vSphere管理你的内存交换是没有意义的。而且,这取决于应用程序,但我通常设置这个值为15至20。

I/O调度器

ESXi在管理内存方面作用很大,当它属于I/O调度器并写入磁盘时,它又呈现另一种状态。此外,Linux操作系统内部重复一些这方面的功能。2.6的内核,大多数发行版已经利用Completely Fair Queuing作为默认的I/O调度器。其他可用的是NOOP,Anticipatory和Deadline。VMware只解释了如何改变这个值,还有你为什么想要更改,调度两次I/O是没有意义的。简而言之,通过附加机器转换到grub内核条目,使用Linux内核的默认I/O调度器可以进行切换。

不需要先安排操作系统再安排到管理程序。我建议使用NOOP I/O调度器,因为它没有优化磁盘I/O,并允许vSphere全权管理。

删除未使用的硬件并禁用不必要的服务

在过去的一年里,你有多少次在虚拟机中使用虚拟软盘和内部的电脑扬声器呢?如果你不打算使用这些设备,就把将它们拉入黑名单。删除软盘的命令如下:

echo "blacklist floppy" | tee /etc/modprobe.d/blacklist-floppy.conf rmmod floppy update-initramfs -u

也没有必要纠结未使用的硬件。如果你还在使用,不妨禁用任何虚拟控制台。这可以在/etc/inittab中通过如下操作实现:

1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2#3:23:respawn:/sbin/getty 38400 tty3#4:23:respawn:/sbin/getty 38400 tty4#5:23:respawn:/sbin/getty 38400 tty5#6:23:respawn:/sbin/getty 38400 tty6

我建议你卸掉软盘。请记住,你还必须删除虚拟机的硬件配置,并在虚拟机的BIOS禁用它。关于其他服务,你可以将它们列入黑名单,包括监视磁盘阵列配置(mptctl),pcspker,snd_pcm,snd_page_alloc,snd_timer,snd,snd_soundcore,coretemp,parport and parport_pc。

将这些服务拉入黑名单之前,你要确保没有使用它们。同时,我总会开启几个可能用到的虚拟控制台,但开启六个就有点多了。

这是一些运行Linux虚拟机的注意事项。考虑到性能收益,每个人应视情况而定。做出一些细微的调整,你可能会看到更多性能方面的提升和一些退化的性能。像往常一样,更改之前要在实验室环境中进行测试。技术是不断变化的,所以通过提前测试可以达到效果。

关于高效运行Linux虚拟机的六大技巧分别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

服务 管理 系统 内存 文件 服务器 数据 时间 操作系统 功能 程序 驱动 运行 内核 工具 磁盘 发行 调度 建议 适配器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 云服务器哪家好 帝王宝盒服务器异常 网络安全审查查什么 买的远程服务器安全吗 网络安全属于哪个国家的 长度为4的数据库字符串 网络安全和信息化工作典型人才 机考网络技术应用考什么 简述网络技术的社会作用思修 鄄城网络安全副大队长 判断服务器系统 五中全会公报解读网络安全 串口联网服务器哪家好 .net 缓存数据库监听 网络技术与网络与通信区别 达内教育网络安全培训 重大节日网络安全报备总结 idea导出整个数据库 戴尔r540服务器报价 数据中心数据库服务管理系统 数据库时间字段转化为年月日查询 宽带链路不通或服务器无反应 数据库如何删除凭证 网络安全国家一流学科 服务端软件开发工程师 内蒙古创新网络技术服务怎么样 汕头信息软件开发市场价 通讯服务器3.3v待机电源 数据库三个删除的区别 东北财经大学网络安全中心
0