Hyper-V Linux VM Disk扩容

本文介绍了在Hyper-V环境下,如何对Linux虚拟机进行磁盘扩容,包括VHD硬盘扩容、使用parted增大扩展分区、创建和扩展LVM逻辑分区以及增大文件系统容量的详细步骤。针对LVM操作可能遇到的问题,提供了实用建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自从使用虚拟机以后,经常会遇到虚拟机硬盘不够的情况,本文在借鉴其他文章基础上,修正一些不完善的步骤,本着利己利人的思想,在此整理一下全部步骤,并就LVM容易出错的地方给予一些建议。

在此之前,我们先普及一下硬盘扩容为什么要做那么多操作?

这个问题和计算机操作系统的分层管理有关。我们知道硬盘是最底层的硬件,在这之上,我们可以创建分区,什么启动分区,逻辑分区之类。然后才是在分区上面创建文件系统。最终用户的操作都是在文件系统上面。好了,问题来了,当我们加一盘硬盘后或是硬盘扩容,只是增大了硬盘的容量。在我们没有相应地增加分区,增大文件系统容量之前,Linux是不会让我们利用新的容量的。

就这一点来看,和windows相比,Linux还是有不少的改进空间,虽然Linux也有分区工具,但明显没windows好用。

既然用Linux,说明你想提高动手能力,那就开始练习吧!希望下面能帮到你。

硬件环境

宿主机:Windows 10,Hyper-V

虚拟机:Ubuntu16.04,默认使用LVM管理所有扩展分区

问题:Ubuntu安装时,只设定了16G硬盘,后来发现跑docker不够,想扩大到32G。

VHD硬盘扩容

Hyper-V的vhd可以很方便的扩容,见下图。其他虚拟机用户可以跳过这一步。注意:扩容不是live操作,VM需要关机,硬盘扩容后再重启VM。

经过扩容,重启Ubuntu,用fdisk -l查看,硬盘容量已经增大:

Disk /dev/sda: 32 GiB, 34359738368 bytes, 67108864 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Linux虚拟机增大扩展分区(parted)

把新增加的容量添加到扩展分区里面,这里用命令行工具parted来介绍如何增大分区,运行parted /dev/sda,进入交互式模式,

/dev/sda2       1001470 67108863 66107394 31.5G  5 Extended
/dev/sda5       1001472 31455231 30453760 14.5G 8e Linux LVM

Command (m for help): n
All space for primary partitions is in use.
Adding logical partition 6
First sector (31457280-67108863, default 31457280):
Last sector, +sectors or +size{K,M,G,T,P} (31457280-67108863, default 67108863):                                                                                            

Created a new partition 6 of type 'Linux' and of size 17 GiB.

为了用LVM管理,我们把刚添加的逻辑分区改为Linux LVM类型。输入t,选择默认分区号,列出所有类型,输入8e

Command (m for help): t
Partition number (1,2,5,6, default 6): 6
Partition type (type L to list all types): L

 0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris
 1  FAT12           27  Hidden NTF
### Hyper-V与VM虚拟机性能对比分析 在虚拟化技术领域,Hyper-V和VMware是两种广泛使用的虚拟化解决方案。以下是对两者的性能差异进行详细分析。 #### 1. CPU性能 Hyper-V直接利用主机的CPU资源,并通过其内置的虚拟化扩展(如Intel VT-x或AMD-V)来优化性能[^1]。相比之下,VMware也支持类似的硬件辅助虚拟化技术,但在某些场景下可能需要额外的抽象层,这可能导致轻微的性能损失。总体而言,两者在CPU性能上的差异通常较小,但Hyper-V在特定情况下可能表现稍优。 #### 2. 内存管理 Hyper-V采用动态内存分配技术,能够根据虚拟机的实际需求动态调整内存使用[^2]。这种机制有助于提高资源利用率并减少浪费。VMware同样支持动态内存分配,但其内存压缩和交换技术(如 ballooning 和 memory compression)可能在高负载环境下表现出更优的性能。 #### 3. 网络性能 在网络性能方面,Hyper-V提供了合成网络适配器以提升数据传输效率[^3]。然而,VMware的vSphere Distributed Switch(DVS)提供了更高级的功能,例如网络流量整形和QoS控制,这使得VMware在复杂网络环境中可能表现更好。 #### 4. 存储性能 Hyper-V支持多种存储选项,包括SMB 3.0共享文件夹和iSCSI目标设备,这些技术可以显著提高存储性能[^4]。VMware则以其强大的vSAN技术著称,该技术允许将本地存储资源整合为分布式存储池,从而提供更高的性能和可用性。 #### 5. 虚拟机密度 Hyper-V在单台物理服务器上支持的虚拟机数量较高,尤其是在最新版本中,其可扩展性和性能得到了进一步增强[^5]。VMware同样支持高密度部署,但由于其成熟的管理和优化工具,可能在大规模虚拟化环境中更具优势。 #### 6. 性能监控与调优 Hyper-V提供了PowerShell cmdlets和其他工具来简化性能监控和调优过程[^6]。VMware则通过vCenter Server和ESXi命令行工具提供了更全面的管理功能,这有助于更深入地分析和优化虚拟机性能。 ```python # 示例代码:使用PowerShell监控Hyper-V虚拟机性能 Get-VM | Select-Object Name, State, CPUUsage, MemoryAssigned ``` ```bash # 示例代码:使用esxtop监控VMware虚拟机性能 esxtop -b -d 5 -n 10 > vmware_performance.csv ``` #### 结论 Hyper-V和VMware在性能方面各有优劣。Hyper-V通常在成本效益和集成度方面表现突出,而VMware则以其成熟的企业级功能和高性能优化见长。选择哪种方案取决于具体的工作负载、预算限制以及管理需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值