我正在努力寻找一种能够节省磁盘空间的解决方案,同时仍然可以轻松扩展单个机器.
从理论上讲,我只会为每台机器创建大磁盘并使用精简配置.每个磁盘都会根据需要增长.但是,似乎500 GB的ext3文件系统只有50 GB的数据和相当低的写入次数,但仍然很容易将磁盘映像增长到例如.随着时间的推移250 GB.或者也许我在这里做错了什么? (我很惊讶我在谷歌上找到的主题很少.顺便说一下,serverfault.com上甚至没有精简配置标签.)
目前我计划创建大型,精简配置的磁盘 – 但是它们上面有一个小的LVM卷.例如:500 GB磁盘上的100 GB卷.这样我就可以根据需要更轻松地增加LVM卷和文件系统大小,甚至可以在线增加.
现在提出实际问题:
有没有更好的方法来做到这一点? (即,在不停机的情况下根据需要增加数据大小.)
可能的方案包括:
>使用精简配置友好文件系统,试图一遍又一遍地占据相同的点,从而不会增加图像大小.
>找到一种简单的方法来回收分区上的可用空间(重新细化?)
>还有别的吗?
一个额外的问题:如果我按照我当前的计划,你会建议在磁盘上创建分区(pvcreate / dev / sdX1 vs pvcreate / dev / sdX)?我认为使用没有分区的原始磁盘会违反惯例,但如果需要的话,它会使磁盘增长更容易一些.这只是一个品味问题,对吧?
解决方法
另一个选择是创建足够大小的VMDK文件来处理当前使用情况和预期的增长峰值,并在应用程序数据使用量增加时添加更多VMDK文件.新的VMDK文件可以实时添加到VM,您只需重新扫描(echo“ – – – ”> / sys / class / scsi_host / host?/ scan).您可以对新磁盘进行分区,将其添加到LVM并实时扩展文件系统.这样,您始终可以了解为每个VM分配了多少空间,并且您无法在guest虚拟机内意外地从VMFS中运行VMFS.
至于是否要分区,如果磁盘只是由LVM使用,我总是分区.对磁盘进行分区可防止在计算机启动时出现有关虚假分区表的任何警告,并清楚地表明已分配磁盘.这是一个巫术,但我也确保在64启动分区,以帮助确保分区和文件系统与底层存储块对齐.很难检测和分类,因为你通常没有什么东西可以轻易比较,但如果操作系统文件系统与底层存储没有正确对齐,那么你最终可能需要额外的IOPS来处理跨越块边界的请求.底层存储.