IT@Intel Data Center Blog

Previous Next
6

As this is my first blog on this forum, I'd like to introduce myself. My name is Bill Sunderland and I have been working at Intel for 12 years primarily working on Server Hardware Engineering and the last three years of which I have focused my efforts on Program Managing the Virtualization Engineering release for Intel IT. I have recently published a WP demonstrating the methodology used as described below.

Intel IT planned, engineered, and has begun deploying a virtualized business-computing production environment at several data centers, a rollout that will continue through 2008. Our initiative has already confirmed anticipated virtualization benefits such as faster, more automated deployment. We are initially consolidating older servers running applications that are not mission-critical; we see opportunities to achieve 16:1 consolidation ratios.

Click here to read the WP: Implementing Virtualization in a Global Business-Computing Environment

I would be interested in hearing your experiences and/or questions regarding virtualizing IT environments!

Average User Rating
(0 ratings)


Add a comment Leave a comment on this blog post.
May 16, 2008 3:50 PM Reply Click to view Brently Davis's profile Brently Davis in response to: William W Fleming

I don't think you're out of place. Hopefully someone here can answer that question for you. I can't, however, I'm in agreement with you that we're not speaking the same speak.

Can anybody at Intel help William with his question? Bill?

Jun 19, 2008 5:01 PM Reply Click to view BillSunderland's profile BillSunderland in response to: Brently Davis

With regards to differing views on RAID: Yes, IT technical folks do differ in their views on which types of RAID to use, but they have differing requirements behind their decisions. Here's a good website that explains some of the different use cases for both software and hardware RAID.
http://en.wikipedia.org/wiki/Redundant_array_of_independent_disks

"RAID — which stands for Redundant Array of Inexpensive Drives (as named by the inventor) or Redundant Array of Independent Disks (a name which later developed within the computing industry) — is a technology that employs the simultaneous use of two or more hard disk drives to achieve greater levels of performance, reliability, and/or larger data volume sizes.

The phrase "RAID" is an umbrella term for computer data storage schemes that can divide and replicate data among multiple hard disk drives. RAID's various designs all involve two key design goals: increased data reliability and increased input/output performance. When several physical disks are set up to use RAID technology, they are said to be in a RAID array. This array distributes data across several disks, but the array is seen by the computer user and operating system as one single disk. RAID can be set up to serve several different purposes, the most common of which are outlined below.

Operating system based ("software RAID")
Software implementations are now provided by many operating systems. A software layer sits above the (generally block-based) disk device drivers and provides an abstraction layer between the logical drives (RAIDs) and physical drives. Most common levels are RAID 0 (striping across multiple drives for increased space and performance) and RAID 1 (mirroring two drives), followed by RAID 1+0, RAID 0+1, and RAID 5 (data striping with parity) are supported.

Microsoft's server operating systems support 3 RAID levels; RAID 0, RAID 1, and RAID 5. Some of the Microsoft desktop operating systems support RAID such as Windows XP Professional which supports RAID level 0 in addition to spanning multiple disks but only if using dynamic disks and volumes.

Apple's Mac OS X Server supports RAID 0, RAID 1, and RAID 1+0.[2]

The software must run on a host server attached to storage, and server's processor must dedicate processing time to run the RAID software. This is negligible for RAID 0 and RAID 1, but may be significant for more complex parity-based schemes. Furthermore all the busses between the processor and the disk controller must carry the extra data required by RAID which may cause congestion.

Another concern with operating system-based RAID is the boot process, it can be difficult or impossible to set up the boot process such that it can failover to another drive if the usual boot drive fails and therefore such systems can require manual intervention to make the machine bootable again after a failure. Finally operating system-based RAID usually uses formats specific to the operating system in question so it cannot generally be used for partitions that are shared between operating systems as part of a multi-boot setup.

Most operating system-based implementations allow RAIDs to be created from partitions rather than entire physical drives. For instance, an administrator could divide an odd number of disks into two partitions per disk, mirror partitions across disks and stripe a volume across the mirrored partitions to emulate a RAID 1E configuration. Using partitions in this way also allows mixing reliability levels on the same set of disks. For example, one could have a very robust RAID-1 partition for important files, and a less robust RAID-5 or RAID-0 partition for less important data. (Some high-end hardware controllers offer similar features, e.g. Intel Matrix RAID.) Using two partitions on the same drive in the same RAID is, however, dangerous. If, for example, a RAID 5 array is composed of four drives 250 + 250 + 250 + 500 GB, with the 500-GB drive split into two 250 GB partitions, a failure of this drive will remove two partitions from the array, causing all of the data held on it to be lost.

edit Hardware-based
Hardware RAID controllers use different, proprietary disk layouts, so it is not usually possible to span controllers from different manufacturers. They do not require processor resources, the BIOS can boot from them, and tighter integration with the device driver may offer better error handling.

A hardware implementation of RAID requires at least a special-purpose RAID controller. On a desktop system this may be a PCI expansion card, PCI-Express Expansion Card or built into the motherboard. Controllers supporting most types of drive may be used - IDE/ATA, SATA, SCSI, SSA, Fibre Channel, sometimes even a combination. The controller and disks may be in a stand-alone disk enclosure, rather than inside a computer. The enclosure may be directly attached to a computer, or connected via SAN. The controller hardware handles the management of the drives, and performs any parity calculations required by the chosen RAID level.

Most hardware implementations provide a read/write cache which, depending on the I/O workload, will improve performance. In most systems write cache may be non-volatile (i.e. battery-protected), so pending writes are not lost on a power failure.

Hardware implementations provide guaranteed performance, add no overhead to the local CPU complex and can support many operating systems, as the controller simply presents a logical disk to the operating system.

Hardware implementations also typically support hot swapping, allowing failed drives to be replaced while the system is running."

With regards to core segmentation, i'm not sure I follow the intent of the question. If you can describe some more, perhaps I can help answer.

Thanks,
Bill Sunderland