随着大数据时代的来临,磁盘介质越来越廉价,海量存储概念已经深入人心,以前我们接触到的存储容量可能几10G,几100G,最多几个T,现在动不动就是几10T,上100T,甚至PB级容量,如此大的存储容量对于运维人员来说也带来了很多新的挑战,如何根据业务需求选购合适的阵列柜,大容量服务器,选择什么样的RAID,如何对磁盘空间进行规划,选择什么样的分区表,选择什么样的文件系统,选择合适的格式化工具都非常重要,因为我们会发现,管理小容量存储方式对于海量存储已经不再适用,运维人员面临新的技术挑战。这里面涉及到很多知识,本文从实践中进行总结,讲解其中的一小部(Linux)。
一、分区表的选择
简单的理解就是在磁盘的某个地方存放着一张表,表里包含着磁盘分区的一些关键信息。
MBR与GPT应该说是最常见的分区表了,如果磁盘使用的是MBR(Main Boot Recored),则意味着最大容量不能超过2T,且分区限制为4个主分区,或者是3个主分区和一个扩展分区。也就是说MBR分区表是不能支持海量存储的,如果是海量存储GPT的分区表就是我们的不二选择,GPT的分区表据说最大可以支持18EB,1EB=1024TB,且每个磁盘最多可以支持128个分区。相对MBR来说基本是没什么限制。
二、文件系统的选择
在Linux系统中过去常用的文件系统ext2,ext3在大容量磁盘中也就用不上了,现在要考虑的文件系统是ext4,xfs等,其中ext4最大支持16TB,如果超过16TB就使用xfs吧
三、分区工具选择
以前我们都习惯使用fdisk工具来分区,大容量的磁盘就不适用了,不信的话可以fdisk -l列表看下,Linux也自带了大容量磁盘的分区管理工具parted
下面是parted工具的使用:
1、查看gpt磁盘分区
parted /dev/sdb print
2、选择一个设备
parted
select /dev/sdb
3、创建gpt分区表
mklabel gpt
4、创建分区
mkpart primary 0 5T
mkpart primary 5T 10T
以上分区会出现性能警告,可以使用百分比得到更好的性能,消除性能警告:
"The resulting partition is not properly aligned for best performance."
mkpart primary 0% 100%
5、格式化分区
退出parted
如果容量小于16T使用ext4文件系统格式化:
mkfs.ext4 -T largefile /dev/sdb1
这里为了加快格式化的速度使用了-T这个参数
6、挂载到目录
mount /dev/sdb1 /opt
7、编辑fstab
目的是重启操作系统自动加载,省略
熟悉以上知识,可以让你在处理大容量磁盘时少走很多弯路,希望对你有用