Moving to Xen from Pre-Xen Nevada Bits
By user9148476 on Jan 25, 2008
Scrounging around the web, I didn't find a concise listing of what needed to be done, so here's my consolidation of steps:
1. Install the core Xen packages1
# pkgadd -d . SUNWxvmdomr SUNWxvmdomu SUNWxvmr SUNWxvmu SUNWxvmhvm SUNWxvmh SUNWxvmpv2. Install the virt-install and supporting packages
# pkgadd -d . SUNWlibvirt SUNWurlgrabber SUNWvirtinst3. Configure the /boot/grub/menu.lst to load Xen. This is described very well here
4. Once you've rebooted and the hypervisor is loaded, you should see a single domain, dom0, listed.
# xm list Name ID Mem VCPUs State Time(s) Domain-0 0 2891 1 r----- 1626.45. Install a guest. I did a Nevada build_78 guest.
# virt-install What is the name of your virtual machine? snv_78 How much RAM should be allocated (in megabytes)? 1024 What would you like to use as the disk (path)? /export/home/xen/snv_78.img Would you like to enable graphics support? (yes or no) no What is the install location? /build/iso/sol-nv-b78-x86-dvd-iso Starting install... Creating domain... 0 B 00:06 v3.0.4-1-xvm chgset 'Tue Dec 04 09:56:10 2007 +0000 13231:f6074ad033f3' SunOS Release 5.11 Version snv_78 64-bit Copyright 1983-2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. ...The domU install took a lot longer than a typical install. Granted, I only have a single disk in the system, so maybe it was thrashing a bit. Memory was tight, but swap never got invoked. Not sure of the cause at this point. I also plan to make a Solaris 10 domU as well - that'll be handy for patch testing. The next frontier will be some non-Solaris clients...my initial attempts at Fedora and Ubuntu didn't go well....probably gotta get an AMD chip with virtualization support. Fodder for another blog...
1 If you build ON yourself, you can pull the packages from packages/i386/nightly[-nd] in your workspace. You could also pull the packages out of the cpio archives used with bfu. And it's always best to match the package versions to the ON kernel you're running (i.e. use build_80 packages on build_80).