Debian lenny + amd64 + xen = problem

heyho

ich will demnächst meine server alle auf einem zentralen zusammenfügen und die einzelnen systeme mit xen virtuallisieren. da ich allerdings nicht die hardware auf gut glücken kaufen wollte, um dann zu merken, das ich zu blöd bin, das alles einzurichten habe ich mir einfach mal den vmware player geschnappt und mir ein debian lenny amd64 aufgesetzt.

dann hab ich etwas im netz gelesen und erstmal per apt den xen kernel und hypervisor und alles installiert, pas de probleme. das einzige problem was ich jetzt hab, ist das es nen glücksspiel ist, bis wohin die kiste bootet. mal bleibt die vm einfach beim starten vom LVM hängen, mal schon direkt nach dem laden der kerneldaten.

liegt das am vmware?

als ressourcen hab ich der vm 4gb ram und 2 CPU kerne gegeben.
der kernel ist der aktuelle der von debian geliefert wird:

Code:
Linux xen 2.6.26-1-amd64 #1 SMP Sat Jan 10 17:57:00 UTC 2009 x86_64 GNU/Linux

der eintrag in der menu.lst ist folgender:

Code:
title           Xen 3.2-1-amd64 / Debian GNU/Linux, kernel 2.6.26-1-xen-amd64
root            (hd0,0)
kernel          /xen-3.2-1-amd64.gz
module          /vmlinuz-2.6.26-1-xen-amd64 root=/dev/mapper/xen-root ro vga=791 console=tty0
module          /initrd.img-2.6.26-1-xen-amd64

ansonsten ist es ein frischinstalliertes lenny und anschliesend das xen installiert.
fehlermeldungen gibt es sonst keine weiter.
 
Du kannst ein virtualisiertes System nicht in einem virtualisierten System starten. Das ist dann immer nur Glücksspiel, weil die Virtualisierungssoftware ja eigentlich einen direkten Zugriff auf die Hardware erwartet und die virtualisierten Devices nicht immer alle Funktionen zur Verfügung stellen, die von den "echten" Devices abgebildet werden.
 
also liegt das daran, dass ich das system im vmware starte?
schade dabei. ich dachte vmware erstellt ein komplettes abbild von einem rechner.

muss ich mal sehen, wie und wo ich das ganze ausprobiere. ist natürlich etwas ärgerlich!
aber danke für die info.

kennst du zufällig noch ein detalliertes howto für die wartung und installation von xen?
hab da noch nichts so richtiges gefunden. (wobei ich ohnehin erstmal mit dem vmwareplayer gekämpft hab :( )
 
Hi,

ich benutze seit einiger Zeit XEN unter Debian Lenny. Wenn du konkrete Fragen hast stell sie ruhig. Alles was ich nicht beantworten kann bietet nur Stoff nach weiterer Recherche ;)
Also ich komm sehr gut mit dem ganzen zurecht. Hab momentan 2 250GB Platten in nem Software RAID 1. Das RAID ist in ner LVM Volume Group. Die domUs (virtuellen Maschinen) bekommen LVM Logical Volumes. Hab 10 paravirtualisierte Debians und 2 Windows Server 2003 laufen. Klappt wunderbar.

Dein Problem hat glaube ich mit diesen CPU Ringen zu tun. Das lass die aber lieber von jemandem erklären der's versteht ;)

cu
serow
 
nuja, wenn du das schon so konkret anbietest ;)
wie sieht das aus mit dem windows support, ich hab gelesen, man brauch auf jeden fall eine amd-v fähige cpu ([x] hab ich). läuft das rund? weil ich brauch für meine clients einen wsus.

ansonsten, braucht man zwangsweise die lvms oder ist das einfach zum besseren managen?
 
Ja du brauchst Intel VT oder AMD-V um mit XEN fullvirtualization zu betreiben. Ich hab den Intel Q9550 - der läuft gut soweit ich das beurteilen kann ^^

Hier meine .cfg für einer der Windows Maschinen, damit du gleich nen Einstieg hast ^^
Code:
kernel = "/usr/lib64/xen-3.2-1/boot/hvmloader"
builder="hvm"
memory = "512"
name = "w2k3.desktop"
vcpus = 1
vif = [ 'type=ioemu, bridge=eth0' ]
disk = [ 'phy:XEN_Storage/w2k3.desktop-disk,hda,w', 'file:/home/xen/iso/en_win_srv_2003_r2_enterprise_with_sp2_vl_cd1_X13-48610.iso,ioemu:hdc:cdrom,r']

device_model = '/usr/lib64/xen-3.2-1/bin/qemu-dm'

boot="dc"

sdl=0
vnc=1
vncunused=1
vncconsole=1

soundhw="sb16"

on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

Das mit den LVMs hab ich erstmal nur gemacht weil ichs kann :D Vom Prinzip her müsste es performanter sein der VM ein block device zu geben. Wenn man mit disk files arbeitet hat man ja quasi das Filesystem des Hosts noch dazwischen. Inwieweit das LVM jetzt drosselt kann ich nicht sagen. Dürfte kaum nennenswert sein.
 
okay ich habs jetzt erstmal geschafft, das system auf meinen opteron zu bügeln und den xen kernel zu starten.
habe mir auch eine vm erstellt, wenn ich diese jetzt aber starten will bekomm ich nur folgendes zu sehen:

Code:
xen:~# xm create testrechner.cfg -c
Using config file "/etc/xen/testrechner.cfg".
Error: Device 0 (vif) could not be connected. Could not find bridge, and none was specified

ich muss mal google bemühen, falls jemand direkt mal nen tipp hat, immer her damit!

ah sehr gut, ich hab vergessen, mir ne netzwerkbrücke zu erstellen:

Code:
#(network-script network-dummy)
(network-script network-bridge)

genial, scheint zu laufen. ich bin bekleistert :D

edit: doch etwas zu früh gefreut.
ich bekomm keine shell zu sehen, wenn ich die vm gestartet hab...?

Code:
xen:~# xm create testrechner.cfg -c
Using config file "/etc/xen/testrechner.cfg".
Started domain testrechner
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 2.6.26-1-xen-amd64 (Debian 2.6.26-13lenny2) (dannf@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #1 SMP Fri Mar 13 21:39:38 UTC 2009
[    0.000000] Command line: root=/dev/sda2 ro
[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  Xen: 0000000000000000 - 0000000020800000 (usable)
[    0.000000] max_pfn_mapped = 133120
[    0.000000] init_memory_mapping
[    0.000000]   early res: 0 [200000-631917] TEXT DATA BSS
[    0.000000]   early res: 1 [632000-c69fff] Xen provided
[    0.000000]   early res: 2 [c6a000-d70fff] PGTABLE
[    0.000000] Zone PFN ranges:
[    0.000000]   DMA             0 ->     4096
[    0.000000]   DMA32        4096 ->  1048576
[    0.000000]   Normal    1048576 ->  1048576
[    0.000000] Movable zone start PFN for each node
[    0.000000] early_node_map[1] active PFN ranges
[    0.000000]     0:        0 ->   133120
[    0.000000] PERCPU: Allocating 22192 bytes of per cpu data
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 131300
[    0.000000] Kernel command line: root=/dev/sda2 ro
[    0.000000] Initializing CPU#0
[    0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)
[    0.000000] Xen reported: 2200.000 MHz processor.
[    0.004000] Console: colour dummy device 80x25
[    0.004000] console [tty0] enabled
[    0.004000] console [hvc0] enabled
[    0.004000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
[    0.004000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)
[    0.004000] Software IO TLB disabled
[    0.004000] Memory: 503588k/532480k available (2277k kernel code, 20680k reserved, 1020k data, 216k init)
[    0.220021] Calibrating delay using timer specific routine.. 4402.29 BogoMIPS (lpj=8804583)
[    0.220069] Security Framework initialized
[    0.220082] SELinux:  Disabled at boot.
[    0.220089] Capability LSM initialized
[    0.220110] Mount-cache hash table entries: 256
[    0.220256] Initializing cgroup subsys ns
[    0.220267] Initializing cgroup subsys cpuacct
[    0.220273] Initializing cgroup subsys devices
[    0.220303] CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
[    0.220310] CPU: L2 Cache: 1024K (64 bytes/line)
[    0.220318] CPU: Physical Processor ID: 0
[    0.220323] CPU: Processor Core ID: 0
[    0.220341] SMP alternatives: switching to UP code
[    0.228502] Freeing SMP alternatives: 21k freed
[    0.228645] Brought up 1 CPUs
[    0.232223] net_namespace: 1224 bytes
[    0.232408] NET: Registered protocol family 16
[    0.233560] Brought up 1 CPUs
[    0.233576] PCI: Fatal: No config space access function found
[    0.233586] PCI: setting up Xen PCI frontend stub
[    0.234253] ACPI: Interpreter disabled.
[    0.234265] Linux Plug and Play Support v0.97 (c) Adam Belay
[    0.234298] pnp: PnP ACPI: disabled
[    0.234549] suspend: event channel 7
[    0.235015] xen_mem: Initialising balloon driver.
[    0.236249] usbcore: registered new interface driver usbfs
[    0.236313] usbcore: registered new interface driver hub
[    0.236357] usbcore: registered new device driver usb
[    0.236513] PCI: System does not support PCI
[    0.236520] PCI: System does not support PCI
[    0.248751] NET: Registered protocol family 2
[    0.284366] IP route cache hash table entries: 32768 (order: 6, 262144 bytes)
[    0.284718] TCP established hash table entries: 131072 (order: 9, 2097152 bytes)
[    0.285811] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[    0.286440] TCP: Hash tables configured (established 131072 bind 65536)
[    0.286451] TCP reno registered
[    0.296391] NET: Registered protocol family 1
[    0.296498] checking if image is initramfs... it is
[    0.301791] Freeing initrd memory: 5288k freed
[    0.305468] platform rtc_cmos: registered platform RTC device (no PNP device found)
[    0.305780] audit: initializing netlink socket (disabled)
[    0.305802] type=2000 audit(1239064943.306:1): initialized
[    0.306016] VFS: Disk quotas dquot_6.5.1
[    0.306047] Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.306075] msgmni has been set to 1034
[    0.306165] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[    0.306177] io scheduler noop registered
[    0.306182] io scheduler anticipatory registered
[    0.306187] io scheduler deadline registered
[    0.306199] io scheduler cfq registered (default)
[    0.308022] Linux agpgart interface v0.103
[    0.308022] Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
[    0.309373] brd: module loaded
[    0.309449] input: Macintosh mouse button emulation as /class/input/input0
[    0.309520] Xen virtual console successfully installed as hvc0
[    0.309576] Event-channel device installed.
[    0.318216] netfront: Initialising virtual ethernet driver.
[    0.322301] PNP: No PS/2 controller found. Probing ports directly.
[    0.323128] i8042.c: No controller found.
[    0.323587] xen-vbd: registered block device major 8
[    0.323609] blkfront: sda1: barriers enabled
[    0.329094] blkfront: sda2: barriers enabled
[    0.332187] mice: PS/2 mouse device common for all mice
[    0.332331] rtc_cmos rtc_cmos: rtc core: registered rtc_cmos as rtc0
[    0.332456] No iBFT detected.
[    0.332858] TCP cubic registered
[    0.332864] NET: Registered protocol family 17
[    0.332971] registered taskstats version 1
[    0.332996] XENBUS: Device with no driver: device/console/0
[    0.333002] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[    0.333013] Freeing unused kernel memory: 216k freed
Loading, please wait...
Begin: Loading essential drivers ... [    0.395436] SCSI subsystem initialized
[    0.408418] Uniform Multi-Platform E-IDE driver
[    0.408436] ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
done.
Begin: Running /scripts/init-premount ... FATAL: Error inserting fan (/lib/modules/2.6.26-1-xen-amd64/kernel/drivers/acpi/fan.ko): No such device
WARNING: Error inserting processor (/lib/modules/2.6.26-1-xen-amd64/kernel/drivers/acpi/processor.ko): No such device
[    0.472849] thermal: Unknown symbol acpi_processor_set_thermal_limit
FATAL: Error inserting thermal (/lib/modules/2.6.26-1-xen-amd64/kernel/drivers/acpi/thermal.ko): Unknown symbol in module, or unknown parameter (see dmesg)
done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
[    0.798327] EXT3-fs: INFO: recovery required on readonly filesystem.
[    0.798345] EXT3-fs: write access will be enabled during recovery.
[    0.832786] kjournald starting.  Commit interval 5 seconds
[    0.832801] EXT3-fs: recovery complete.
[    0.832991] EXT3-fs: mounted filesystem with ordered data mode.
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... done.
INIT: version 2.86 booting
* Mount point '/dev/shm' does not exist. Skipping mount.
Activating swap...[    1.083865] Adding 262136k swap on /dev/sda1.  Priority:-1 extents:1 across:262136k
done.
Checking root file system...fsck 1.40-WIP (14-Nov-2006)
/dev/sda2: clean, 10860/131072 files, 88326/524288 blocks
done.
[    1.111347] EXT3 FS on sda2, internal journal
Setting the system clock..
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
Cleaning up ifupdown....
Loading kernel modules...FATAL: Could not load /lib/modules/2.6.26-1-xen-amd64/modules.dep: No such file or directory
Loading device-mapper support.
Checking file systems...fsck 1.40-WIP (14-Nov-2006)
done.
Setting kernel variables...done.
Mounting local filesystems...done.
Activating swapfile swap...done.
Setting up networking....
Configuring network interfaces...done.
INIT: Entering runlevel: 2
Starting system log daemon: syslogd.
Starting kernel log daemon: klogd.
* Not starting internet superserver: no services enabled.
Starting OpenBSD Secure Shell server: sshd.
Starting periodic command scheduler: crond.
 
Welche Bridge hast du denn eingetragen ins .cfg File? Hast du meins übernommen?

Überprüf mal mit brctl show welche bridges du hast:
Code:
xenhost:~# brctl show
bridge name	bridge id		STP enabled	interfaces
eth0		8000.0022159f1e10	no		peth0
							tap0
							tap1
							tap2
							vif1.0
							vif10.0
...
xenhost:~#

Hast du in /etc/xen/xend-config.sxp vor der Zeile
(network-script network-bridge)
das "#" entfernt? Wenn du das machst musst du xend neustarten:

Code:
/etc/init.d/xend restart


cu
serow
 
das cfg des testrechners ist folgendes:

Code:
# Configuration file for the Xen instance testrechner, created
# by xen-tools 3.9 on Tue Apr  7 00:18:27 2009.
#

#
#  Kernel + memory size
#
#vmlinuz-2.6.26-1-xen-amd64
kernel      = '/boot/vmlinuz-2.6.26-1-xen-amd64'
ramdisk     = '/boot/initrd.img-2.6.26-1-xen-amd64'
memory      = '512'

#
#  Disk device(s).
#
root        = '/dev/sda2 ro'
disk        = [
                  'file:/home//domains/testrechner/swap.img,sda1,w',
                  'file:/home//domains/testrechner/disk.img,sda2,w',
              ]


#
#  Hostname
#
name        = 'testrechner'

#
#  Networking
#
vif         = [ 'ip=192.168.112.66,mac=00:16:3E:45:8D:A3' ]

#
#  Behaviour
#
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

der befehl bringt mir dies:

Code:
xen:~# brctl show
bridge name     bridge id               STP enabled     interfaces
eth0            8000.00e08172fff0       no              peth0

den xend hab ich neugestartet.

das hier bekomm ich wenn die vm läuft:
Code:
xen:~# brctl show
bridge name     bridge id               STP enabled     interfaces
eth0            8000.00e08172fff0       no              peth0
                                                        vif11.0

ah, wieder etwas schlauer:
wenn ich in das configfile folgedes einfüge bekomm ich ne shell:

Code:
extra='xencons=tty1'

jetzt klappt das auch ;)
genial, meine erste machine scheint zu rennen :)
danke dir auf jedenfall schonmal für deine hilfe :)

hm, einwas ist noch, wenn ich jetzt per ssh connecten will bekomm ich das hier zu sehen...

Code:
Server refused to allocate pty
stdin: is not a tty

ich hab versucht mit makedev (wie ich es im google gefunden hatte)
aber das brachte mir nur folgendes:

Code:
.udevdb or .udev presence implies active udev. Aborting MAKEDEV invocation

alles was ich dazu gefunden hab: man sollte davon ausgehen, dass sich udev um das vorhandensein der geräte kümmert - ist aber scheinbar nicht der fall. und nun?

okay, damit scheint das auch geklärt zu sein, wenn udev nich installiert ist , kann das schlecht arbeiten lol
 
Zurück
Oben