Storage, SMP Get Much Better in Linux

2.4 kernel's improvements, such as logical volume manager, add storage smarts, eWeek Labs finds.

The Linux 2.4 kernel is the first kernel the enterprise helped build, and it shows. Driven by the demands of enterprise customers, enterprise applications and intensive benchmarking (some of which was carried out by eWeek Labs), the Linux 2.4 kernel has far more of an enterprise focus than ever before.

In particular, storage manageability, capacity increases and SMP (symmetric multiprocessing) are the key areas where the new kernel takes dramatic strides beyond its 2.2 predecessor.

Whats still needed overall is a journaling file system (which is almost out: Linus Torvalds has added the Naming System Venture development groups journaling file system, ReiserFS, to the upcoming 2.4.1 kernel release); certified high-security versions of Linux; more support among enterprise management software vendors; greater directory integration and policy-based management to allow central administration of groups of machines at once; and more consistent, complete graphical system administration tools.

Extensive re-engineering has gone into the 2.4 kernel to remove kernel SMP bottlenecks, but we wont be able to reliably measure the effects of these changes until 2.4-based distributions ship. However, the storage and legroom improvements (primarily the removal of the 2GB file-size limit on Linuxs ext2 —or second extended—file system and support for 64GB of RAM on 32-bit Intel Corp. CPUs) are already easy to see.

Storage, and lots of it, is a defining characteristic of enterprise computing. The 2.4 kernel takes a big step forward in storage management by providing an LVM (logical volume manager) subsystem, similar to the LVM included in Hewlett-Packard Co.s HP-UX.

This code, developed by Sistina Software Inc., will let IT managers dynamically add disks to and delete disks from Linux storage pools without rebooting (also a new feature in Windows 2000), as well as create file system snapshots for backup.

We compiled the 2.4 kernel with the LVM extensions enabled and installed the kernel on a Red Hat Inc. Red Hat Linux 7.0 system to test them out. Using the LVM tools, we created a volume group of two drives, then placed a logical volume on this volume group and created a Linux ext2 file system on the logical volume. (Normally the file system would go directly on a single physical disk or RAID device.)

We then mounted the new file system and filled it with data; when it was full, we were able to extend the volume group by adding a new, empty drive. (This operation crashed with the 2.4 kernel; we had to use Linux kernel maintainer Alan Coxs ac4 patch plus an LVM patch posted to the Linux kernel mailing list to get it to work.)

We then resized the file system upward using Linuxs resize2fs utility. We did have to unmount the file system to resize it; a project called ext2resize offers online file system growth, but the projects authors warn it is not ready to be used with vital data until it gains journaling support.