2007-04-27
My view of Solaris 10 summarized
I've now used Solaris 10 off and on long enough to have something of an opinion on it. I could write an entry along the lines of my reactions to Solaris 9, but I can summarize it simply: for me, nothing really fundamental or revolutionary has changed between Solaris 9 and Solaris 10, and the whole Solaris 10 experience leaves me only a bit more enthused than I was with Solaris 9.
Or, in short: Solaris 10 is just a warmed-over, slightly tuned up version of Solaris 9.
But what about things like ZFS, DTrace, zones, and svcadm? So far my reaction is best summarized as 'new lipstick on the same old pig'; they are nice but have not fundamentally changed my interactions with Solaris, and thus have not changed any of the things that irritate me about Solaris 9.
(Even if they are cool things, they are cool things dropped on top of an uninspiring base, and as a result the whole presentation suffers. It leaves me feeling that Sun is doing the minimum effort it can get away with, instead of genuinely wanting to improve the overall experience.)
Some things about the Solaris 10 experience irritate me intensely; for example, making the base operating system free but apparently requirement a paid support contract for things like recommended patch clusters. (Among other things, this strikes me as an excellent way to give people trying out Solaris a bad experience because of bugs Sun has already fixed.)
With time, I may become enthused about ZFS (and possibly zones, and maybe DTrace but I'm not holding my breath), but I expect I'll be using Solaris 10 despite itself, not because I actually like it. I find this kind of sad, because better examples are readily available for Sun to borrow from and many of the bad points are simply lack of polish. If Sun layered Solaris 10's interesting features on top of the kind of quality base you find in things like current Linux distributions, the result would be genuinely impressive and attractive; instead Sun just manages a kind of tepid interest.
(PS to Sun: pca is still the best OS patch management tool for Solaris 10, so please stop breaking it. In fact you would be better off if you officially adopted it and made it a Sun freeware package.)
2007-04-17
A disappointment with ZFS
According to the ZFS documentation for the current official Solaris 10 release (I don't know about the state of OpenSolaris builds, and they're not of interest to us anyways), you cannot make a storage pool that is a mirror of RAID-Z2 pools.
(You can indirectly construct a mirror of RAID-5 pools, by building the RAID-5 pools with the Solaris Volume Manager instead of ZFS itself.)
We want some form of RAID-6 instead of RAID-5 because RAID-6 leaves you less exposed to data loss than RAID-5 plus a hot spare for the same number of disks. The problem with RAID-5 is that on modern SATA disks, resyncing onto your hot spare after you lose a disk may take an appreciable amount of time; during this time, you're exposed to data loss if you lose a second drive. Since you're going to have the second parity drive anyways (in the form of a hot spare), you might as well have it live.
We want mirroring so we can mirror across two iSCSI controllers, so we can survive losing an entire controller without user downtime. (The price of iSCSI based SATA storage is low enough that we can actually afford to do this.)
And finally, we need ZFS to do the RAID-Z2 because our chosen iSCSI controllers don't have RAID-6, only RAID-5. Since we want mirroring on top of the RAID-Z2 from a single controller, this means ZFS has to provide it too. The inability to do it is disappointing; if we use ZFS, we will have to live with mirroring over controller-based RAID-5.
(Technically you might be able to get ZFS to do this by making two RAID-Z2 pools, making one big filesystem on each, making one big file on each filesystem, and then turning around and telling ZFS to make a mirrored storage pool using those two files. Somehow I don't think this is an officially supported configuration, though.)