Friday May 20, 2005

Mapping Solaris Volume Manager terms to LVM terms.


People who are familiar with LVM, LVM2 (from Linux) might find the Solaris Volume Manager terms a bit strange. So here's a cheat sheet. It is by no means complete. But it should get you started.

Logical volume = metadevice
Volume Group = diskset
PE = soft partition on a slice
LE = soft partition on a metadevice
mirror = RAID 1 (it is really RAID 0+1 but works as 1+0) (/dev/md?)
raid = RAID 5
hotspare = could not find that concept in Linux

All Solaris Volume Manager commands begin with meta. This naming convention came from a device view perspective. RAID 0, RAID 1(0+1 and 1+0) RAID-5, soft partitions are all different types of metadevices. Solaris Volume Manager can operate either or slices or an entire disk. To quickly get started you can look up the documentation. I like this layout since it is organized as tasks.

My quick comparison with LVM/LVM2 indicates that the Solaris Volume Manager is quite a bit more sophisticated. It is more in line with the functionality provided by EVMS or VxVM. To get started, it might be useful to look at the overview here

Solaris Volume Manager supports 32 disksets. In each diskset, 8192 metadevices can be created. Prior to Solaris 10, /kernel/drv/md.conf had variables nmd and md_sets. These variables controlled the number of metadevices and diskets on the system. The default values for nmd was 128 and md_sets was 4. If you wanted to create more than 128 metadevices, you would have to change nmd and reboot!! blew your 5 nines right there! In S10, we eliminated the need for these variables. Now one can go to the maximum without any tuning.

Storage is grouped in disksets. The default diskset is referred to as the local set (i.e. diskset 0). All other disksets are called named disksets. When multiple nodes are connected to common storage, it must be managed in a named diskset. These named disksets can have either a single owner or multi-owners. The single owner diskset is equivalent to the private container concept in EVMS. Multi-owner disksets provide cluster volume management functionality. This is similar to the shared container concept in EVMS. Unlike EVMS, Solaris Volume Manager supports, mirroring in a shared environment. A more detailed overview of the disksets is available here

Monday May 16, 2005

Solaris Volume Manager - a brief history

There are some who jump onto things quickly. I am not one of them. I still run Solaris 8 (x86) on my Pentium III at home overclocked to 660 Mhz. My other machine is a ferrari running Solaris 10. (Whew..I was wondering how I could stick in that bumper sticker line.) Blogging by my standards is new and I could have waited for another couple of years before I jumped onto this bandwagon. However, recently I have been answering questions on the opensolaris discussion group that I thought would be useful to for a larger audience. What better way then to blog and so with much trepidation, I have decided to blog. I work on the Solaris Volume Manager and have been at it for a while. Since the first blog is like those awkward dance steps, I thought I might talk about something that I am very comfortable about; the history of Sun's Volume Manager

It started out as OnlineDiskSuite or ODS(thank marketing for naming a product that sounds like odious). It was later renamed to Solstice DiskSuite or SDS. SDS was enhanced to included a newer meta database and RAID-5. Disksets for clustering was also introduced. SDS lived through versions 4.0 through 4.2.1. The last version is supported on Solaris 8.

With the growing popularity of Solaris we felt that the volume manager should be an integral part of the operating environment. For the user this would provide seamless upgrades(and live upgrades). No need to tear down and rebuild the volume configurations anymore. It also avoided the annoyance of figuring how to obtain a volume manager. When you loaded Solaris it was there..just like the file system. There are advantages for us too. The integrated volume manager can automatically benefit from other enhancements in the kernel. For all these reasons the volume manager became part of Solaris 9. To clearly delineate this phase, the volume manager was renamed to Solaris Volume Manager or SVM for short. SVM does not have separate versions...just like the file system (UFS) does not have separate versions.

The big change between SDS and the integrated Solaris Volume Manager is the use of device ids for tracking disks. The word device ids I believe is a Solaris term. But its basis is in WWN. All modern disks have a unique identifier. SCSI and FC drives use WWN (World Wide Numbers) as defined in the SCSI spec. IDE/ATA disks use a different scheme but they too are unique. By using devids to track disks, we addressed a big customer issue. Volume numbering would not be lost even when disks get renumbers. Previously if drives were renumbered, the SDS configuration would be lost. This was because SDS used the major/minor numbers to track the configuration. The minor numbers could change for a variety of reasons. If one moved a controller from one slot to another, the device enumeration would change which in turn would change the minor number. Now one can really shuffle the drives and SVM will not only find it and construct the metadevices correctly, but it will also update the drive names so that the user has the correct information. Since Solaris 9, new functionality has been steadily delivered in various Solaris 9 updates while also incorporating these features in Solaris 10. So what does SVM deliver now ?

  •  Support for Multiterabyte volumes
  • Improved integration with Dynamic Reconfiguration
  • Metassist - a high level command that assists users in creating volume
  • Support for CIM/WBEM
  • Diskset mobility - the ability to import diskset
  • Support for cluster volume manager
Here you can get details of Solaris 9 updates that deliver the functionality listed above.

These are just the highlights that encompass a number of smaller features.

Now that I have jumped headlong into blogging..there is no turning back!!




« July 2016