Typically, a computer system requires local storage for system and boot files required by the operating systems (although Windows Server 2003 supports Storage Area Network [SAN] configurations whereby all disks are external). The boot partition (hosting the operating system) needs to be able to accommodate profiles of logged-on users, paging files, memory dumps, and installed programs. Make sure you set partitions large enough, especially because boot and system partitions, after being created, cannot be extended without third-party tools such as Partition Magic.
Note This chapter uses the terms boot partition and system partition, a counterintuitive naming convention used by Microsoft for partitions containing boot files (system partition) and system files (boot partition). Contrary to what you might expect, a Windows-based computer boots from the system partition and stores its operating system files on a boot partition. These terms can refer to the same partition or two separate ones (separate boot and system partitions are mandatory on Itanium-based Windows Server 2003 installations, covered later in this chapter, and optional on Intel 32-bit computers).
Conversely, ensure that your computer's BIOS supports Interrupt 13 Extensions if you plan to make your boot or system partition larger than 8GB.
Note One of the limitations of older versions of BIOS (Basic Input/Output System) was the way hard-disk access was handled, by using the BIOS internal code invoked through Interrupt 13. The addressing implemented in the code allowed access to partitions no larger than 8.4GB, which at the time of its inception (early 1980s) was more than anyone expected to ever need. Earlier versions of Windows (up to Windows NT 4.0) relied on this feature to read the system files necessary to boot before the operating system was fully loaded. This is why the size of boot and system partitions was limited in those systems to about 8GB. The problem surfaced when one of the files needed during the boot ended up (typically through fragmentation, especially after service pack updates, on systems with high disk space utilization) beyond the boundary reachable through BIOS. In the late 1990s, computer manufacturers developed extensions to the BIOS code handling Interrupt 13 that allowed it to work with much larger partitions (up to 9TB). The newer operating systems, starting with Windows 98 and Windows 2000, can take advantage of the Interrupt 13 BIOS extensions, but you need to make sure that your computer's BIOS has this capability (you might be able to get updated BIOS from its manufacturer). Otherwise, ensure that your system and boot partitions are smaller than 8GB.
Do the disks storing boot and system volumes need to be particularly fast? Not necessarily, because access to boot files is needed only at startup, and more frequently used operating system files are cached in the server's memory. However, you should ensure that the paging file resides on a fast volume (you might need to move it from its default location) because this will significantly improve the server's responsiveness.
To accommodate these varying requirements, separate the operating system from the data. You can accomplish this by first grouping disks into arrays based on their purpose and then attaching each group to dedicated channels or disk controllers. Depending on your budget, you may be in a position to get faster disks, use striping volumes, or combine both by striping volumes on faster disks.
Collect information on applications to be installed, type of data, and number of users accessing the volumes. When dealing with extremely demanding applications such as busy commercial Web sites or On-Line Transaction Processing (OLTP) database management systems, take into consideration disk-related hardware parameters such as the following:
♦ Access time. This is the time it takes for a hard disk to register a request and prepare to scan its surface.
♦ Seek time. This is the time it takes for a hard disk to find and assemble all the parts of a file.
♦ Transfer rate. This is the time it takes for a hard disk to transfer data on and off the disk.
Closely observe the rate of disk consumption and plan accordingly. Leave a generous margin and ensure that your design allows for easy expansion. Keep your space utilization below the 70 percent threshold, which not only enables you to prevent sudden "Out of space" messages, but also helps keep disks defragmented (in order for the built-in Disk Defragmenter to work efficiently, the disk should have at least 15 percent of total disk space available). Implement monitoring tools that will notify you when disk space utilization approaches the threshold defined by you.
If you find that the capacity of a single volume does not satisfy your disk space needs, you have the following options:
♦ Volumes can be spanned or extended (providing they are unformatted or formatted with NTFS and they are not system or boot volumes). Spanning refers to the process of chaining together areas of unallocated space residing on separate physical disks. Extending involves adding extra unallocated space to an already existing volume. Extending is typically done when a volume runs out of free space and at least one unpartitioned area remains on the disk. This remaining area can be added on to extend the volume capacity. Dynamic volumes can be extended using any area from the same or different physical disks, but basic volumes are limited to contiguous areas on the same disk. You will explore this topic in more detail later in the chapter.
♦ If you want to increase the speed of I/O operations, you can create striped volumes (known also as RA1D-0). Striped volumes, similar to spanned ones, are created using areas of unallocated space on multiple disks. What's different is the way data is written to the volume, which adds the requirement that striped areas be the same size. Another similarity between striped and spanned volumes is the lack of fault tolerance, meaning that the failure of any of the striped disks makes the entire volume inaccessible. If you want to add a level of fault tolerance (which is typically recommended), you can use striping with parity (RA1D-5). This type of configuration provides redundancy by storing additional parity information as part of the volume. Another type of fault-tolerant volume, a mirror (RA1D-1), creates an exact copy of the data, so it does not contribute in any way to increase available space (as a matter of fact, it wastes 50 percent of available space). Fault-tolerant solutions are discussed in the next section.
♦ You can enforce disk space quotas on a per-user basis. As shown later in the chapter, you can specify a maximum amount of space that can be used by each user, for each server volume.
♦ You can mount a volume onto an empty folder on another volume. This way, from the user's perspective, the available storage is increased by the free space on the mounted volume. This topic is covered in Chapter 26.
♦ You can redirect shared folders on one server to a shared volume or folder on other servers. This functionality is available with Distributed File System (DFS), presented in Chapter 26.
♦ You can compress data on volumes. Compression is also covered in Chapter 26.
♦ You can take advantage of HSM. With the Windows 2000 Remote Storage snap-in and RSS, you can automatically move older files from a local volume to removable, locally attached media, such as tapes and portable disks. Refer to Chapter 26 for details.
The preceding options are frequently combined (for example, disk quotas can be applied to a DFS residing on a RAID-5 volume).
Was this article helpful?