NetBSD as a Xen domU
From Sfvlug
Line 1: | Line 1: | ||
- | I used CentOS 5.3 x86_64 (Linux) as the dom0, but that should be irrelevant. | + | I used CentOS 5.3 x86_64 (Linux) as the dom0, but that should be irrelevant. This is how I installed NetBSD 5.0 amd64 as a Xen domU. |
+ | |||
+ | In Xen parlaiance, dom0 (domain zero) refers to the first kernel launched by the hypervisor, the one which has direct access to all the hardware. Then, domU (domain unprivileged) refers to all the other kernels running in the hypervisor, that do not have direct access to hardware. | ||
/etc/xen/auto/netbsd | /etc/xen/auto/netbsd | ||
Line 36: | Line 38: | ||
:<pre> xm create -c netbsd </pre> | :<pre> xm create -c netbsd </pre> | ||
+ | |||
+ | ;kernel, on_reboot, and on_crash | ||
+ | |||
+ | :Basically, when installing we want the domU to halt if it crashes or reboots, because otherwise it would start the installation process again. However, if one of these events occurs if the machine is in production, we want it to reboot. | ||
+ | |||
+ | ;vfb | ||
+ | |||
+ | :I hope this will work. I honestly haven't tested this to see if there is a display available on this domU yet. | ||
+ | |||
+ | ;disk | ||
+ | |||
+ | :This refers to a physical partition I created with Linux LVM2. In NetBSD, it is apparently not extremely important to make the device ID match a real major and minor number combo. | ||
+ | |||
+ | For installation, I mounted the NetBSD ISO image in my FTP directory and started vsftpd. I had to temporarily disable SELinux because ISO-9660 lacks the special labeling otherwise required. After installation was finished, I re-enabled SELinux. |
Revision as of 06:48, 1 August 2009
I used CentOS 5.3 x86_64 (Linux) as the dom0, but that should be irrelevant. This is how I installed NetBSD 5.0 amd64 as a Xen domU.
In Xen parlaiance, dom0 (domain zero) refers to the first kernel launched by the hypervisor, the one which has direct access to all the hardware. Then, domU (domain unprivileged) refers to all the other kernels running in the hypervisor, that do not have direct access to hardware.
/etc/xen/auto/netbsd
# -*- python -*- if xm_vars.env.get('install'): kernel = "/var/lib/xen/images/netbsd-INSTALL_XEN3_DOMU.amd64" on_reboot = "destroy" on_crash = "destroy" else: kernel = "/var/lib/xen/images/netbsd-XEN3_DOMU.amd64" on_reboot = "restart" on_crash = "restart" name = "netbsd" uuid = "a351589d-9858-42de-8749-f6048aa08f72" maxmem = 256 memory = 256 vcpus = 1 on_poweroff = "destroy" root = "xbd0" vfb = [ "type=vnc,vncunused=1,keymap=en-us" ] disk = [ "phy:/dev/VolGroup00/netbsd,0x1,w" ] vif = [ "mac=00:16:3E:A8:01:03,bridge=xenbr0" ]
- if ...
- The Xen
xm
command creates a special Python object, which you can use to test the environment. The end result is that when you are installing the domU, invoke the following:
xm create -c netbsd install=1
- And when otherwise starting an installed domU, invoke:
xm create -c netbsd
- kernel, on_reboot, and on_crash
- Basically, when installing we want the domU to halt if it crashes or reboots, because otherwise it would start the installation process again. However, if one of these events occurs if the machine is in production, we want it to reboot.
- vfb
- I hope this will work. I honestly haven't tested this to see if there is a display available on this domU yet.
- disk
- This refers to a physical partition I created with Linux LVM2. In NetBSD, it is apparently not extremely important to make the device ID match a real major and minor number combo.
For installation, I mounted the NetBSD ISO image in my FTP directory and started vsftpd. I had to temporarily disable SELinux because ISO-9660 lacks the special labeling otherwise required. After installation was finished, I re-enabled SELinux.