Thursday, October 20, 2011

Fast upgrades, with zones

I've been working with a sub-optimal solution with zones for a few years. The zones are located on SAN and movable between hosts which is good, but they are also located on an a filesystem which is not ZFS and not even UFS. This have made upgrades and patching terribly hard and slow, especially with more than 20 zones per host. All local zones earlier had to be upgraded at the same time as a global zone and all they had to be down for the entire operation (sometimes over 8 hours).

After a testing upgrade-on-attach for a while and combining it with Turbocharged SVr4 packages I now have a solution which brings the downtime to under one hour for an entire upgrade including local zones.

Everything would have been even easier if we had all root filesystems on ZFS. Since migrating several terabytes of data at the same time as the upgrade was not an option this was a good solution:
  • Detach all local zones
  • Add Live upgrade and Turbocharge patches
    (119254-70,121428-13,121430-40,124630-28 or later, included in S10u8)
  • lucreate to a ZFS rpool
  • luupgrade to S10U10 and add additional patches
  • luactivate and reboot
  • $(zoneadm attach -U) all zones in parallel
This solution is dependent on good I/O and perhaps even a separate disk/LUN for every zone root plus sufficient CPU resources on the system.

There you go, Solaris 10 8/11 is ready for the SPARC T4!

Patches for "Turbo-Charging SVR4 Package Install" are now available


Anonymous said...

I'm wondering, when you run the patch cluster with the zones in installed status, did you update /etc/patch/pdo.conf and added num_proc=20 (where 20 is the number of zones)?

I found that this parallel patching sped up my patching a lot.

Henkis said...

Yes, I have also tried parallel patching. But upgrades with "Turbocharged SVr4 packages" on global zone and the attach zones in parallel was much faster in my environment at least.

Anonymous said...

Good to know. I'll give that a go next time.