SysAdmin's Journey

Upgrading From Solaris 9 With a Root SVM Mirror to Solaris 10 With a Root ZFS Mirror With Less Than 10 Minutes of Downtime

As sysadmins, many times the entire task laid out in front of us has no documentation. One of the biggest skill an admin can have is the ability to problem solve, breaking down a large task into smaller sub-tasks. Often times, you might be able to find documentation on some of those sub-tasks. A perfect example is upgrading a server from Solaris 9 with root in an SVM mirror to Solaris 10 with a ZFS mirror. Not only is this large task doable, but thanks to LiveUpgrade, it can be done with less than 10 minutes of downtime (3 reboots @ roughly 3 minutes each)! Part of the beauty of Solaris when compared to Linux is the tools made available to the admin. I didn’t even like working in Solaris until I started learning about zones, ZFS, LiveUpgrade, DTrace, etc. Now, on the server-side, I can’t use it enough. I would be hard- pressed to do a similar upgrade with Linux - it’s almost impossible to do in 10 minutes of downtime on RHEL. Debian might be able to do it, but LiveUpgrade gives you the ability to roll back to the previous state, which I don’t believe ‘apt-get dist-upgrade’ allows. Anyways, enough evangelism, onto the howto! If you’re subscribed to my RSS feed you may not even have noticed, but all of the steps have been already laid out over the past few posts. All that remains is to put them back together into one big chain of subtasks.

Step One: Break the SVM Mirror

Step Two: Upgrade Solaris 9 to Solaris 10 using LiveUpgrade

Step Three: Migrate from UFS to ZFS root using LiveUpgrade

Step Four: Add the Second Disk to a ZFS Root Mirror

  • Total Downtime: None
  • Link to Article: Adding a 2nd Disk to a ZFS Root Pool We’ve taken a large behemoth of a task that sounds like a large amount of downtime would have been incurred, and broken it down into smaller, more manageable substeps. As an added bonus, using Solaris technologies, downtime is kept to a minimum!