Profugus software
by Anton Kuznetsov
I and my team want to contribute the software which automatically migrates XEN
virtual machines between 2 systems based on their CPU time. The software is
written in Python. Download the RPM package from
http://sourceforge.net/projects/profugus
Full documentation for the software is not available it's pending for
submittion on sourceforge, but the software has a manpage and here are steps
to configure the software:
1. You should have XEN configured for migration and have RSA key for
implementing ssh to the remote machine.
2. Install the RPM package (master host):
rpm -i profugus-0.1.-1.i586.rpm
3.Edit the /etc/profugus.conf:
Remote {remote host}
Instead of {remote host} put the real name or IP address of the remote host
4.Run profugus first time
profugus -f
This command will copy your RSA public key to the remote machine
5.Starting the service
service profugus start
Questions, comments, suggestions are welcome
Thanks,
Anton
17 years
Re: [Fedora-xen] performance and resource monitoring and statistics
by Jan Michael
Hello Guys,
I am think, that I am working on the same think like you guys.
What I want to do is to monitor the complete physical machine utilization
including the already mentioned metrics (CPU ,Memory,Disk I/O ,Netowrk I/O).
Once I collected this data I want to integrate it into our own monitoring
framework.
But the thing is, that so far I found no script or tool which can deliver
this values...
So. Have you achieved any progress in this case?
Cheers,
Jan
> Hi,
> I am planning to monitor performance metrics of Dom0 and
> DomUs (CPU ,Memory,Disk I/O ,Netowrk I/O) .....and define
> benmchmarks/thresholds to allocate resources accoring to the
> performance metrics.I am using xm top and Xenmon to collect
> these metrics.
>
> 1)Any suggestions as to how i should go about defing these
> metrics.? The
> metrics given out by Xenmon are a bit unclear.Could anyone
> give some link
> which describes these parameters.
>
> 2)And are there performance thresholds defined for
> virtualized enviroment like Xen.
>
> Any updates on the follwoing post would be helpful.
> Thanks..........
>
>
> Henning Sprang wrote:
> > Hi,
> > Apart from normal service availability and quality monitoring and
> > measuring of ressources on a system as it would be done for
> any normal
> > machine, I think about additionally monitoring Xen-specific
> data and
> > creating one/some Nagios plugins for this.
> >
> > So one idea is that I want to know when cpu, net and disk
> I/O on a Xen
> > host are saturated, which could, depending on specific needs and
> > SLA's, make it necessary to add ressources to the host or
> migrate VM's
> > to other hosts on which these ressources aren't saturatd yet, or
> > aother measures.
> >
> > While, as far as I understand it, CPU scheduling and
> traffic shaping
> > are highly useful to set rules to allocate a given share of the
> > available ressources to specific vm's, and set minimal and maximal
> > amounts of these shares, in some cases it might be desirable to get
> > more information, and be warned.
> >
> > As a result of this, I started to analyze (with a nagios plugin)
> > different sources of xen runtime data, beginning with the output of
> > xentop -b -i 2, and will mgo on to look deeper into libxenstats,
> > XenMon and xenoprof(of which I am not yet sure if it's good for
> > analyzing production runtime data, or if it's more the kind of
> > profiling one does in non-production environments).
> > Getting CPU share and seeing when the CPU is fully loaded
> is no great
> > deal.
> > Getting useful information of net and disk I/O saturation
> requires a
> > lot of math and measuring (what's the maximum possible
> net/disk I/O on
> > that machine, under the given configuration? ) - they both are
> > depending on overall hardware, cpu scheduling and a lot of other
> > factors - I am really not sure if this is worth the trouble.
> >
> > I am at the same time working on implementations and looking at
> > information and publications on that topic, like multiple papers on
> > XenMon available, and so on.
> >
> > Did anybody else think about this, or anybody has comments
> if this is
> > the right direction to think or better/concrete data to collect and
> > look at?
> >
> > Henning
> >
>
17 years
Using pre-built images with FC6 Xen?
by Todd Ignasiak
I've been messing around with Xen in FC6 lately, and after some delays
(figuring out SELinux was blocking access to my image, and finally
moving it to /xen) I have been able to build OS images from scratch.
Now, I am trying to get a few Xen images that I downloaded running.
But, when I start the VM, I get a system/BIOS error message saying the
disk is not bootable. Is there some extra step that needs to be done
to get Xen to recognize disk images?
I am running on a Core2 Duo based system, in 64 bit mode, with VT
enabled. I'm using an HVM config, similar to one I used on a self
built image. I've tried it with a few images, such as the MySQL VM
from virtualappliances.net
The config looks like:
name = "mysql"
builder = "hvm"
memory = "128"
disk = [ 'file:/xen/VirtualAppliancesMySQL/vadisk-xen-mysql,hda,w', ]
vif = [ 'type=ioemu, mac=00:16:3e:6c:c4:f2, bridge=xenbr0', ]
uuid = "ba39d3e4-130c-abf6-d7ae-a312420a4966"
device_model = "/usr/lib64/xen/bin/qemu-dm"
kernel = "/usr/lib/xen/boot/hvmloader"
vnc=1
vncunused=1
apic=1
acpi=1
pae=1
vcpus=1
serial = "pty" # enable serial console
on_reboot = 'restart'
on_crash = 'restart'
Any tips on how to get pre-made images working with FC6 Xen?
17 years
no grub package getting installed in DomU's
by Jeremy Utley
I'm having an odd problem here, and I can't quite figure it out.
Running Xen on FC6/x64, have successfully created 3 running virtual
machines. Yesterday I tried to create a 4th virtual machine via
virt-install, the install goes fine, but when I try to boot it, I get
the following:
Traceback (most recent call last):
File "/usr/bin/pygrub", line 494, in ?
g = Grub(file, isconfig)
File "/usr/bin/pygrub", line 149, in __init__
self.read_config(file, isconfig)
File "/usr/bin/pygrub", line 339, in read_config
raise RuntimeError, "we couldn't find grub config file in the
image provided."
RuntimeError: we couldn't find grub config file in the image provided.
No handlers could be found for logger "xend"
Error: Boot loader didn't return any data!
Usage: xm create <ConfigFile> [options] [vars]
So, I decided to lomount the drive image, and sure enough, there's no
grub.conf file. In fact, the only thing appearing in /boot/grub is the
splash.xpm.gz file, no stage1_5 files, nothing.
Anyone got any ideas what might be happening?
Jeremy
17 years
FC6 initrd without xenblk?
by Adrian Chadd
I had to roll a custom initrd for 2.6.19-1.2911.6.5.fc6xen which included
xenblk during boot:
[root@hosting-3 ~]# mkinitrd -f --preload=xenblk --with=xenblk /boot/initrd-2.6.19-1.2911.6.5.fc6xen.img.1 2.6.19-1.2911.6.5.fc6xen
The default initrd didn't load xenblk and thus domU didn't have any block devices,
halting the boot process right in its tracks.
Is there a "better" way to do this for PVM under FC6? (this example is Debian etch
DomU under FC6 Dom0.)
My config file:
[root@hosting-3 ~]# cat /etc/xen/servers/test1
kernel = "/boot/vmlinuz-2.6.19-1.2911.6.5.fc6xen"
ramdisk = "/boot/initrd-2.6.19-1.2911.6.5.fc6xen.img.1"
memory = 128
name = "test1"
vif = [ 'bridge=xenbr0.4' ]
disk = [ 'phy:Hosting3/XEN_test1_root,sda1,w', 'phy:Hosting3/XEN_test1_swap,sda2,w' ]
root = "/dev/sda1 ro"
on_crash = "preserve"
Thanks,
Adrian
17 years
/bin/nash taking 100% cpu?
by Adrian Chadd
So I've got FC6 Dom0 hosting Debian Etch domU's fine except for /bin/nash taking
100% of CPU. gdb can't find symbols (unsurprising) and systrace shows its
not looping over a syscall.
Has anyone seen this before?
The system runs fine except for the domU's taking a whole lot more CPU than they
should be.
Adrian
17 years
upgrading Xen and booting domU (which was created by virt-install) from a previous version
by Ian Brown
Hello,
I had installed a geust by virt-install; this was dome under xen which was
installed from rpm (kernel-xen-2.6.18-1.2798.fc6)
it was installed with something like:
virt-install -n guset2 -r 256 -s 4 -f /var/lib/xen/images/guest2/guest2File
-l http://192.168.0.202/ftp/fc6_x86_64_os/ -p --nographics
and it works.
Supppose I will install the new version by building from Xen from
source (3.0.4_1 version).
Will I be able to boot the guest image
(/var/lib/xen/images/guest2/guest2File)
I created before from this new Xen installation (when booting to Xen 3.0.4_1)?
Regards,
Ian
17 years
more crashes
by Adrian Chadd
another crash seen w/ the FC5 Xen kernel 2.6.20-1.2307.fc5xen0.
This is easy to reproduce (I just scp a large file over 100megabytes from
a local disk over to a remote machine; it dies after a few 10s of megabytes.)
Adrian
iret exception: 0000 [#9]
SMP
last sysfs file: /class/net/xenbr2/bridge/topology_change_detected
Modules linked in: xt_physdev bridge blktap ipv6 autofs4 sunrpc 8021q nf_conntrack_netbios_ns ipt_REJECT nf_conntrack_ipv4 xt_state nf_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables video sbs i2c_ec dock button battery asus_acpi backlight ac lp parport_pc parport floppy ohci1394 ieee1394 ehci_hcd ohci_hcd snd_intel8x0 sata_nv snd_ac97_codec sata_sil libata ac97_bus snd_seq_dummy snd_seq_oss scsi_mod e100 snd_seq_midi_event e1000 snd_seq mii snd_seq_device snd_pcm_oss snd_mixer_oss pcspkr snd_pcm snd_timer snd soundcore snd_page_alloc i2c_nforce2 forcedeth i2c_core dm_snapshot dm_zero dm_mirror dm_mod raid1 ext3 jbd
CPU: 0
EIP: 4000:[<00000300>] Not tainted VLI
EFLAGS: 002d7300 (2.6.20-1.2307.fc5xen0 #1)
EIP is at 0x300
eax: 00000000 ebx: 0059f402 ecx: 00000073 edx: 00000246
esi: bfaa274c edi: 0000007b ebp: 00000000 esp: f1f4f01c
ds: 0000 es: 0000 ss: 0069
Process sshd (pid: 3850, ti=f1f4e000 task=f3f0a110 task.ti=f1f4e000)
Stack: 00640000 00006b00 5a00016c 64010001 00660001 00026400 83000084 5a590000
03640002 00008400 6400035a 28530004 00000005 00000128 00087300 73780000
646e6168 0a74656c 78000000 61727473 6361736e 00006374 00000000 00020000
Call Trace:
BUG: unable to handle kernel paging request at virtual address 83000084
printing eip:
c1005562
*pde = ma 00000000 pa fffff000
Oops: 0000 [#10]
SMP
last sysfs file: /class/net/xenbr2/bridge/topology_change_detected
Modules linked in: xt_physdev bridge blktap ipv6 autofs4 sunrpc 8021q nf_conntrack_netbios_ns ipt_REJECT nf_conntrack_ipv4 xt_state nf_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables video sbs i2c_ec dock button battery asus_acpi backlight ac lp parport_pc parport floppy ohci1394 ieee1394 ehci_hcd ohci_hcd snd_intel8x0 sata_nv snd_ac97_codec sata_sil libata ac97_bus snd_seq_dummy snd_seq_oss scsi_mod e100 snd_seq_midi_event e1000 snd_seq mii snd_seq_device snd_pcm_oss snd_mixer_oss pcspkr snd_pcm snd_timer snd soundcore snd_page_alloc i2c_nforce2 forcedeth i2c_core dm_snapshot dm_zero dm_mirror dm_mod raid1 ext3 jbd
CPU: 0
EIP: 0061:[<c1005562>] Not tainted VLI
EFLAGS: 00010097 (2.6.20-1.2307.fc5xen0 #1)
EIP is at dump_trace+0x5c/0x93
eax: 83000ffd ebx: 83000084 ecx: fffff5a8 edx: 00466400
esi: 20202020 edi: 83000000 ebp: c125b39e esp: f1f4ee7c
ds: 007b es: 007b ss: 0069
Process sshd (pid: 3850, ti=f1f4e000 task=f3f0a110 task.ti=f1f4e000)
Stack: c125b25e c125b39e 00000018 00000000 c125b39e c10055b1 c12af4e0 c125b39e
f1f4f07f c1005660 c125b39e c125b39e f1f4efe4 f1f4f01c 00000002 002d7300
f1f4efe4 f1f4f01c c10057f6 c125b39e 00000010 f3f0a2bc 00000f0a f1f4e000
Call Trace:
[<c10055b1>] show_trace_log_lvl+0x18/0x2c
[<c1005660>] show_stack_log_lvl+0x9b/0xa3
[<c10057f6>] show_registers+0x18e/0x25d
[<c1216dbc>] notifier_call_chain+0x19/0x29
[<c10059f8>] die+0x133/0x22f
[<c10062ab>] do_iret_error+0xa7/0xb1
[<c1004fac>] scrit+0xc/0x1a
[<c1004fad>] scrit+0xd/0x1a
[<c1004fae>] scrit+0xe/0x1a
[<c1004fb3>] scrit+0x13/0x1a
[<c102f487>] search_exception_tables+0x14/0x25
[<c101739f>] fixup_exception+0xb/0x20
[<c12158e5>] do_general_protection+0x11c/0x16f
[<c1006879>] do_IRQ+0xc6/0xdd
[<c12157c9>] do_general_protection+0x0/0x16f
[<c1006204>] do_iret_error+0x0/0xb1
[<c12153cd>] error_code+0x35/0x3c
=======================
Code: 9a f4 01 00 00 89 df 81 e7 00 f0 ff ff eb 0e 8b 4c 24 18 89 f2 89 e8 ff 51 08 83 c3 04 39 fb 76 29 8d 87 fd 0f 00 00 39 c3 73 1f <8b> 33 89 f0 e8 e5 9e 02 00 85 c0 74 e2 eb d5 8b 4f 34 85 c9 74
EIP: [<c1005562>] dump_trace+0x5c/0x93 SS:ESP 0069:f1f4ee7c
<3>BUG: sleeping function called from invalid context at kernel/rwsem.c:20
in_atomic():0, irqs_disabled():1
[<c10339aa>] down_read+0x12/0x28
[<c103c052>] acct_collect+0x38/0x13e
[<c10227e4>] do_exit+0x1b2/0x719
[<c1020663>] printk+0x1f/0xa1
[<c1005acf>] die+0x20a/0x22f
[<c1216c38>] do_page_fault+0x6da/0x845
[<c121655e>] do_page_fault+0x0/0x845
[<c12153cd>] error_code+0x35/0x3c
[<c1005562>] dump_trace+0x5c/0x93
[<c10055b1>] show_trace_log_lvl+0x18/0x2c
[<c1005660>] show_stack_log_lvl+0x9b/0xa3
[<c10057f6>] show_registers+0x18e/0x25d
[<c1216dbc>] notifier_call_chain+0x19/0x29
[<c10059f8>] die+0x133/0x22f
[<c10062ab>] do_iret_error+0xa7/0xb1
[<c1004fac>] scrit+0xc/0x1a
[<c1004fad>] scrit+0xd/0x1a
[<c1004fae>] scrit+0xe/0x1a
[<c1004fb3>] scrit+0x13/0x1a
[<c102f487>] search_exception_tables+0x14/0x25
[<c101739f>] fixup_exception+0xb/0x20
[<c12158e5>] do_general_protection+0x11c/0x16f
[<c1006879>] do_IRQ+0xc6/0xdd
[<c12157c9>] do_general_protection+0x0/0x16f
[<c1006204>] do_iret_error+0x0/0xb1
[<c12153cd>] error_code+0x35/0x3c
=======================
[root@hosting-2 ~]#
17 years
modifying selinux rules?
by Adrian Chadd
Hiya,
I've decided to give enabling SELinux a shot for my new VM Dom0's and I'm hitting some
snags with the SELinux policy.
Specifically:
audit(1176072308.841:4): avc: denied { execute } for pid=3699 comm="python" name="local-network-bridge" dev=dm-0 ino=1016069 scontext=system_u:system_r:xend_t:s0 tcontext=root:object_r:tmp_t:s0 tclass=file
I've configured xend-config.sxp to use a local network bridge script rather than the default;
this one brings up VLAN bridges (and it fails when it tries, but thats a different story.)
Is there a simple howto for updating the selinux audit rules for Xen?
Thanks,
Adrian
17 years