Xen Gotchas

From Zanecorpwiki

Jump to: navigation, search

Guest Console Error

Incidence: openSUSE 11.1, Xen: 3.3.X

If the system log (/var/log/messages) of a Xen guest is is filled with messages like agetty: /dev/xvc0 not found (paraphrase), the problem is (I think) that '/etc/inittab' config file is written for a Xen host has been installed an a Xen guest. My assumption is that the distribution wasn't as well tested on guests, so there's this disconnect.

Specifically, the 'agetty' program, which handles logins (of all kinds I suppose since I saw this problem associated with my mail server) is trying to use the non-existent '/dev/xvc0' to spawn a new console. I guess that it stands for 'xen virtual console zero'. From what I can tell, this is the console that the codexm console lt;guest namegt;/code command uses to connect to the host. I.e., the console on the host which connects to the guest console. However, guests don't have such a device (since it doesn't normally make sense to run a guest in a guest, I suppose) so the 'agetty' program complains. In other words, the device system has been laid out cognizant of the guest status while the login/auth configuration doesn't take this into account.

The solution is to search the '/etc/inittab' file for the reference to 'xvc0' (TODO: give the line) and comment that line out. You have to tell the system to reload the config with:

# init q

or reboot the system.

Boot Loader Fails

Kept getting an error (from pygrub, Xen 4.0, openSuSE 11.3) that the bootloader didn't read any data. domUloader.py would work (with the correct args). The problem was that pygrob really expected the boot disk to be the first disk. I'd made the install disk the first disk and the root second.

Guests Cannot Talk to Each Other

Two guests with the same MAC (like when replicating the config files) will refuse to talk to each other. I.e., you can ping everything but that one guest, then the two guests have the same MAC.

Personal tools