* host information in domU over /proc or /sys filesystem
@ 2007-05-24 15:38 Hannes Kuehnemund
2007-05-28 19:11 ` Mark Williamson
0 siblings, 1 reply; 5+ messages in thread
From: Hannes Kuehnemund @ 2007-05-24 15:38 UTC (permalink / raw)
To: xen-devel
Hi,
I have a few questions. But lets start with the background:
Several other virtualization technologies beside Xen do provide the
possibility to get configuration information of the VM itself and the
host it is running on through the /proc file system. These technologies
are for example zLinux or Linux on ppc64.
This feature is very important for quality of service aspects. How many
physical CPU do I have? How many CPU time can I use? Other important
information would the real memory and the hostname of the host machine.
Basically all this information is provided by other virtualization
technologies as read only values. Having a huge hosting solution with
enterprise software running in virtual machines depends on these quality
of service aspects. Having a black box makes debugging of performance
issues impossible and thus the whole solution is not usable.
Is it possible to provide such a solution with Xen (of course only if
enabled in dom0 due to security reasons!) over the /proc or /sysfs?
Thanks,
Hannes
--
* Hannes Kuehnemund
* SAP Linuxlab
* SAP AG
* Dietmar Hopp Allee 16
* 69190 Walldorf, Germany
T +49 6227 7-40615
F +49 6227 78-34584
mailto: hannes.kuehnemund@sap.com
http://www.sap.com
Sitz der Gesellschaft/Registered Office: Walldorf, Germany
Vorstand/SAP Executive Board: Henning Kagermann (Sprecher/CEO),
Léo Apotheker (stellvertretender Sprecher/Deputy CEO),
Werner Brandt, Claus Heinrich, Gerhard Oswald, Peter Zencke
Vorsitzender des Aufsichtsrats/Chairperson of the SAP
Supervisory Board: Hasso Plattner
Registergericht/Commercial Register Mannheim No HRB 350269
Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder
sonstige vertrauliche Informationen enthalten. Sollten Sie
diese E-Mail irrtümlich erhalten haben, ist Ihnen eine
Kenntnisnahme des Inhalts, eine Vervielfältigung oder
Weitergabe der E-Mail ausdrücklich untersagt. Bitte
benachrichtigen Sie uns und vernichten Sie die empfangene
E-Mail. Vielen Dank.
This e-mail may contain trade secrets or privileged,
undisclosed, or otherwise confidential information. If you have
received this e-mail in error, you are hereby notified that any
review, copying, or distribution of it is strictly prohibited.
Please inform us immediately and destroy the original
transmittal. Thank you for your cooperation.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: host information in domU over /proc or /sys filesystem
2007-05-24 15:38 host information in domU over /proc or /sys filesystem Hannes Kuehnemund
@ 2007-05-28 19:11 ` Mark Williamson
2007-05-29 16:04 ` Hannes Kuehnemund
0 siblings, 1 reply; 5+ messages in thread
From: Mark Williamson @ 2007-05-28 19:11 UTC (permalink / raw)
To: xen-devel; +Cc: Hannes Kuehnemund
> This feature is very important for quality of service aspects. How many
> physical CPU do I have? How many CPU time can I use?
I'm not exactly sure whether a domU needs to know this? or do you mean dom0
specifically?
The number of physical CPUs the domain's VCPUs are being scheduled across
might change dynamically. You can, however, change the number of VCPUs a
domain is allocated as an indication of how many CPUs it should try to
optimise for. There's also /sys/hypervisor which contains some relevant
information.
dom0 is permitted to access more detailed information about the host machine
through a hypercall (use "xm info" to see what's available).
> Other important > information would the real memory and the hostname of the
host machine.
I'm not sure why a domU would need to know the hostname of the host machine?
Also, this could change during migration, so it's not a stable value.
Cheers,
Mark
> Basically all this information is provided by other virtualization
> technologies as read only values. Having a huge hosting solution with
> enterprise software running in virtual machines depends on these quality
> of service aspects. Having a black box makes debugging of performance
> issues impossible and thus the whole solution is not usable.
>
> Is it possible to provide such a solution with Xen (of course only if
> enabled in dom0 due to security reasons!) over the /proc or /sysfs?
>
> Thanks,
> Hannes
--
Dave: Just a question. What use is a unicyle with no seat? And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: host information in domU over /proc or /sys filesystem
2007-05-28 19:11 ` Mark Williamson
@ 2007-05-29 16:04 ` Hannes Kuehnemund
2007-05-29 17:42 ` Mark Williamson
0 siblings, 1 reply; 5+ messages in thread
From: Hannes Kuehnemund @ 2007-05-29 16:04 UTC (permalink / raw)
To: xen-devel; +Cc: Mark Williamson
Mark Williamson wrote:
>> This feature is very important for quality of service aspects. How
>> many physical CPU do I have? How many CPU time can I use?
> I'm not exactly sure whether a domU needs to know this? or do you mean dom0
> specifically?
Actually, the domU itself shouldn't know this, but maybe an application
running in domU. Imagine the following situation:
Three party setup:
1) Software vendor
2) Hosting provider
3) Customer (using Software from 1) and a virtual machine from 2))
In case the hosting provider changes something in the setup, the
performance decreases and Customer complains at the software vendor the
really bad performance of the software sold. Having no chance to get at
least number of physical cpu's assigned to domU makes problem solving
impossible. This theoretical setup would need the interaction of a third
party, the Hosting provider.
If there would be a possibility for the hosting provider to provide this
information (physical CPU assigned) to a domU, reduces the costs and
time spend for interaction getting a third party involved in a support
call. The information which physical CPU's are assigned to a domU does
not affect security or encapsulation, because the domU does _not_ know
how many physical CPU's dom0 has at all or how many of them are assigned
to other VM's.
> The number of physical CPUs the domain's VCPUs are being scheduled across
> might change dynamically. You can, however, change the number of VCPUs a
> domain is allocated as an indication of how many CPUs it should try to
> optimise for.
That it changes dynamically is not a problem at all. We would collect
the data, how many physical CPU's are assigned on a 5 minute base in our
application to keep track of it. We then can check if response times
correlate with number of physical CPU's.
> There's also /sys/hypervisor which contains some relevant
> information.
Yes, that for the hint. Unfortunately is data is not enough :(
> dom0 is permitted to access more detailed information about the host machine
> through a hypercall (use "xm info" to see what's available).
>> Other important > information would the real memory and the hostname of the
> host machine.
> I'm not sure why a domU would need to know the hostname of the host machine?
> Also, this could change during migration, so it's not a stable value.
In case nothing like the physical CPU assignment will be implemented,
domU must know, which CIM server to query to get this kind of
information. I know that this value will change, and because of this we
need the information. If the domO would stay the same all the time, I
could set a parameter in my software to query the CIM server directly,
which wouldn't work after a migration.
The third possibility is to setup a dedicated VM which interacts between
all available dom0's and all available domU's. But this is the last
possible solution I'd prefer, because a third instance to manage is a
third source of errors.
> Cheers,
> Mark
Cheers,
Hannes
>> Basically all this information is provided by other virtualization
>> technologies as read only values. Having a huge hosting solution with
>> enterprise software running in virtual machines depends on these quality
>> of service aspects. Having a black box makes debugging of performance
>> issues impossible and thus the whole solution is not usable.
>>
>> Is it possible to provide such a solution with Xen (of course only if
>> enabled in dom0 due to security reasons!) over the /proc or /sysfs?
>>
>> Thanks,
>> Hannes
--
* Hannes Kuehnemund
* SAP Linuxlab
* SAP AG
* Dietmar Hopp Allee 16
* 69190 Walldorf, Germany
T +49 6227 7-40615
F +49 6227 78-34584
mailto: hannes.kuehnemund@sap.com
http://www.sap.com
Sitz der Gesellschaft/Registered Office: Walldorf, Germany
Vorstand/SAP Executive Board: Henning Kagermann (Sprecher/CEO),
Léo Apotheker (stellvertretender Sprecher/Deputy CEO),
Werner Brandt, Claus Heinrich, Gerhard Oswald, Peter Zencke
Vorsitzender des Aufsichtsrats/Chairperson of the SAP
Supervisory Board: Hasso Plattner
Registergericht/Commercial Register Mannheim No HRB 350269
Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder
sonstige vertrauliche Informationen enthalten. Sollten Sie
diese E-Mail irrtümlich erhalten haben, ist Ihnen eine
Kenntnisnahme des Inhalts, eine Vervielfältigung oder
Weitergabe der E-Mail ausdrücklich untersagt. Bitte
benachrichtigen Sie uns und vernichten Sie die empfangene
E-Mail. Vielen Dank.
This e-mail may contain trade secrets or privileged,
undisclosed, or otherwise confidential information. If you have
received this e-mail in error, you are hereby notified that any
review, copying, or distribution of it is strictly prohibited.
Please inform us immediately and destroy the original
transmittal. Thank you for your cooperation.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: host information in domU over /proc or /sys filesystem
2007-05-29 16:04 ` Hannes Kuehnemund
@ 2007-05-29 17:42 ` Mark Williamson
2007-06-19 14:51 ` Hannes Kuehnemund
0 siblings, 1 reply; 5+ messages in thread
From: Mark Williamson @ 2007-05-29 17:42 UTC (permalink / raw)
To: Hannes Kuehnemund; +Cc: xen-devel
> > The number of physical CPUs the domain's VCPUs are being scheduled across
> > might change dynamically. You can, however, change the number of VCPUs a
> > domain is allocated as an indication of how many CPUs it should try to
> > optimise for.
>
> That it changes dynamically is not a problem at all. We would collect
> the data, how many physical CPU's are assigned on a 5 minute base in our
> application to keep track of it. We then can check if response times
> correlate with number of physical CPU's.
Hmmmm.
Well, it's perfectly possible for the hosting provider to assign an
approximate minimum share of the machine to the domU using the credit
scheduler. This is specified effectively in terms of "percentage of one
physical CPU in a period"...
So for a domain with 90% and one vCPU it would try to schedule it 90% of the
time on whatever PCPU is free. For a domain with 90% and 2 vCPUs it'll try
and make sure that the time the two vCPUs get in total is the same amount.
Domains with > 1 vCPU can use > 100% by this metric.
Anyhow, there are a number of parameters involved here: how much time in total
the domain should get, how many vCPUs the domain has, and how the time gets
shared between them.
Rather than trying to sample how many pCPUs the domain gets to run on, perhaps
it would be better to monitor the total time its vCPUs are being scheduled
*somewhere*. Then you can just compare whether your pCPU time allowance
corresponds to your SLA.
This way the domain still doesn't need to know which specific CPUs it gets
scheduled on, but you can get all the information you need?
> > dom0 is permitted to access more detailed information about the host
> > machine through a hypercall (use "xm info" to see what's available).
> >
> >> Other important > information would the real memory and the hostname of
> >> the
> >
> > host machine.
> > I'm not sure why a domU would need to know the hostname of the host
> > machine? Also, this could change during migration, so it's not a stable
> > value.
>
> In case nothing like the physical CPU assignment will be implemented,
> domU must know, which CIM server to query to get this kind of
> information. I know that this value will change, and because of this we
> need the information. If the domO would stay the same all the time, I
> could set a parameter in my software to query the CIM server directly,
> which wouldn't work after a migration.
>
> The third possibility is to setup a dedicated VM which interacts between
> all available dom0's and all available domU's. But this is the last
> possible solution I'd prefer, because a third instance to manage is a
> third source of errors.
I'm still not sure why the domU would need to know the host's hostname though?
Or is it just as a fallback if the CPU data isn't directly available?
Cheers,
Mark
--
Dave: Just a question. What use is a unicyle with no seat? And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: host information in domU over /proc or /sys filesystem
2007-05-29 17:42 ` Mark Williamson
@ 2007-06-19 14:51 ` Hannes Kuehnemund
0 siblings, 0 replies; 5+ messages in thread
From: Hannes Kuehnemund @ 2007-06-19 14:51 UTC (permalink / raw)
To: Mark Williamson; +Cc: xen-devel
Mark Williamson wrote:
> Rather than trying to sample how many pCPUs the domain gets to run on, perhaps
> it would be better to monitor the total time its vCPUs are being scheduled
> *somewhere*. Then you can just compare whether your pCPU time allowance
> corresponds to your SLA.
>
> This way the domain still doesn't need to know which specific CPUs it gets
> scheduled on, but you can get all the information you need?
VMware for example handles this information in a similar way. Having the
total consumed CPU time (cpu_time) for a VM inside the VM (which is only
available in dom0 at the moment) one can calculate how many computing
power is available.
Lets consider, that my VM has 2 VCPUs configured. The VM furthermore is
configured to run on 2 physical CPUs, and this is also the SLA between
the hosting provider and the customer. But, another VM is also running
on these 2 physical CPU's. Having the possibility to check the cpu_time
on a frequent base, e.g. seconds, one would be able to check, if the
guaranteed phsical CPUs are available. To check this, simply generate a
high load inside the VM, and if the cpu_time increases every second by
the value of 2, both physical CPUs are available. In case the cpu_time
only increases by the value on 1 or 1,5 it is clear, that the SLA is not
fullfilled.
Is it possbile to provide this information to the domU (if explicitly
enabled in dom0)?
>> The third possibility is to setup a dedicated VM which interacts between
>> all available dom0's and all available domU's. But this is the last
>> possible solution I'd prefer, because a third instance to manage is a
>> third source of errors.
> I'm still not sure why the domU would need to know the host's hostname though?
> Or is it just as a fallback if the CPU data isn't directly available?
This is meant to be the fallback, in case it is not possible to get any
data from the hypervisor. I'm not sure, but having HVM setups running,
getting data might be very difficult. Therefore, having a fallback
(which can be turned on, but will be turned off by default) can be very
convenient.
> Cheers,
> Mark
Cheers,
Hannes
--
* Hannes Kuehnemund
* SAP Linuxlab
* SAP AG
* Dietmar Hopp Allee 16
* 69190 Walldorf, Germany
T +49 6227 7-40615
F +49 6227 78-34584
mailto: hannes.kuehnemund@sap.com
http://www.sap.com
Sitz der Gesellschaft/Registered Office: Walldorf, Germany
Vorstand/SAP Executive Board: Henning Kagermann (Sprecher/CEO),
Léo Apotheker (stellvertretender Sprecher/Deputy CEO),
Werner Brandt, Claus Heinrich, Gerhard Oswald, Peter Zencke
Vorsitzender des Aufsichtsrats/Chairperson of the SAP
Supervisory Board: Hasso Plattner
Registergericht/Commercial Register Mannheim No HRB 350269
Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder
sonstige vertrauliche Informationen enthalten. Sollten Sie
diese E-Mail irrtümlich erhalten haben, ist Ihnen eine
Kenntnisnahme des Inhalts, eine Vervielfältigung oder
Weitergabe der E-Mail ausdrücklich untersagt. Bitte
benachrichtigen Sie uns und vernichten Sie die empfangene
E-Mail. Vielen Dank.
This e-mail may contain trade secrets or privileged,
undisclosed, or otherwise confidential information. If you have
received this e-mail in error, you are hereby notified that any
review, copying, or distribution of it is strictly prohibited.
Please inform us immediately and destroy the original
transmittal. Thank you for your cooperation.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-06-19 14:51 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-24 15:38 host information in domU over /proc or /sys filesystem Hannes Kuehnemund
2007-05-28 19:11 ` Mark Williamson
2007-05-29 16:04 ` Hannes Kuehnemund
2007-05-29 17:42 ` Mark Williamson
2007-06-19 14:51 ` Hannes Kuehnemund
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.