LiveUpgrade… Debian-style
So. As things stand now the Nexenta project have a fully-working GNU OS that uses the OpenSolaris kernel. The whole look and feel will be familiar for anybody that’s used Ubuntu. After all, this is what Nexenta is based on.
I am interested in the Nexenta project primarily because it is useful to me. It (will) provide the applications I need to use, the ease and speed of management, while at the same time having a seriously interesting and powerful core kernel. Nvidia helpfully provide display drivers that are kept up-to-date with the Linux and FreeBSD-equivalents.
Nexenta uses Debian’s deb/apt package management to handle everything on the system—this includes the OpenSolaris kernel and userland gubbins that go with it. As such, upgrading from say, b48 to b49 is totally seamless to the user: a new package is available, it gets downloaded and installed and the user is prompted that they need to reboot their system for the installation to complete.
For desktop users this is exactly how things should be. LiveUpgrade is an impressive tool, but it relies on the user having a “spare” slice to allow a full backup of the root filesystem. On my laptop (20GB HDD) this isn’t really something that I can afford, and on even on my desktop machine where disk space is not at a premium I don’t want the hassle of such a large disk operation. However, performing such an upgrade on a live enterprise machine would likely cost the operator their job: and it’s not hard to see why.
I can see a very clear solution in the very near future: a Nexenta-style “LiveUpgrade” with all the safety netting that current LiveUpgrades allow, provided at minimum cost and maximum speed, thanks to ZFS snapshots.
Chris Gerhard is one of the big promoters of ZFS on blogs.sun.com and currently has an entirely-as-possible ZFS implementation on his home server (ZFS root supported by a small UFS boot slice). I believe that he currently has two separate ZFS root filesystems and uses the LiveUpgrade scripts to “toggle” between these. Even with a setup like this I cannot see it being difficult to modify the LiveUpgrade scripts to create a (cloned) snapshot instead of a full slice mirror. Once native ZFS root is available, all that would need to be provided is a way to boot a specific snapshot or clone, as opposed to the “current” filesystem—something I expect the ZFS developers will already have plans for.
It is highly unlikely that Sun will make the massive jump from the current method of providing updates, to something more channel-based at any time in the near future. But until then, the users can still benefit from the advantages through Nexenta, leaving plenty of time for the Sun developers to give serious thought to how best enterprise updates might be handled.
Tags: Solaris
October 20th, 2006 at 9:04 pm
Actually I have 2 UFS partions for root live upgrades still. I am awaiting full support of ZFS root file systems when you will indeed just be able to snapshot and clone to do the upgrade.