近来碰到好几例的低端服务器上多块1T SATA硬盘做阵列的问题,说一下这方面的问题。
首先不管是HP还是LENOVO低端服务器的阵列卡,它们最大支持2T的逻辑盘的容量,并且NTFS分区格式也只支持最大2T和逻辑盘的容量。什么意思呢?比方说,我3块300G SATA硬盘做成RAID5,在低端的服务器里只能是一个逻辑盘,做不了多个逻辑盘。而这一点在HP 3、5系列以上的服务器用SMARTSTART 导航安装时可以做成多个逻辑盘(当然F8 配阵列做不到)。此时3 块 300G SATA硬盘做RAID5,总的可使用的容量是600G,我们可以分别做成200G、200G、200G三个不同的逻辑盘,这样在WINDOWS磁盘管理里看到的是从上到下磁盘0、磁盘1、磁盘2三块硬盘(如图001示意)。而NTFS 文件格式最大2T的磁盘容量限制,这是NTFS文件格式本身的限制,这也是没法改变的。
正是因为低端的服务器不能在一个阵列里做成多个逻辑盘,所以我们在给客户做方案时特别注意。前几天业务员出一台HP ML150G5服务器,客户是4块1T 容量的SATA硬盘,开始做了RAID 5,一个逻辑盘。在系统里看到的总RAID容量是 2700多G,能使用的只是2048G(2T),后面的是用不了的,后面那部分磁盘分区点右键,“新建磁盘分区”是虚的,用不了(如图002示意)。我们后来给客户解决的方案是,做成两个阵列。一块硬盘做RIAD 0,另三个硬盘做成RIAD5。三个 1T硬盘做RAID5,2T的容量,刚好合适。前面一块做RAID 0的硬盘用来安装系统,不放数据,硬盘坏了,换一个盘重装系统就行了。这样客户也接受了。
还有就是前段时间业务员出了一台HP ML180G5服务器,上了8块1T SATA 硬盘。我们后来的解决方案是做了两个RAID 5,前三块做一个RAID5,后面五块做成一个RAID5。前面三块2T容量肯定没问题,后面5块1 T做RAID 5,阵列容量是3725G,可以用的是前面的2048G,后面的1677G也是不能用(如图002)。怎么办?此时我们可以利用WINDOWS 2003自带的工具,将磁盘转换成GPT磁盘,后面的1677G可以利用起来了(如图003),当然总的算来客户损失了两块盘,但也没办法了。
特说明的是,要转成GPT硬盘,如果已经在此逻辑盘上安装了WINDOWS 2003、2008的是转不了GPT磁盘的,因为在已经装了系统的逻辑盘上点右键根本没这个选项。这也是为什么要做两个阵列的原因,如果能转的话,做一下阵列就可以了。
前面说的4块1T SATA硬盘,我们一块硬盘做了RIAD 0,后面三块做成RIAD5。那5 块1T硬盘块怎么办呢,这要看客户的需求了,如果客户同意,两块1T做成RAID 1,后面三块做在RAID 5,这样总的来说损失的是两块盘的容量。不同意的话只能是一块做RAID 0,后面4块做做RAID 5,然后再把后面的逻辑盘转成GPT磁盘全部利用上。如果上6块、7块也是如此的解决方案。刚才说的8块1T硬盘,其实两块做RAID 1装系统,后面的6块做RAID5其实也是一个正常的解决方案。这些跟客户解释清楚,最终看客户的需求了。  低端服务器上大容量SATA硬盘的RAID问题 低端服务器上大容量SATA硬盘的RAID问题 低端服务器上大容量SATA硬盘的RAID问题
附录:关于 GPT
1. 什么是 GPT 磁盘?
GUID 分区表 (GPT) 是作为 Extensible Firmware Interface (EFI) 计划的一部分引入的。相对于以往 PC 普遍使用的主引导记录 (MBR) 分区方案,GPT 提供了更加灵活的磁盘分区机制。
分区指物理或逻辑磁盘上彼此连接的存储空间,但提供功能时就像物理上分隔的磁盘一样。对于系统固件和已安装的操作系统来说,分区是可见的。操作系统启动之前,对分区的访问由系统固件控制,操作系统启动后则由操作系统控制。
2. MBR 分区有哪些缺陷?
MBR 磁盘只支持 4 个分区表项。如果想获得更多分区,需要次级结构,即扩展分区。扩展分区能够再次被分成一个或多个逻辑磁盘。虽然该信息与硬件(磁盘驱动程序或 RAID 控制器)的物理特性不再有任何关系,但按照惯例,Windows 仍然在基于报告的几何图形柱面界限上创建 MBR 磁盘和逻辑驱动器。对于 Windows Vista 和 Windows Server 2008,由于硬件提供更好的真实缓存和物理对齐提示,所以能够选择更有逻辑的界限。由于驱动器自己存储分区信息,所以操作系统不依赖于对齐方式。MBR 分区规则很复杂并且规定不明确。例如,柱面对齐意味着每个分区在长度上至少要为一个柱面吗?MBR 分区由一个 2字节字段标识,而且需要协调以避免冲突。IBM 最初提供了这种协调方案,直到今天还没有权威的分区标识符列表。
另一个常用的实践是使用分区的或“隐藏”扇区保存特定信息。该实践没有正式文件并且会导致难以调试的系统问题。这些年来,已经对公众发布了很多供应商独有的实现和工具,这使支持变得很困难。
3. 为什么需要 GPT?
GPT 磁盘能够实现巨大的容量。GPT 磁盘上的分区数量不受临时方案(比如 MBR Extended Boot Record (EBR) 定义的容器分区)的限制。
GPT 磁盘分区定义明确并能够完全自动识别。平台操作的关键数据被放置在分区中而不是未分区或“隐藏”扇区中。GPT 磁盘使用原始的、备份的分区表存储冗余和 CRC32 字段,以提高分区数据结构的完整性。GPT 分区格式使用版本号和容量字段支持进一步的扩展。
每个 GPT 分区都有独特的标识 GUID 和分区内容类型,所以不需要协调即可防止分区标识符冲突。每个 GPT 分区都有一个 36 字符的 Unicode 名称,这意味着任何软件都能够呈现一个人工可读的分区名称,而无需了解分区的其他内容。