Every paragraph is marked with a stamp like this: | [02.08.06 snv_43 Xen_07_2006] |
Every link is marked with a stamp like this: | [19.01.06] |
Infos from other sources (like Blogs or Mailing lists) are marked with a stamp like this: | (Source: Casper Dik, 14.01.06 [19.01.06]) |
This text was taken from another
source |
There have been two different
approaches to this. In Xen 2.x it was possible to tell dom0
to ignore some PCI devices and make them visible to a domU.
This was never supported in the 'Solaris on Xen 2.x' port (which
was released much earlier this year). In Xen 3.x it seems
that a different approach has been adopted, where it's necessary
to have PCI front and backend drivers to mediate the availability
of PCI devices in domU. Solaris doesn't currently have that
support (in either dom0 or domU). USB devices are managed in a similar way and are similarly not yet available. This is on our list of things to do, but the code is relatively new in Xen (well, more accurately, in the Linux port to Xen) and we haven't got there yet. |
kernel = "/export/xen-images/centos1/vmlinuz-2.6.16.13-xen"
memory = 128
name = "xen-centos1"
disk = ['file:/export/xen-images/centos1/rootfs.img,sda1,w']
vif = [ 'mac=00:16:3E:00:00:15' ]
root = "/dev/sda1 ro"
#!/usr/bin/ksh
DOMAIN_NAME="centos1"
DOMAIN_IP="192.168.178.115"
echo "Starting the Xen Domain \"${DOMAIN_NAME}\" ..."
gnome-terminal --title "Xen - ${DOMAIN_NAME} console" --command "xm
create -c /export/xen-images/${DOMAIN_NAME}.phy"
echo "Waiting for the domain to come up ..."
while [ 0 = 0 ] ; do
echo ".\c"
ping ${DOMAIN_IP}
[ $? -eq 0 ] && break
sleep 1
done
sleep 5
echo ""
echo "Starting the VNC viewer for \"${DOMAIN_IP}\" ..."
/opt/sfw/bin/vncviewer ${DOMAIN_IP}:5900 &
2.4 kernels only work in either Xen 2.x or fully virtualized, as there's no patches to the 2.4 kernel. It would be possible to create 2.4 kernel patches, but I think it's very low on the priority list...
|
The smallest dom0 I've built had
the "Core" cluster and then the following packages: SUNWtoo SUNWpoolr SUNWpool SUNWadmc SUNWadmfr SUNWadmfw SUNWlur SUNWluu SUNWluzone SUNWzoner SUNWzoneu SUNWinst SUNWPython With the addition of the Xen related packages from this site, this is enough to allow you to create a file-backed domU using vbdcfg. |
dominion# svcs -a | grep xctl
online 10:51:04 svc:/system/xctl/store:default
online 10:51:11 svc:/system/xctl/xend:default
online 10:51:11 svc:/system/xctl/console:default
online 10:51:16 svc:/system/xctl/domains:default
>If I understand this correct, I can not run the older DomUs with Solaris |
Image |
32/64
Bit? |
Status |
Date |
Centos image from the Xen
Demo
Disk |
32 Bit |
- boots - gets an IP address from the DHCP server - ping from the Domain to the outside world works - TCP and UDP connections work after issuing
- VNC connection to the Domain worksWorks also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[02.08.06 snv_43 Xen 07_2006] |
OpenSUSE image from the Xen
Demo
Disk |
32 Bit |
- boots - does not get an IP address automatically but the IP address can be configured manually - ping from the Domain to the outside world works - TCP and UDP connections work after issuing
- VNC connection to the Domain worksWorks also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[02.08.06 snv_43 Xen 07_2006] |
Debian image from the Xen
Demo
Disk |
32 Bit |
- boots - gets an IP address from the DHCP server - ping from the Domain to the outside world works - network connections work after copying the ethtool binary from the Centos image and issuing ethtool -K eth0 tx off - VNC connection to the Domain works Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[02.08.06 snv_43 Xen 07_2006] |
Solaris 10 snv43 DomU (SUNWXCall
with
Xen 07/2006 bfu) |
32 Bit |
- works - VNC connections to the Domain work after installing Xvnc Server in the domain Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[03.08.06 snv_43 Xen 07_2006] |
Solaris 10 snv43 DomU (SUNWcore
with
add. packages, [see here] and
07/2006 Xen
bfu) |
32 Bit |
- works - gets an IP address from the DHCP server Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[03.08.06 snv_43 Xen 07_2006] |
Solaris 10 snv43 DomU (SUNWXCall with 07/2006 Xen bfu) | 64 Bit |
- works - gets an IP address from the DHCP server |
[08.08.06 snv_43 Xen 07_2006] |
Solaris 10 snv43 DomU (SUNWcore with add. packages, [see here] and 07/2006 Xen bfu) | 64 Bit |
- works - gets an IP address from the DHCP server |
[08.08.06 snv_43 Xen 07_2006] |
gentoo.2006 image
from jailtime.org [07.08.2006] |
32 Bit |
- works - gets an IP address from the DHCP server - network connections work after copying the ethtool binary from the Centos image and issuing ethtool -K eth0 tx off Notes: Use the kernel from the Xen Demo Disk to boot this image AFAIK there's no X or VNC server installed in this image Sample config file for this image: kernel = "/export/xen-images/centos1/vmlinuz-2.6.16.13-xen" memory = 128 name = "gentoo-2006" disk = ['file:/export/xen-images/gentoo.2006/gentoo.2006-0.img,sda1,w', 'file:/export/xen-images/gentoo.2006/gentoo.swap,sda2,w'] vif = [ 'mac=00:16:3E:00:00:20' ] root = "/dev/sda1 ro" extra = "gentoo=nodevfs" Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[07.08.06 snv_43 Xen 07_2006] |
slackware 10.2
from jailtime.org [07.08.2006] |
32 Bit |
- works - gets an IP address from the DHCP server - network connections work after issuing ethtool -K eth0 tx off Notes: Use the kernel from the Xen Demo Disk to boot this image AFAIK there's no X or VNC server installed in this image Sample config file for this image: kernel = "/export/xen-images/centos1/vmlinuz-2.6.16.13-xen" memory = 128 name = "slackware" disk = ['file:/export/xen-images/slackware/slackware.10-2.img,sda1,w', 'file:/export/xen-images/slackware/slackware.swap,sda2,w'] vif = [ 'mac=00:16:3E:00:00:21' ] root = "/dev/sda1 ro" Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
07.08.06 snv_43 Xen 07_2006] |
FreeBSD 7.0 from FreeBSD
Xen Image [10.08.06] |
32 Bit |
- works - does not get an IP address from the DHCP server but you can manually configure an IP address (I think DHCP is not configured in the image; but I'm no FreeBSD guru) - network connections work without disabling checksuming - looks like there's no VNC server installed in the image Sample config file for the FreeBSD 7.0 DomU [Source: Mark Johnson]: kernel = "/export/xc/xvm/kernels/32-freebsd-7.0" memory = 256 name = "freebsd" vif = [ 'bridge=xenbr0' ] dhcp = "dhcp" disk = ['file:/export/xc/xvm/disks/32-freebsd-7.0,hda1,w'] extra = "boot_verbose" extra += ",boot_single" extra += ",vfs.root.mountfrom=ufs:/dev/xbd769a" extra += ",kern.hz=100" Works also with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[10.08.06 snv_43 Xen 07_2006] |
Solaris
10 snv_44 DomU from opensolaris.org |
32 Bit |
Works, but issues a warning: WARNING: Found xen v3.0.2-sun but need xen v3.0.2-3-sun WARNING: The kernel may not function correctly After rebooting the DomU the image file was corrupted; therefor I suggest you should not use this image with Xen 07/2006! Works with the Xen Release 08/2006 [09.09.06 snv_46 Xen 08_2006] |
[09.09.06 snv_43 Xen 07_2006] |
Ubuntu 6.06.1 LTS | 32 Bit |
Succesfully booted my local
Ubuntu 6.06.1LTS installation on hda5 in a Xen DomU running under
Solaris |
[09.09.06
snv_46 Xen 08_2006] |
Ubuntu 6.06.1LTS DomU Image
created with the instructions from this
site [13.09.2006] |
32 Bit |
- I had to use the Xen kernel
from the Xen Demo Disk
(vmlinuz-2.6.16.13-xen) to get this to work; the
Xen kernel from Ubuntu did not work - network connections work after issuing ethtool -K eth0 tx off |
[13.09.06
snv_46 Xen 08_2006] |
xm reboot
" and "xm shutdown
" do not work for
Solaris DomUs yet, see herexm reboot
" and "xm shutdown
" do work
for
Solaris DomU if running Xen 07/07 in the Dom0.Bernd Schemmer: >>looks
like the powernowd does not run under Xen: ... Bernd Schemmer: >> Is this correct? Casper Dik: >>Possibly; powernow needs to have access to ACPI and all the machine Casper Dik: >>specific registers controlling powernow. Right. There has been some discussion in the xen community on how to make this happen. I haven't followed the details of these conversations, but I don't expect a quick resolution. In addition, if you try frkit on our version of i86pc (i.e. a hardware boot, not under Xen), a couple of the modules will fail to install. We have moved a lot of the kernel modules to new locations, and we have yet to update frkit to look in both places. For now, you can work around these problems by running: # ln -s /platform/i86pc/kernel/mach/pcplusmp /kernel/mach/ # ln -s /platform/i86pc/kernel/mach/amd64/pcplusmp /kernel/mach/amd64/ |
echo "Checking the GDM login service ..."
# gdm login frmi
#
INVALID_GDM2_FRMI="svc:/application/gdm2-login:default"
NEW_GDM2_FRMI="svc:/application/graphical-login/gdm:default"
if [ "$( svcs -o STATE -H ${NEW_GDM2_FRMI} )"x != ""x ] ; then
echo "SMF service \"${NEW_GDM2_FRMI}\" found."
if [ "$( svcs -o STATE -H ${INVALID_GDM2_FRMI} )"x != ""x ] ;
then
echo "Removing the invalid SMF service
\"${INVALID_GDM2_FRMI}\" ..."
svcadm disable -s "${INVALID_GDM2_FRMI}"
svccfg delete "${INVALID_GDM2_FRMI}"
else
echo "Invalid SMF service \"${INVALID_GDM2_FRMI}\"
not found"
fi
else
echo "SMF service \"${NEW_GDM2_FRMI}\" not found."
fi
bash-3.00# getent hosts www.heise.de
193.99.144.85 www.heise.de
bash-3.00# ping
www.heise.de
www.heise.de is
alive
xm list
to check for a zombie domU:xm list
" to get the memory already used:All xm opperations rely upon the
Xen control daemon, aka xend. For any
xm commands to run xend must also be running. For this reason you
should start xend as a service when your system first boots using xen. Most xm commands require root privledges to run due to the communications channels used to talk to the hypervisor. Running as non root will return an error. Most xm commands act asynchronously, so just because the xm command returned, doesn't mean the action is complete. This is important, as many operations on domains, like create and shutdown, can take considerable time (30 seconds or more) to bring the machine into a fully compliant state. If you want to know when one of these actions has finished you must poll through xm list periodically. |
online 10:51:04 svc:/system/xctl/store:defaultNote that the Xen services are disabled by default - you must manually enable them.
online 10:51:11 svc:/system/xctl/xend:default
online 10:51:11 svc:/system/xctl/console:default
online 10:51:16 svc:/system/xctl/domains:default
xm domid
" and "xm domname
" to convert a
DomID to a DomName and vice versa, e.g.xm pause
" and "xm unpause
" to pause or
resume a DomU, e.g.:restore state-file
save domain-id state-file
# uname -i
i86xpv
vncview 192.168.178.18:5900
If you don't have a vncviewer
installed, you can use the one which is
part of vino (remote desktop). Here's what I have on some of my systems. $ cat `which vncviewer` #!/bin/sh exec java -jar /usr/share/gnome/vino/vino-client.jar ${1+"$@"} |
xm network-list <domname>
" to list the
currently attached network adapter of a DomU, e.g.network-attach domain-id [script=scriptname] [ip=ipaddr]
[mac=macaddr] [bridge=bridge-name] [backend=bedomain-id]
network-detach domain-id devid
newfs /dev/dsk/c0d0s0
bash-3.00# lofiadm -a /export/xen-images/mydomU1/root.file
/dev/lofi/1
bash-3.00# mount -o ro /dev/lofi/1 /mnt
bash-3.00# ls /mnt
archives
etc
mnt
sbin
bfu.child
export
net
solcor
bfu.conflicts
home
opt
system
bfu.parent
install_xen.log
osox-bfu-2006-07-14.acr.done tmp
bin
kernel
osox-bfu-2006-07-14.bfu.done usr
boot
lib
platform
var
dev
lost+found
proc
devices
mainroot
root
bash-3.00# df -k /mnt
Filesystem
kbytes used avail capacity Mounted
on
/dev/lofi/1
1028250 839753 126802
87% /mnt
xm block-attach mydomU1
pyh://vol/dev/rdsk/c1t0d0/ubuntu6.06i386 c3 r
xm reboot
" seems not to
work for a Solaris DomU at this time.ethttool -K eth0 tx off
/etc/init.d/volmgt stop
xm block-attach xen-centos1 phy://dev/rdsk/c1t0d0s0 /dev/sda3 r
mount -o ro /dev/sda3 /mnt
umount /mnt
xm block-detach xen-centos1 /dev/sda3
xm block-attach xen-centos1
pyh://vol/dev/rdsk/c1t0d0/ubuntu6.06i386 /dev/sda3 r
install_xen_0706.sh | Script to install Xen (pkgs,
bfu, and necessary config file changes) according to the instructions
on this Web Site: Installation
Instructions at OpenSolaris.org [24.07.06] and my experiences while installing and testing Xen Source: me, [Last update of the script: 09.08.06/bs] ## History ## 25.07.2006 v1.0.0.0 /bs ## initial release for Xen bfu 2006-07-14 ## 26.07.2006 v1.0.0.1 /bs ## added workaround for the PS/2 keyboard bug ## 27.07.2006 v1.0.0.2 /bs ## added code to save & restore the original bge driver ## 01.08.2006 v1.0.0.3 /bs ## added code to save & restore the original USB driver ## 09.08.2006 v1.0.0.4 /bs ## added code to remove the invalid gdm2 SMF service ## This script is only tested with the 07/2006 Xen release installed on Solaris snv_43! |
[09.08.06 snv_43 Xen 07_2006] |
centos1.phy |
Xen configuration file for the
Centos image from the Xen Demo Disk |
[27.07.06 snv_43 Xen 07_2006] |
start_xen_centos1.sh |
Sample script to start a Xen
DomU with the Centos image from the Xen
Demo Disk |
[27.07.06 snv_43 Xen 07_2006] |
start_xen.sh |
General kornshell script to
start a Xen DomU and/or attach a console and/or run the vncviewer for
the DomU. There's no documentation for the script right now - so please
check the source code. The important part is the part with the
configuration variables at the start of the script |
[14.09.06
snv_46 Xen 08_2006] |
vmlinuz-2.6.16.13-xen |
Working Kernel for the Linux
DomUs from the Xen Demo Disk Note: This is a non-PAE kernel - it does not work for DomUs running under a Solaris Dom0 with Xen 07/07 |
[26.10.06
snv_Xen 08_2006] |
Note: