Re: [Engine-devel] Proposal to add Shireesh Anjal as maintainer to engine-gluster

2012-12-05 Thread Omer Frenkel


- Original Message -
 From: Itamar Heim ih...@redhat.com
 To: engine-devel@ovirt.org
 Sent: Friday, November 30, 2012 1:28:51 PM
 Subject: [Engine-devel] Proposal to add Shireesh Anjal as maintainer to   
 engine-gluster
 
 Shireesh has been working on the engine gluster support for the past
 year, covering patches and leading reviews of the various engine
 gluster
 patches.
 
 I'd like to propose a new sub-component of the engine for the gluster
 module, adding shireesh as its maintainer.
 

+1

 Thanks,
 Itamar
 ___
 Engine-devel mailing list
 Engine-devel@ovirt.org
 http://lists.ovirt.org/mailman/listinfo/engine-devel
 

___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] Proposal to add Shireesh Anjal as maintainer to engine-gluster

2012-12-05 Thread Yair Zaslavsky


- Original Message -
 From: Omer Frenkel ofren...@redhat.com
 To: Itamar Heim ih...@redhat.com
 Cc: engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 10:29:34 AM
 Subject: Re: [Engine-devel] Proposal to add Shireesh Anjal as maintainer  
 to  engine-gluster
 
 
 
 - Original Message -
  From: Itamar Heim ih...@redhat.com
  To: engine-devel@ovirt.org
  Sent: Friday, November 30, 2012 1:28:51 PM
  Subject: [Engine-devel] Proposal to add Shireesh Anjal as
  maintainer to   engine-gluster
  
  Shireesh has been working on the engine gluster support for the
  past
  year, covering patches and leading reviews of the various engine
  gluster
  patches.
  
  I'd like to propose a new sub-component of the engine for the
  gluster
  module, adding shireesh as its maintainer.
  
 
 +1
+1
 
  Thanks,
  Itamar
  ___
  Engine-devel mailing list
  Engine-devel@ovirt.org
  http://lists.ovirt.org/mailman/listinfo/engine-devel
  
 
 ___
 Engine-devel mailing list
 Engine-devel@ovirt.org
 http://lists.ovirt.org/mailman/listinfo/engine-devel
 
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


[Engine-devel] host cpu feature

2012-12-05 Thread Laszlo Hornyak
Hi,

CPU-Host support allows the virtual machines to see and utilize the host's CPU 
flags, this enables better performance in VM's, at the price of worse 
portablity.

http://www.ovirt.org/Features/Cpu-host_Support

Your feedback is welcome!

Thank you,
Laszlo
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] [Users] RHEVM 3.1 DB Schema diagram

2012-12-05 Thread Eli Mesika


- Original Message -
 From: Allon Mureinik amure...@redhat.com
 To: Eli Mesika emes...@redhat.com
 Cc: users us...@ovirt.org, engine-devel engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 9:21:34 AM
 Subject: Re: [Users] RHEVM 3.1 DB Schema diagram
 
 Nice!
 
 How are the names of the blocks generated?
 Some names strike me a bit there (e.g., images is in the
 storage_domains_static block).

Auto-generated ... (nice work IMHO)

 
 - Original Message -
  From: Eli Mesika emes...@redhat.com
  To: users us...@ovirt.org, engine-devel
  engine-devel@ovirt.org
  Sent: Tuesday, December 4, 2012 7:12:28 PM
  Subject: [Users] RHEVM 3.1 DB Schema diagram
  
  Hi
  
  There were some requests on the users list to get our DB schema
  diagram.
  After looking a while for a tool for generating that , I have found
  the DBSchema tool.
  
  Please find attached the RHEVM 3.1 DB Schema diagram.
  
  I intend to get it into the oVirt site but currently it's too large
  and does not fit well.
  
  Regards
  
  Eli Mesika
  
  ___
  Users mailing list
  us...@ovirt.org
  http://lists.ovirt.org/mailman/listinfo/users
  
 
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 01:46 PM, Laszlo Hornyak wrote:


- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 12:23:47 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 12:32 PM, Laszlo Hornyak wrote:

Hi,

CPU-Host support allows the virtual machines to see and utilize the
host's CPU flags, this enables better performance in VM's, at the
price of worse portablity.

http://www.ovirt.org/Features/Cpu-host_Support

Your feedback is welcome!

Thank you,
Laszlo
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel

- I assume that when you allow migration, you'd use host-model? This
is
not clear from the design. It seems like we VDSM developers can
choose
to use either this or passthrough, while in practice we should
support both.

If AllowMigrateCPUHost is set to true (in case you have the same cpu model 
everywhere in your DC) migration of such hsots will be enabled. Otherwise it 
will not be enabled.


It's not going to help just enabling it - you need to use 'host-model' 
and not 'host-passthrough', so there'll be a reasonable chance to 
succeed the migration, AFAIK.





- I'm still convinced and commented on both relevat oVirt and libvirt
BZs that we need to add x2apic support to the CPU, regardless of what
the host CPU exposes.
AFAIK, the KVM developers agree with me.

Not quite sure how is this related... could you send some URL's for the 
bugreports?


It's related because x2apic improves performance, and so does '-cpu 
host', but that doesn't enable x2apic implicitly.

https://bugzilla.redhat.com/show_bug.cgi?id=838469#c7
https://bugzilla.redhat.com/show_bug.cgi?id=700272#c28

Y.




Y.




___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 03:39 PM, Laszlo Hornyak wrote:


- Original Message -

From: Dan Kenigsberg dan...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Yaniv Kaul yk...@redhat.com, engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 1:55:19 PM
Subject: Re: [Engine-devel] host cpu feature

On Wed, Dec 05, 2012 at 06:46:09AM -0500, Laszlo Hornyak wrote:


- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 12:23:47 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 12:32 PM, Laszlo Hornyak wrote:

Hi,

CPU-Host support allows the virtual machines to see and utilize
the
host's CPU flags, this enables better performance in VM's, at
the
price of worse portablity.

http://www.ovirt.org/Features/Cpu-host_Support

Your feedback is welcome!

Thank you,
Laszlo
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel

- I assume that when you allow migration, you'd use host-model?
This
is
not clear from the design. It seems like we VDSM developers can
choose
to use either this or passthrough, while in practice we should
support both.

I join Kaul's question: it is an ovirt-level question whether
hostPassthrough or hostModel or both should be supported. It should
not
be a unilateral vdsm decision.

Ah, possibly misunderstanding, I did not mean that VDSM should decide whether 
to use host-passthrough or host-model. The engine should decide.
I meant _you_ should decide which version of vdsm api modification do you want 
:)


If AllowMigrateCPUHost is set to true (in case you have the same
cpu model everywhere in your DC) migration of such hsots will be
enabled. Otherwise it will not be enabled.

What is the breadth of AllowMigrateCPUHost? Engine wide? Per DC? Per
cluster?

I thought of eninge-wide. The of course you can have different models in two 
different DC, but they should be unique in one.
We can add this to DC or cluster level, imho it would be just another checkbox 
on the UI that most users would not use.


I favor the latter; a user may have a cluster of exact-same hosts,
where
hostcpu migration is allowed, and other cluster where it is forbiden.

The nice thing about hostModel (unlike hostPassthrough) is that once
we
created the VM we can migrate it to stronger hosts, and back to the
original host. I suppose that it complicates the scheduler.

Yes with host-model you get the features that libvirt handles. In such cases 
the engine could decide, if you want this functionality. Well the scheduler 
architecture is just being reinvented.

For the host-passthrough, I think the AllowMigrateCPUHost configuration option 
would be a simple decision for the administrator: set it to true if all hosts 
are uniform. If it is not set to true, then we will not allow migration of such 
VMs.


That's not what I understood from libvirt's documentation. I understood 
that if you want host+migration, you need to use host-model. Otherwise - 
host-passthrough.

Y.




- I'm still convinced and commented on both relevat oVirt and
libvirt
BZs that we need to add x2apic support to the CPU, regardless of
what
the host CPU exposes.
AFAIK, the KVM developers agree with me.

Not quite sure how is this related... could you send some URL's for
the bugreports?


___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Laszlo Hornyak


- Original Message -
 From: Yaniv Kaul yk...@redhat.com
 To: Laszlo Hornyak lhorn...@redhat.com
 Cc: Dan Kenigsberg dan...@redhat.com, engine-devel 
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 2:45:46 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On 12/05/2012 03:39 PM, Laszlo Hornyak wrote:
 
  - Original Message -
  From: Dan Kenigsberg dan...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: Yaniv Kaul yk...@redhat.com, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 1:55:19 PM
  Subject: Re: [Engine-devel] host cpu feature
 
  On Wed, Dec 05, 2012 at 06:46:09AM -0500, Laszlo Hornyak wrote:
 
  - Original Message -
  From: Yaniv Kaul yk...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 12:23:47 PM
  Subject: Re: [Engine-devel] host cpu feature
 
  On 12/05/2012 12:32 PM, Laszlo Hornyak wrote:
  Hi,
 
  CPU-Host support allows the virtual machines to see and utilize
  the
  host's CPU flags, this enables better performance in VM's, at
  the
  price of worse portablity.
 
  http://www.ovirt.org/Features/Cpu-host_Support
 
  Your feedback is welcome!
 
  Thank you,
  Laszlo
  ___
  Engine-devel mailing list
  Engine-devel@ovirt.org
  http://lists.ovirt.org/mailman/listinfo/engine-devel
  - I assume that when you allow migration, you'd use host-model?
  This
  is
  not clear from the design. It seems like we VDSM developers can
  choose
  to use either this or passthrough, while in practice we should
  support both.
  I join Kaul's question: it is an ovirt-level question whether
  hostPassthrough or hostModel or both should be supported. It
  should
  not
  be a unilateral vdsm decision.
  Ah, possibly misunderstanding, I did not mean that VDSM should
  decide whether to use host-passthrough or host-model. The engine
  should decide.
  I meant _you_ should decide which version of vdsm api modification
  do you want :)
 
  If AllowMigrateCPUHost is set to true (in case you have the same
  cpu model everywhere in your DC) migration of such hsots will be
  enabled. Otherwise it will not be enabled.
  What is the breadth of AllowMigrateCPUHost? Engine wide? Per DC?
  Per
  cluster?
  I thought of eninge-wide. The of course you can have different
  models in two different DC, but they should be unique in one.
  We can add this to DC or cluster level, imho it would be just
  another checkbox on the UI that most users would not use.
 
  I favor the latter; a user may have a cluster of exact-same hosts,
  where
  hostcpu migration is allowed, and other cluster where it is
  forbiden.
 
  The nice thing about hostModel (unlike hostPassthrough) is that
  once
  we
  created the VM we can migrate it to stronger hosts, and back to
  the
  original host. I suppose that it complicates the scheduler.
  Yes with host-model you get the features that libvirt handles. In
  such cases the engine could decide, if you want this
  functionality. Well the scheduler architecture is just being
  reinvented.
 
  For the host-passthrough, I think the AllowMigrateCPUHost
  configuration option would be a simple decision for the
  administrator: set it to true if all hosts are uniform. If it is
  not set to true, then we will not allow migration of such VMs.
 
 That's not what I understood from libvirt's documentation. I

You may be right, could you send an URL to that point of the documentation or 
copy-paste?

 understood
 that if you want host+migration, you need to use host-model.
 Otherwise -
 host-passthrough.
 Y.
 
 
  - I'm still convinced and commented on both relevat oVirt and
  libvirt
  BZs that we need to add x2apic support to the CPU, regardless of
  what
  the host CPU exposes.
  AFAIK, the KVM developers agree with me.
  Not quite sure how is this related... could you send some URL's
  for
  the bugreports?
 
 
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Dan Kenigsberg
On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
 On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
 
 
 The nice thing about hostModel (unlike hostPassthrough) is that
 once
 we
 created the VM we can migrate it to stronger hosts, and back to
 the
 original host. I suppose that it complicates the scheduler.
 Yes with host-model you get the features that libvirt handles. In
 such cases the engine could decide, if you want this
 functionality. Well the scheduler architecture is just being
 reinvented.
 
 For the host-passthrough, I think the AllowMigrateCPUHost
 configuration option would be a simple decision for the
 administrator: set it to true if all hosts are uniform.

If it is THAT simple, Engine could take this decision without human
intervension.

 If it is
 not set to true, then we will not allow migration of such VMs.
 That's not what I understood from libvirt's documentation. I
 You may be right, could you send an URL to that point of the documentation 
 or copy-paste?
 
 The link I followed from your feature page:
 http://libvirt.org/formatdomain.html#elementsCPU :
 
 host-model
 The host-model mode is essentially a shortcut to copying host CPU
 definition from capabilities XML into domain XML. Since the CPU
 definition is copied just before starting a domain, exactly the same
 XML can be used on different hosts while still providing the best
 guest CPU each host supports. Neither match attribute nor any
 feature elements can be used in this mode. Specifying CPU model is
 not supported either, but model's fallback attribute may still be
 used. Libvirt does not model every aspect of each CPU so the guest
 CPU will not match the host CPU exactly. On the other hand, the ABI
 provided to the guest is reproducible. During migration, complete
 CPU model definition is transferred to the destination host so the
 migrated guest will see exactly the same CPU model even if the
 destination host contains more capable CPUs for the running instance
 of the guest; but shutting down and restarting the guest may present
 different hardware to the guest according to the capabilities of the
 new host.
 host-passthrough
 With this mode, the CPU visible to the guest should be exactly the
 same as the host CPU even in the aspects that libvirt does not
 understand. Though the downside of this mode is that the guest
 environment cannot be reproduced on different hardware. Thus, if you
 hit any bugs, you are on your own.

That's exactly where AllowMigrateCPUHost fits well: when a user ticks
this for a cluster he says yeah, I like to be on my own.
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Laszlo Hornyak


- Original Message -
 From: Yaniv Kaul yk...@redhat.com
 To: Laszlo Hornyak lhorn...@redhat.com
 Cc: Dan Kenigsberg dan...@redhat.com, engine-devel 
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 3:05:00 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 
 On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
 
 
 - Original Message -
 
 From: Yaniv Kaul yk...@redhat.com To: Laszlo Hornyak
 lhorn...@redhat.com Cc: Dan Kenigsberg dan...@redhat.com ,
 engine-devel engine-devel@ovirt.org Sent: Wednesday, December 5,
 2012 2:45:46 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On 12/05/2012 03:39 PM, Laszlo Hornyak wrote:
 
 - Original Message -
 
 From: Dan Kenigsberg dan...@redhat.com To: Laszlo Hornyak
 lhorn...@redhat.com Cc: Yaniv Kaul yk...@redhat.com ,
 engine-devel engine-devel@ovirt.org Sent: Wednesday, December 5,
 2012 1:55:19 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On Wed, Dec 05, 2012 at 06:46:09AM -0500, Laszlo Hornyak wrote:
 
 - Original Message -
 
 From: Yaniv Kaul yk...@redhat.com To: Laszlo Hornyak
 lhorn...@redhat.com Cc: engine-devel engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 12:23:47 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On 12/05/2012 12:32 PM, Laszlo Hornyak wrote:
 
 Hi,
 
 CPU-Host support allows the virtual machines to see and utilize
 the
 host's CPU flags, this enables better performance in VM's, at
 the
 price of worse portablity.
 http://www.ovirt.org/Features/Cpu-host_Support Your feedback is
 welcome!
 
 Thank you,
 Laszlo
 ___
 Engine-devel mailing list Engine-devel@ovirt.org
 http://lists.ovirt.org/mailman/listinfo/engine-devel - I assume that
 when you allow migration, you'd use host-model?
 This
 is
 not clear from the design. It seems like we VDSM developers can
 choose
 to use either this or passthrough, while in practice we should
 support both. I join Kaul's question: it is an ovirt-level question
 whether
 hostPassthrough or hostModel or both should be supported. It
 should
 not
 be a unilateral vdsm decision. Ah, possibly misunderstanding, I did
 not mean that VDSM should
 decide whether to use host-passthrough or host-model. The engine
 should decide.
 I meant _you_ should decide which version of vdsm api modification
 do you want :)
 
 
 
 If AllowMigrateCPUHost is set to true (in case you have the same
 cpu model everywhere in your DC) migration of such hsots will be
 enabled. Otherwise it will not be enabled. What is the breadth of
 AllowMigrateCPUHost? Engine wide? Per DC?
 Per
 cluster? I thought of eninge-wide. The of course you can have
 different
 models in two different DC, but they should be unique in one.
 We can add this to DC or cluster level, imho it would be just
 another checkbox on the UI that most users would not use.
 
 I favor the latter; a user may have a cluster of exact-same hosts,
 where
 hostcpu migration is allowed, and other cluster where it is
 forbiden.
 
 The nice thing about hostModel (unlike hostPassthrough) is that
 once
 we
 created the VM we can migrate it to stronger hosts, and back to
 the
 original host. I suppose that it complicates the scheduler. Yes with
 host-model you get the features that libvirt handles. In
 such cases the engine could decide, if you want this
 functionality. Well the scheduler architecture is just being
 reinvented.
 
 For the host-passthrough, I think the AllowMigrateCPUHost
 configuration option would be a simple decision for the
 administrator: set it to true if all hosts are uniform. If it is
 not set to true, then we will not allow migration of such VMs. That's
 not what I understood from libvirt's documentation. I You may be
 right, could you send an URL to that point of the documentation or
 copy-paste?
 The link I followed from your feature page:
 http://libvirt.org/formatdomain.html#elementsCPU :
 
 host-model
 The host-model mode is essentially a shortcut to copying host CPU
 definition from capabilities XML into domain XML. Since the CPU
 definition is copied just before starting a domain, exactly the same
 XML can be used on different hosts while still providing the best
 guest CPU each host supports. Neither match attribute nor any
 feature elements can be used in this mode. Specifying CPU model is
 not supported either, but model's fallback attribute may still be
 used. Libvirt does not model every aspect of each CPU so the guest
 CPU will not match the host CPU exactly. On the other hand, the ABI
 provided to the guest is reproducible. During migration, complete
 CPU model definition is transferred to the destination host so the
 migrated guest will see exactly the same CPU model even if the
 destination host contains more capable CPUs for the running instance
 of the guest; but shutting down and restarting the guest may present
 different hardware to the guest according to the capabilities of the
 new host.
 host-passthrough
 With this mode, the CPU visible to 

Re: [Engine-devel] [vdsm] VDSM tasks, the future

2012-12-05 Thread Saggi Mizrahi
I'm sorry but your email client messed up the formatting and I can't figure out 
what are you comments.
Could you please use text only emails.

- Original Message -
 From: ybronhei ybron...@redhat.com
 To: Saggi Mizrahi smizr...@redhat.com
 Cc: Adam Litke a...@us.ibm.com, engine-devel engine-devel@ovirt.org, 
 VDSM Project Development
 vdsm-de...@lists.fedorahosted.org
 Sent: Wednesday, December 5, 2012 8:37:23 AM
 Subject: Re: [vdsm] VDSM tasks, the future
 
 
 On 12/05/2012 12:20 AM, Saggi Mizrahi wrote:
 
 
 As the only subsystem to use asynchronous tasks until now is the
 storage subsystem I suggest going over how
 I suggest tackling task creation, task stop, task remove and task
 recovery.
 Other subsystem can create similar mechanisms depending on their
 needs.
 
 There is no way of avoiding it, different types of tasks need
 different ways of tracking\recovering from them.
 network should always auto-recover because it can't get a please
 fix command if the network is down.
 Storage on the other hand should never start operations on it's own
 because it might take up valuable resources from the host.
 Tasks that need to be tracked on a single host, 2 hosts, or the
 entire cluster need to have their own APIs.
 VM configuration never persist across reboots, networking sometimes
 persists and storage always persists.
 This means that recovery procedures (from the managers point of view)
 need to be vastly different.
 Add policy, resource allocation, and error flows you see that VDSM
 doesn't have nearly as much information to deal with the tasks.
 
 - Original Message -
 
 From: Adam Litke a...@us.ibm.com To: Saggi Mizrahi
 smizr...@redhat.com Cc: VDSM Project Development
 vdsm-de...@lists.fedorahosted.org , engine-devel
 engine-devel@ovirt.org , Ayal
 Baron aba...@redhat.com , Barak Azulay bazu...@redhat.com ,
 Shireesh Anjal san...@redhat.com Sent: Tuesday, December 4, 2012
 3:50:28 PM
 Subject: Re: VDSM tasks, the future
 
 On Tue, Dec 04, 2012 at 10:35:01AM -0500, Saggi Mizrahi wrote:
 
 Because I started hinting about how VDSM tasks are going to look
 going forward
 I thought it's better I'll just write everything in an email so we
 can talk
 about it in context.  This is not set in stone and I'm still
 debating things
 myself but it's very close to being done. Don't debate them yourself,
 debate them here!  Even better, propose
 your idea in
 schema form to show how a command might work exactly. I don't like
 throwing ideas in the air It can be much easier to understand the
 flow of a task in vdsm and outside vdsm by a small schema, mainly
 for the each task's states.
 To define the flow of a task you can separate between type of tasks
 (network, storage, vms, or else), we should have task's states that
 clarify if the task can be recovered or not, can be canceled or not
 and inc..
 
 Canceling\Aborting\Reverting states should be more clarified and not
 every state can lead to all types of states.
 I tries to figure how task flow works today in vdsm, and this is what
 I've got - http://wiki.ovirt.org/Vdsm_tasks
 
 
 
 
 
 
 - Everything is asynchronous.  The nature of message based
 communication is
 that you can't have synchronous operations.  This is not really
 debatable
 because it's just how TCP\AMQP\messaging works. Can you show how a
 traditionally synchronous command might work?
  Let's take
 Host.getVmList as an example. The same as it works today, it's all a
 matter of how you wrap the transport layer.
 You will send a json-rpc request and wait for a response with the
 same id.
 
 As for the bindings, there are a lot of way we can tackle that.
 Always wait for the response and simulate synchronous behavior.
 Make every method return an object to track the task.
 task = host.getVmList()
 if not task.wait(1):
 task.cancel()
 else:
 res = task.result() It looks like traditional timeout.. why not
 to split blocking actions and non-blocking actions, non-blocking
 action will supply callback function to return to if the task
 fails or success. for example:
 
 createAsyncTask(host.getVmList, params, timeout=30,
 callbackGetVmList)
 
 Instead of using the dispatcher? Do you want to keep the dispatcher
 concept?
 
 
 
 Have it both ways (it's auto generated anyway) and have
 list = host.getVmList()
 task = host.getVmList_async()
 
 Have a high level and low level interfaces.
 host = host()
 host.connect(tcp://host:3233)
 req = host.sendRequest(123213, getVmList, [])
 if not req.wait(1):

 
 shost = SynchHost(host)
 shost.getVmList() # Actually wraps a request object
 ahost = AsyncHost(host)
 task = getVmList() # Actually wraps a request object
 
 
 
 - Task IDs will be decided by the caller.  This is how json-rpc
 works and also
 makes sense because no the engine can track the task without
 needing to have a
 stage where we give it the task ID back.  IDs are reusable as long
 as no one
 else is using them at the time so they can be used for
 

Re: [Engine-devel] [vdsm] VDSM tasks, the future

2012-12-05 Thread ybronhei

On 12/05/2012 12:20 AM, Saggi Mizrahi wrote:

As the only subsystem to use asynchronous tasks until now is the storage 
subsystem I suggest going over how
I suggest tackling task creation, task stop, task remove and task recovery.
Other subsystem can create similar mechanisms depending on their needs.

There is no way of avoiding it, different types of tasks need different ways of 
tracking\recovering from them.
network should always auto-recover because it can't get a please fix command 
if the network is down.
Storage on the other hand should never start operations on it's own because it 
might take up valuable resources from the host.
Tasks that need to be tracked on a single host, 2 hosts, or the entire cluster 
need to have their own APIs.
VM configuration never persist across reboots, networking sometimes persists 
and storage always persists.
This means that recovery procedures (from the managers point of view) need to 
be vastly different.
Add policy, resource allocation, and error flows you see that VDSM doesn't have 
nearly as much information to deal with the tasks.

- Original Message -

From: Adam Litke a...@us.ibm.com
To: Saggi Mizrahi smizr...@redhat.com
Cc: VDSM Project Development vdsm-de...@lists.fedorahosted.org, engine-devel 
engine-devel@ovirt.org, Ayal
Baron aba...@redhat.com, Barak Azulay bazu...@redhat.com, Shireesh Anjal 
san...@redhat.com
Sent: Tuesday, December 4, 2012 3:50:28 PM
Subject: Re: VDSM tasks, the future

On Tue, Dec 04, 2012 at 10:35:01AM -0500, Saggi Mizrahi wrote:

Because I started hinting about how VDSM tasks are going to look
going forward
I thought it's better I'll just write everything in an email so we
can talk
about it in context.  This is not set in stone and I'm still
debating things
myself but it's very close to being done.

Don't debate them yourself, debate them here!  Even better, propose
your idea in
schema form to show how a command might work exactly.

I don't like throwing ideas in the air
It can be much easier to understand the flow of a task in vdsm and 
outside vdsm by a small schema, mainly for the each task's states.
To define the flow of a task you can separate between type of tasks 
(network, storage, vms, or else), we should have task's states that 
clarify if the task can be recovered or not, can be canceled or not and 
inc..


Canceling\Aborting\Reverting states should be more clarified and not 
every state can lead to all types of states.
I tries to figure how task flow works today in vdsm, and this is what 
I've got - http://wiki.ovirt.org/Vdsm_tasks

- Everything is asynchronous.  The nature of message based
communication is
that you can't have synchronous operations.  This is not really
debatable
because it's just how TCP\AMQP\messaging works.

Can you show how a traditionally synchronous command might work?
  Let's take
Host.getVmList as an example.

The same as it works today, it's all a matter of how you wrap the transport 
layer.
You will send a json-rpc request and wait for a response with the same id.

As for the bindings, there are a lot of way we can tackle that.
Always wait for the response and simulate synchronous behavior.
Make every method return an object to track the task.
task = host.getVmList()
if not task.wait(1):
 task.cancel()
else:
 res = task.result()
It looks like traditional timeout.. why not to split blocking actions 
and non-blocking actions, non-blocking action will supply callback 
function to return to if the task fails or success. for example:


createAsyncTask(host.getVmList, params, timeout=30, callbackGetVmList)

Instead of using the dispatcher? Do you want to keep the dispatcher concept?


Have it both ways (it's auto generated anyway) and have
list = host.getVmList()
task = host.getVmList_async()

Have a high level and low level interfaces.
host = host()
host.connect(tcp://host:3233)
req = host.sendRequest(123213, getVmList, [])
if not req.wait(1):


shost = SynchHost(host)
shost.getVmList() # Actually wraps a request object
ahost = AsyncHost(host)
task = getVmList() # Actually wraps a request object

- Task IDs will be decided by the caller.  This is how json-rpc
works and also
makes sense because no the engine can track the task without
needing to have a
stage where we give it the task ID back.  IDs are reusable as long
as no one
else is using them at the time so they can be used for
synchronizing
operations between clients (making sure a command is only executed
once on a
specific host without locking).

- Tasks are transient If VDSM restarts it forgets all the task
information.
There are 2 ways to have persistent tasks: 1. The task creates an
object that
you can continue work on in VDSM.  The new storage does that by the
fact that
copyImage() returns one the target volume has been created but
before the data
has been fully copied.  From that moment on the stat of the copy
can be
queried from any host using getImageStatus() and the specific copy
operation
can be queried 

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Laszlo Hornyak


- Original Message -
 From: Dan Kenigsberg dan...@redhat.com
 To: Yaniv Kaul yk...@redhat.com
 Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel 
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 3:22:18 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
  On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
  
  
  The nice thing about hostModel (unlike hostPassthrough) is that
  once
  we
  created the VM we can migrate it to stronger hosts, and back to
  the
  original host. I suppose that it complicates the scheduler.
  Yes with host-model you get the features that libvirt handles.
  In
  such cases the engine could decide, if you want this
  functionality. Well the scheduler architecture is just being
  reinvented.
  
  For the host-passthrough, I think the AllowMigrateCPUHost
  configuration option would be a simple decision for the
  administrator: set it to true if all hosts are uniform.
 
 If it is THAT simple, Engine could take this decision without human
 intervension.

Is there a way engine can figure out if the cpu-models in all the hosts are the 
same?
I mean even if some host flags are not handled by libvirt and therefore vdsm 
and engine...
So I would really need that permission from the user.

 
  If it is
  not set to true, then we will not allow migration of such VMs.
  That's not what I understood from libvirt's documentation. I
  You may be right, could you send an URL to that point of the
  documentation or copy-paste?
  
  The link I followed from your feature page:
  http://libvirt.org/formatdomain.html#elementsCPU :
  
  host-model
  The host-model mode is essentially a shortcut to copying host CPU
  definition from capabilities XML into domain XML. Since the CPU
  definition is copied just before starting a domain, exactly the
  same
  XML can be used on different hosts while still providing the best
  guest CPU each host supports. Neither match attribute nor any
  feature elements can be used in this mode. Specifying CPU model is
  not supported either, but model's fallback attribute may still be
  used. Libvirt does not model every aspect of each CPU so the guest
  CPU will not match the host CPU exactly. On the other hand, the ABI
  provided to the guest is reproducible. During migration, complete
  CPU model definition is transferred to the destination host so the
  migrated guest will see exactly the same CPU model even if the
  destination host contains more capable CPUs for the running
  instance
  of the guest; but shutting down and restarting the guest may
  present
  different hardware to the guest according to the capabilities of
  the
  new host.
  host-passthrough
  With this mode, the CPU visible to the guest should be exactly the
  same as the host CPU even in the aspects that libvirt does not
  understand. Though the downside of this mode is that the guest
  environment cannot be reproduced on different hardware. Thus, if
  you
  hit any bugs, you are on your own.
 
 That's exactly where AllowMigrateCPUHost fits well: when a user ticks
 this for a cluster he says yeah, I like to be on my own.
 

cpu mode=host-passthrough migration: I talked to the libvirt guys and they 
said it is OK if the hardware and the software are the same, and it will work, 
but they would not recommend.

So if they do not recommend it, I would drop this from the feature spec. Anyone 
against it?

Laszlo
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:


- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Dan Kenigsberg dan...@redhat.com, engine-devel 
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 2:45:46 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 03:39 PM, Laszlo Hornyak wrote:

- Original Message -

From: Dan Kenigsberg dan...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Yaniv Kaul yk...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 1:55:19 PM
Subject: Re: [Engine-devel] host cpu feature

On Wed, Dec 05, 2012 at 06:46:09AM -0500, Laszlo Hornyak wrote:

- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 12:23:47 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 12:32 PM, Laszlo Hornyak wrote:

Hi,

CPU-Host support allows the virtual machines to see and utilize
the
host's CPU flags, this enables better performance in VM's, at
the
price of worse portablity.

http://www.ovirt.org/Features/Cpu-host_Support

Your feedback is welcome!

Thank you,
Laszlo
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel

- I assume that when you allow migration, you'd use host-model?
This
is
not clear from the design. It seems like we VDSM developers can
choose
to use either this or passthrough, while in practice we should
support both.

I join Kaul's question: it is an ovirt-level question whether
hostPassthrough or hostModel or both should be supported. It
should
not
be a unilateral vdsm decision.

Ah, possibly misunderstanding, I did not mean that VDSM should
decide whether to use host-passthrough or host-model. The engine
should decide.
I meant _you_ should decide which version of vdsm api modification
do you want :)


If AllowMigrateCPUHost is set to true (in case you have the same
cpu model everywhere in your DC) migration of such hsots will be
enabled. Otherwise it will not be enabled.

What is the breadth of AllowMigrateCPUHost? Engine wide? Per DC?
Per
cluster?

I thought of eninge-wide. The of course you can have different
models in two different DC, but they should be unique in one.
We can add this to DC or cluster level, imho it would be just
another checkbox on the UI that most users would not use.


I favor the latter; a user may have a cluster of exact-same hosts,
where
hostcpu migration is allowed, and other cluster where it is
forbiden.

The nice thing about hostModel (unlike hostPassthrough) is that
once
we
created the VM we can migrate it to stronger hosts, and back to
the
original host. I suppose that it complicates the scheduler.

Yes with host-model you get the features that libvirt handles. In
such cases the engine could decide, if you want this
functionality. Well the scheduler architecture is just being
reinvented.

For the host-passthrough, I think the AllowMigrateCPUHost
configuration option would be a simple decision for the
administrator: set it to true if all hosts are uniform. If it is
not set to true, then we will not allow migration of such VMs.

That's not what I understood from libvirt's documentation. I

You may be right, could you send an URL to that point of the documentation or 
copy-paste?


The link I followed from your feature page: 
http://libvirt.org/formatdomain.html#elementsCPU :


host-model
The host-model mode is essentially a shortcut to copying host CPU 
definition from capabilities XML into domain XML. Since the CPU 
definition is copied just before starting a domain, exactly the same XML 
can be used on different hosts while still providing the best guest CPU 
each host supports. Neither match attribute nor any feature elements can 
be used in this mode. Specifying CPU model is not supported either, but 
model's fallback attribute may still be used. Libvirt does not model 
every aspect of each CPU so the guest CPU will not match the host CPU 
exactly. On the other hand, the ABI provided to the guest is 
reproducible. During migration, complete CPU model definition is 
transferred to the destination host so the migrated guest will see 
exactly the same CPU model even if the destination host contains more 
capable CPUs for the running instance of the guest; but shutting down 
and restarting the guest may present different hardware to the guest 
according to the capabilities of the new host.

host-passthrough
With this mode, the CPU visible to the guest should be exactly the same 
as the host CPU even in the aspects that libvirt does not understand. 
Though the downside of this mode is that the guest environment cannot be 
reproduced on different hardware. Thus, if you hit any bugs, you are on 
your own. Neither model nor feature elements are allowed in this mode.



Y.




understood
that if you want 

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:


- Original Message -

From: Dan Kenigsberg dan...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel 
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 3:22:18 PM
Subject: Re: [Engine-devel] host cpu feature

On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:

On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:

The nice thing about hostModel (unlike hostPassthrough) is that
once
we
created the VM we can migrate it to stronger hosts, and back to
the
original host. I suppose that it complicates the scheduler.

Yes with host-model you get the features that libvirt handles.
In
such cases the engine could decide, if you want this
functionality. Well the scheduler architecture is just being
reinvented.

For the host-passthrough, I think the AllowMigrateCPUHost
configuration option would be a simple decision for the
administrator: set it to true if all hosts are uniform.

If it is THAT simple, Engine could take this decision without human
intervension.

Is there a way engine can figure out if the cpu-models in all the hosts are the 
same?
I mean even if some host flags are not handled by libvirt and therefore vdsm 
and engine...
So I would really need that permission from the user.


If it is
not set to true, then we will not allow migration of such VMs.

That's not what I understood from libvirt's documentation. I

You may be right, could you send an URL to that point of the
documentation or copy-paste?

The link I followed from your feature page:
http://libvirt.org/formatdomain.html#elementsCPU :

host-model
The host-model mode is essentially a shortcut to copying host CPU
definition from capabilities XML into domain XML. Since the CPU
definition is copied just before starting a domain, exactly the
same
XML can be used on different hosts while still providing the best
guest CPU each host supports. Neither match attribute nor any
feature elements can be used in this mode. Specifying CPU model is
not supported either, but model's fallback attribute may still be
used. Libvirt does not model every aspect of each CPU so the guest
CPU will not match the host CPU exactly. On the other hand, the ABI
provided to the guest is reproducible. During migration, complete
CPU model definition is transferred to the destination host so the
migrated guest will see exactly the same CPU model even if the
destination host contains more capable CPUs for the running
instance
of the guest; but shutting down and restarting the guest may
present
different hardware to the guest according to the capabilities of
the
new host.
host-passthrough
With this mode, the CPU visible to the guest should be exactly the
same as the host CPU even in the aspects that libvirt does not
understand. Though the downside of this mode is that the guest
environment cannot be reproduced on different hardware. Thus, if
you
hit any bugs, you are on your own.

That's exactly where AllowMigrateCPUHost fits well: when a user ticks
this for a cluster he says yeah, I like to be on my own.


cpu mode=host-passthrough migration: I talked to the libvirt guys and they 
said it is OK if the hardware and the software are the same, and it will work, but they 
would not recommend.

So if they do not recommend it, I would drop this from the feature spec. Anyone 
against it?

Laszlo


I'm a bit against it. I don't see why it's that complicated:
Allow migration - use 'host-model'
Do not allow - use 'host-passthrough'.

The reason of why we need host-passthrough is that otherwise I suspect 
we depend on libvirt for newer features to be somehow exposed to the 
guest (not sure about it).

Y.



___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread Doron Fediuck


- Original Message -
 From: Laszlo Hornyak lhorn...@redhat.com
 To: Yaniv Kaul yk...@redhat.com
 Cc: engine-devel engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 5:24:59 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 
 - Original Message -
  From: Yaniv Kaul yk...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 4:10:13 PM
  Subject: Re: [Engine-devel] host cpu feature
  
  On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:
  
   - Original Message -
   From: Dan Kenigsberg dan...@redhat.com
   To: Yaniv Kaul yk...@redhat.com
   Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
   engine-devel@ovirt.org
   Sent: Wednesday, December 5, 2012 3:22:18 PM
   Subject: Re: [Engine-devel] host cpu feature
  
   On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
   On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
   The nice thing about hostModel (unlike hostPassthrough) is
   that
   once
   we
   created the VM we can migrate it to stronger hosts, and
   back
   to
   the
   original host. I suppose that it complicates the scheduler.
   Yes with host-model you get the features that libvirt
   handles.
   In
   such cases the engine could decide, if you want this
   functionality. Well the scheduler architecture is just being
   reinvented.
  
   For the host-passthrough, I think the AllowMigrateCPUHost
   configuration option would be a simple decision for the
   administrator: set it to true if all hosts are uniform.
   If it is THAT simple, Engine could take this decision without
   human
   intervension.
   Is there a way engine can figure out if the cpu-models in all the
   hosts are the same?
   I mean even if some host flags are not handled by libvirt and
   therefore vdsm and engine...
   So I would really need that permission from the user.
  
   If it is
   not set to true, then we will not allow migration of such
   VMs.
   That's not what I understood from libvirt's documentation. I
   You may be right, could you send an URL to that point of the
   documentation or copy-paste?
   The link I followed from your feature page:
   http://libvirt.org/formatdomain.html#elementsCPU :
  
   host-model
   The host-model mode is essentially a shortcut to copying host
   CPU
   definition from capabilities XML into domain XML. Since the CPU
   definition is copied just before starting a domain, exactly the
   same
   XML can be used on different hosts while still providing the
   best
   guest CPU each host supports. Neither match attribute nor any
   feature elements can be used in this mode. Specifying CPU model
   is
   not supported either, but model's fallback attribute may still
   be
   used. Libvirt does not model every aspect of each CPU so the
   guest
   CPU will not match the host CPU exactly. On the other hand, the
   ABI
   provided to the guest is reproducible. During migration,
   complete
   CPU model definition is transferred to the destination host so
   the
   migrated guest will see exactly the same CPU model even if the
   destination host contains more capable CPUs for the running
   instance
   of the guest; but shutting down and restarting the guest may
   present
   different hardware to the guest according to the capabilities
   of
   the
   new host.
   host-passthrough
   With this mode, the CPU visible to the guest should be exactly
   the
   same as the host CPU even in the aspects that libvirt does not
   understand. Though the downside of this mode is that the guest
   environment cannot be reproduced on different hardware. Thus,
   if
   you
   hit any bugs, you are on your own.
   That's exactly where AllowMigrateCPUHost fits well: when a user
   ticks
   this for a cluster he says yeah, I like to be on my own.
  
   cpu mode=host-passthrough migration: I talked to the libvirt
   guys
   and they said it is OK if the hardware and the software are the
   same, and it will work, but they would not recommend.
  
   So if they do not recommend it, I would drop this from the
   feature
   spec. Anyone against it?
  
   Laszlo
  
  I'm a bit against it. I don't see why it's that complicated:
  Allow migration - use 'host-model'
  Do not allow - use 'host-passthrough'.
 
 So the actual cpu capabilities would depend not only on the 'host
 cpu' checkbox, but also on the 'pinned to host' checkbox. I think
 this logical trick would be both funny and confusing from the user's
 perspective.
 
  
  The reason of why we need host-passthrough is that otherwise I
  suspect
  we depend on libvirt for newer features to be somehow exposed to
  the
  guest (not sure about it).
 
 Yes, with other words: this is a tuning feature.
 

Let's keep it simple.
1. Please remove AllowMigrateCPUHost. No reason for us to do what libvirt is 
asking to void.
2. host-passthrough should be available only for non migratable VMs.


  Y.
  
  
  
  

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Laszlo Hornyak


- Original Message -
 From: Doron Fediuck dfedi...@redhat.com
 To: Laszlo Hornyak lhorn...@redhat.com
 Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul yk...@redhat.com
 Sent: Wednesday, December 5, 2012 5:33:35 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 
 
 - Original Message -
  From: Laszlo Hornyak lhorn...@redhat.com
  To: Yaniv Kaul yk...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 5:24:59 PM
  Subject: Re: [Engine-devel] host cpu feature
  
  
  - Original Message -
   From: Yaniv Kaul yk...@redhat.com
   To: Laszlo Hornyak lhorn...@redhat.com
   Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
   engine-devel@ovirt.org
   Sent: Wednesday, December 5, 2012 4:10:13 PM
   Subject: Re: [Engine-devel] host cpu feature
   
   On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:
   
- Original Message -
From: Dan Kenigsberg dan...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 3:22:18 PM
Subject: Re: [Engine-devel] host cpu feature
   
On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
The nice thing about hostModel (unlike hostPassthrough)
is
that
once
we
created the VM we can migrate it to stronger hosts, and
back
to
the
original host. I suppose that it complicates the
scheduler.
Yes with host-model you get the features that libvirt
handles.
In
such cases the engine could decide, if you want this
functionality. Well the scheduler architecture is just
being
reinvented.
   
For the host-passthrough, I think the AllowMigrateCPUHost
configuration option would be a simple decision for the
administrator: set it to true if all hosts are uniform.
If it is THAT simple, Engine could take this decision without
human
intervension.
Is there a way engine can figure out if the cpu-models in all
the
hosts are the same?
I mean even if some host flags are not handled by libvirt and
therefore vdsm and engine...
So I would really need that permission from the user.
   
If it is
not set to true, then we will not allow migration of such
VMs.
That's not what I understood from libvirt's documentation.
I
You may be right, could you send an URL to that point of the
documentation or copy-paste?
The link I followed from your feature page:
http://libvirt.org/formatdomain.html#elementsCPU :
   
host-model
The host-model mode is essentially a shortcut to copying host
CPU
definition from capabilities XML into domain XML. Since the
CPU
definition is copied just before starting a domain, exactly
the
same
XML can be used on different hosts while still providing the
best
guest CPU each host supports. Neither match attribute nor any
feature elements can be used in this mode. Specifying CPU
model
is
not supported either, but model's fallback attribute may
still
be
used. Libvirt does not model every aspect of each CPU so the
guest
CPU will not match the host CPU exactly. On the other hand,
the
ABI
provided to the guest is reproducible. During migration,
complete
CPU model definition is transferred to the destination host
so
the
migrated guest will see exactly the same CPU model even if
the
destination host contains more capable CPUs for the running
instance
of the guest; but shutting down and restarting the guest may
present
different hardware to the guest according to the capabilities
of
the
new host.
host-passthrough
With this mode, the CPU visible to the guest should be
exactly
the
same as the host CPU even in the aspects that libvirt does
not
understand. Though the downside of this mode is that the
guest
environment cannot be reproduced on different hardware. Thus,
if
you
hit any bugs, you are on your own.
That's exactly where AllowMigrateCPUHost fits well: when a
user
ticks
this for a cluster he says yeah, I like to be on my own.
   
cpu mode=host-passthrough migration: I talked to the libvirt
guys
and they said it is OK if the hardware and the software are the
same, and it will work, but they would not recommend.
   
So if they do not recommend it, I would drop this from the
feature
spec. Anyone against it?
   
Laszlo
   
   I'm a bit against it. I don't see why it's that complicated:
   Allow migration - use 'host-model'
   Do not allow - use 'host-passthrough'.
  
  So the actual cpu capabilities would depend not only on the 'host
  cpu' checkbox, but also on the 'pinned to host' checkbox. I think
  this logical trick would be both funny and confusing from the
  

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Doron Fediuck


- Original Message -
 From: Laszlo Hornyak lhorn...@redhat.com
 To: Doron Fediuck dfedi...@redhat.com
 Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul yk...@redhat.com
 Sent: Wednesday, December 5, 2012 6:41:24 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 
 
 - Original Message -
  From: Doron Fediuck dfedi...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
  yk...@redhat.com
  Sent: Wednesday, December 5, 2012 5:33:35 PM
  Subject: Re: [Engine-devel] host cpu feature
  
  
  
  - Original Message -
   From: Laszlo Hornyak lhorn...@redhat.com
   To: Yaniv Kaul yk...@redhat.com
   Cc: engine-devel engine-devel@ovirt.org
   Sent: Wednesday, December 5, 2012 5:24:59 PM
   Subject: Re: [Engine-devel] host cpu feature
   
   
   - Original Message -
From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 4:10:13 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:

 - Original Message -
 From: Dan Kenigsberg dan...@redhat.com
 To: Yaniv Kaul yk...@redhat.com
 Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 3:22:18 PM
 Subject: Re: [Engine-devel] host cpu feature

 On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
 On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
 The nice thing about hostModel (unlike hostPassthrough)
 is
 that
 once
 we
 created the VM we can migrate it to stronger hosts, and
 back
 to
 the
 original host. I suppose that it complicates the
 scheduler.
 Yes with host-model you get the features that libvirt
 handles.
 In
 such cases the engine could decide, if you want this
 functionality. Well the scheduler architecture is just
 being
 reinvented.

 For the host-passthrough, I think the
 AllowMigrateCPUHost
 configuration option would be a simple decision for the
 administrator: set it to true if all hosts are uniform.
 If it is THAT simple, Engine could take this decision
 without
 human
 intervension.
 Is there a way engine can figure out if the cpu-models in all
 the
 hosts are the same?
 I mean even if some host flags are not handled by libvirt and
 therefore vdsm and engine...
 So I would really need that permission from the user.

 If it is
 not set to true, then we will not allow migration of
 such
 VMs.
 That's not what I understood from libvirt's
 documentation.
 I
 You may be right, could you send an URL to that point of
 the
 documentation or copy-paste?
 The link I followed from your feature page:
 http://libvirt.org/formatdomain.html#elementsCPU :

 host-model
 The host-model mode is essentially a shortcut to copying
 host
 CPU
 definition from capabilities XML into domain XML. Since the
 CPU
 definition is copied just before starting a domain, exactly
 the
 same
 XML can be used on different hosts while still providing
 the
 best
 guest CPU each host supports. Neither match attribute nor
 any
 feature elements can be used in this mode. Specifying CPU
 model
 is
 not supported either, but model's fallback attribute may
 still
 be
 used. Libvirt does not model every aspect of each CPU so
 the
 guest
 CPU will not match the host CPU exactly. On the other hand,
 the
 ABI
 provided to the guest is reproducible. During migration,
 complete
 CPU model definition is transferred to the destination host
 so
 the
 migrated guest will see exactly the same CPU model even if
 the
 destination host contains more capable CPUs for the running
 instance
 of the guest; but shutting down and restarting the guest
 may
 present
 different hardware to the guest according to the
 capabilities
 of
 the
 new host.
 host-passthrough
 With this mode, the CPU visible to the guest should be
 exactly
 the
 same as the host CPU even in the aspects that libvirt does
 not
 understand. Though the downside of this mode is that the
 guest
 environment cannot be reproduced on different hardware.
 Thus,
 if
 you
 hit any bugs, you are on your own.
 That's exactly where AllowMigrateCPUHost fits well: when a
 user
 ticks
 this for a cluster he says yeah, I like to be on my own.

 cpu mode=host-passthrough migration: I talked to the
 libvirt
 guys
 and they said it is OK if the hardware and the software are
 the
 same, and it will work, but they would not 

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 06:46 PM, Doron Fediuck wrote:


- Original Message -

From: Laszlo Hornyak lhorn...@redhat.com
To: Doron Fediuck dfedi...@redhat.com
Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul yk...@redhat.com
Sent: Wednesday, December 5, 2012 6:41:24 PM
Subject: Re: [Engine-devel] host cpu feature



- Original Message -

From: Doron Fediuck dfedi...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
yk...@redhat.com
Sent: Wednesday, December 5, 2012 5:33:35 PM
Subject: Re: [Engine-devel] host cpu feature



- Original Message -

From: Laszlo Hornyak lhorn...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 5:24:59 PM
Subject: Re: [Engine-devel] host cpu feature


- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 4:10:13 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:

- Original Message -

From: Dan Kenigsberg dan...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 3:22:18 PM
Subject: Re: [Engine-devel] host cpu feature

On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:

On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:

The nice thing about hostModel (unlike hostPassthrough)
is
that
once
we
created the VM we can migrate it to stronger hosts, and
back
to
the
original host. I suppose that it complicates the
scheduler.

Yes with host-model you get the features that libvirt
handles.
In
such cases the engine could decide, if you want this
functionality. Well the scheduler architecture is just
being
reinvented.

For the host-passthrough, I think the
AllowMigrateCPUHost
configuration option would be a simple decision for the
administrator: set it to true if all hosts are uniform.

If it is THAT simple, Engine could take this decision
without
human
intervension.

Is there a way engine can figure out if the cpu-models in all
the
hosts are the same?
I mean even if some host flags are not handled by libvirt and
therefore vdsm and engine...
So I would really need that permission from the user.


If it is
not set to true, then we will not allow migration of
such
VMs.

That's not what I understood from libvirt's
documentation.
I

You may be right, could you send an URL to that point of
the
documentation or copy-paste?

The link I followed from your feature page:
http://libvirt.org/formatdomain.html#elementsCPU :

host-model
The host-model mode is essentially a shortcut to copying
host
CPU
definition from capabilities XML into domain XML. Since the
CPU
definition is copied just before starting a domain, exactly
the
same
XML can be used on different hosts while still providing
the
best
guest CPU each host supports. Neither match attribute nor
any
feature elements can be used in this mode. Specifying CPU
model
is
not supported either, but model's fallback attribute may
still
be
used. Libvirt does not model every aspect of each CPU so
the
guest
CPU will not match the host CPU exactly. On the other hand,
the
ABI
provided to the guest is reproducible. During migration,
complete
CPU model definition is transferred to the destination host
so
the
migrated guest will see exactly the same CPU model even if
the
destination host contains more capable CPUs for the running
instance
of the guest; but shutting down and restarting the guest
may
present
different hardware to the guest according to the
capabilities
of
the
new host.
host-passthrough
With this mode, the CPU visible to the guest should be
exactly
the
same as the host CPU even in the aspects that libvirt does
not
understand. Though the downside of this mode is that the
guest
environment cannot be reproduced on different hardware.
Thus,
if
you
hit any bugs, you are on your own.

That's exactly where AllowMigrateCPUHost fits well: when a
user
ticks
this for a cluster he says yeah, I like to be on my own.


cpu mode=host-passthrough migration: I talked to the
libvirt
guys
and they said it is OK if the hardware and the software are
the
same, and it will work, but they would not recommend.

So if they do not recommend it, I would drop this from the
feature
spec. Anyone against it?

Laszlo

I'm a bit against it. I don't see why it's that complicated:
Allow migration - use 'host-model'
Do not allow - use 'host-passthrough'.

So the actual cpu capabilities would depend not only on the 'host
cpu' checkbox, but also on the 'pinned to host' checkbox. I think
this logical trick would be both funny and confusing from the
user's
perspective.


The reason of why we need host-passthrough is that otherwise I
suspect
we depend on libvirt for newer features to be somehow exposed
to
the
guest (not sure about it).

Yes, with 

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Doron Fediuck
- Original Message -
 From: Yaniv Kaul yk...@redhat.com
 To: Doron Fediuck dfedi...@redhat.com
 Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel 
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 6:48:33 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 On 12/05/2012 06:46 PM, Doron Fediuck wrote:
 
  - Original Message -
  From: Laszlo Hornyak lhorn...@redhat.com
  To: Doron Fediuck dfedi...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
  yk...@redhat.com
  Sent: Wednesday, December 5, 2012 6:41:24 PM
  Subject: Re: [Engine-devel] host cpu feature
 
 
 
  - Original Message -
  From: Doron Fediuck dfedi...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
  yk...@redhat.com
  Sent: Wednesday, December 5, 2012 5:33:35 PM
  Subject: Re: [Engine-devel] host cpu feature
 
 
 
  - Original Message -
  From: Laszlo Hornyak lhorn...@redhat.com
  To: Yaniv Kaul yk...@redhat.com
  Cc: engine-devel engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 5:24:59 PM
  Subject: Re: [Engine-devel] host cpu feature
 
 
  - Original Message -
  From: Yaniv Kaul yk...@redhat.com
  To: Laszlo Hornyak lhorn...@redhat.com
  Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 4:10:13 PM
  Subject: Re: [Engine-devel] host cpu feature
 
  On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:
  - Original Message -
  From: Dan Kenigsberg dan...@redhat.com
  To: Yaniv Kaul yk...@redhat.com
  Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 3:22:18 PM
  Subject: Re: [Engine-devel] host cpu feature
 
  On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:
  On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:
  The nice thing about hostModel (unlike hostPassthrough)
  is
  that
  once
  we
  created the VM we can migrate it to stronger hosts, and
  back
  to
  the
  original host. I suppose that it complicates the
  scheduler.
  Yes with host-model you get the features that libvirt
  handles.
  In
  such cases the engine could decide, if you want this
  functionality. Well the scheduler architecture is just
  being
  reinvented.
 
  For the host-passthrough, I think the
  AllowMigrateCPUHost
  configuration option would be a simple decision for the
  administrator: set it to true if all hosts are uniform.
  If it is THAT simple, Engine could take this decision
  without
  human
  intervension.
  Is there a way engine can figure out if the cpu-models in all
  the
  hosts are the same?
  I mean even if some host flags are not handled by libvirt and
  therefore vdsm and engine...
  So I would really need that permission from the user.
 
  If it is
  not set to true, then we will not allow migration of
  such
  VMs.
  That's not what I understood from libvirt's
  documentation.
  I
  You may be right, could you send an URL to that point of
  the
  documentation or copy-paste?
  The link I followed from your feature page:
  http://libvirt.org/formatdomain.html#elementsCPU :
 
  host-model
  The host-model mode is essentially a shortcut to copying
  host
  CPU
  definition from capabilities XML into domain XML. Since the
  CPU
  definition is copied just before starting a domain, exactly
  the
  same
  XML can be used on different hosts while still providing
  the
  best
  guest CPU each host supports. Neither match attribute nor
  any
  feature elements can be used in this mode. Specifying CPU
  model
  is
  not supported either, but model's fallback attribute may
  still
  be
  used. Libvirt does not model every aspect of each CPU so
  the
  guest
  CPU will not match the host CPU exactly. On the other hand,
  the
  ABI
  provided to the guest is reproducible. During migration,
  complete
  CPU model definition is transferred to the destination host
  so
  the
  migrated guest will see exactly the same CPU model even if
  the
  destination host contains more capable CPUs for the running
  instance
  of the guest; but shutting down and restarting the guest
  may
  present
  different hardware to the guest according to the
  capabilities
  of
  the
  new host.
  host-passthrough
  With this mode, the CPU visible to the guest should be
  exactly
  the
  same as the host CPU even in the aspects that libvirt does
  not
  understand. Though the downside of this mode is that the
  guest
  environment cannot be reproduced on different hardware.
  Thus,
  if
  you
  hit any bugs, you are on your own.
  That's exactly where AllowMigrateCPUHost fits well: when a
  user
  ticks
  this for a cluster he says yeah, I like to be on my own.
 
  cpu mode=host-passthrough migration: I talked to the
  libvirt
  guys
  and they said it is OK if the hardware and the software are
  the
  same, and it will work, but they would not recommend.
 
  So if they do not recommend it, I would drop this from the
  

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Yaniv Kaul

On 12/05/2012 07:10 PM, Doron Fediuck wrote:

- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Doron Fediuck dfedi...@redhat.com
Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel 
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 6:48:33 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 06:46 PM, Doron Fediuck wrote:

- Original Message -

From: Laszlo Hornyak lhorn...@redhat.com
To: Doron Fediuck dfedi...@redhat.com
Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
yk...@redhat.com
Sent: Wednesday, December 5, 2012 6:41:24 PM
Subject: Re: [Engine-devel] host cpu feature



- Original Message -

From: Doron Fediuck dfedi...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: engine-devel engine-devel@ovirt.org, Yaniv Kaul
yk...@redhat.com
Sent: Wednesday, December 5, 2012 5:33:35 PM
Subject: Re: [Engine-devel] host cpu feature



- Original Message -

From: Laszlo Hornyak lhorn...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 5:24:59 PM
Subject: Re: [Engine-devel] host cpu feature


- Original Message -

From: Yaniv Kaul yk...@redhat.com
To: Laszlo Hornyak lhorn...@redhat.com
Cc: Dan Kenigsberg dan...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 4:10:13 PM
Subject: Re: [Engine-devel] host cpu feature

On 12/05/2012 04:59 PM, Laszlo Hornyak wrote:

- Original Message -

From: Dan Kenigsberg dan...@redhat.com
To: Yaniv Kaul yk...@redhat.com
Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 3:22:18 PM
Subject: Re: [Engine-devel] host cpu feature

On Wed, Dec 05, 2012 at 04:05:00PM +0200, Yaniv Kaul wrote:

On 12/05/2012 03:55 PM, Laszlo Hornyak wrote:

The nice thing about hostModel (unlike hostPassthrough)
is
that
once
we
created the VM we can migrate it to stronger hosts, and
back
to
the
original host. I suppose that it complicates the
scheduler.

Yes with host-model you get the features that libvirt
handles.
In
such cases the engine could decide, if you want this
functionality. Well the scheduler architecture is just
being
reinvented.

For the host-passthrough, I think the
AllowMigrateCPUHost
configuration option would be a simple decision for the
administrator: set it to true if all hosts are uniform.

If it is THAT simple, Engine could take this decision
without
human
intervension.

Is there a way engine can figure out if the cpu-models in all
the
hosts are the same?
I mean even if some host flags are not handled by libvirt and
therefore vdsm and engine...
So I would really need that permission from the user.


If it is
not set to true, then we will not allow migration of
such
VMs.

That's not what I understood from libvirt's
documentation.
I

You may be right, could you send an URL to that point of
the
documentation or copy-paste?

The link I followed from your feature page:
http://libvirt.org/formatdomain.html#elementsCPU :

host-model
The host-model mode is essentially a shortcut to copying
host
CPU
definition from capabilities XML into domain XML. Since the
CPU
definition is copied just before starting a domain, exactly
the
same
XML can be used on different hosts while still providing
the
best
guest CPU each host supports. Neither match attribute nor
any
feature elements can be used in this mode. Specifying CPU
model
is
not supported either, but model's fallback attribute may
still
be
used. Libvirt does not model every aspect of each CPU so
the
guest
CPU will not match the host CPU exactly. On the other hand,
the
ABI
provided to the guest is reproducible. During migration,
complete
CPU model definition is transferred to the destination host
so
the
migrated guest will see exactly the same CPU model even if
the
destination host contains more capable CPUs for the running
instance
of the guest; but shutting down and restarting the guest
may
present
different hardware to the guest according to the
capabilities
of
the
new host.
host-passthrough
With this mode, the CPU visible to the guest should be
exactly
the
same as the host CPU even in the aspects that libvirt does
not
understand. Though the downside of this mode is that the
guest
environment cannot be reproduced on different hardware.
Thus,
if
you
hit any bugs, you are on your own.

That's exactly where AllowMigrateCPUHost fits well: when a
user
ticks
this for a cluster he says yeah, I like to be on my own.


cpu mode=host-passthrough migration: I talked to the
libvirt
guys
and they said it is OK if the hardware and the software are
the
same, and it will work, but they would not recommend.

So if they do not recommend it, I would drop this from the
feature
spec. Anyone against it?

Laszlo

I'm a bit against it. I don't see why it's that complicated:
Allow migration - use 'host-model'
Do not allow - use 'host-passthrough'.

So the actual cpu capabilities would depend not only on the
'host
cpu' 

Re: [Engine-devel] host cpu feature

2012-12-05 Thread Doron Fediuck


- Original Message -
 From: Laszlo Hornyak lhorn...@redhat.com
 To: Doron Fediuck dfedi...@redhat.com
 Cc: engine-devel engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 7:14:46 PM
 Subject: Re: [Engine-devel] host cpu feature
 
 
 
 - Original Message -
  From: Doron Fediuck dfedi...@redhat.com
  To: Yaniv Kaul yk...@redhat.com
  Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 6:10:55 PM
  Subject: Re: [Engine-devel] host cpu feature
  
   Alternative idea, inspired by Thus, if you hit any bugs, you are
   on
   your own (http://libvirt.org/formatdomain.html#elementsCPU wrt
   'host-passthrough'):
   A config option to determine if we use host-model or
   host-passthrough.
   Y.
   
  
  I do not think the engine should go to this level.
  ie- it can ask for passthrough as a feature, and the
  actual implementation is handled by vdsm.
  
 
 If vdsm decides over host-passthrough or host-model, then how will
 the engine user know what exactly his VM gets. I think vdsm must be
 told exactly what to do.
 

VDSM maintains some level of independence. This is why it the engine
should be able to ask for passthrough as a feature. Otherwize vdsm will
handle it. So for now I suggest we stick to passthrough only, and if
we get an RFE for advanced mode we'll support the host model.
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] host cpu feature

2012-12-05 Thread snmishra


Quoting Doron Fediuck dfedi...@redhat.com:


- Original Message -

From: Laszlo Hornyak lhorn...@redhat.com
To: Doron Fediuck dfedi...@redhat.com
Cc: engine-devel engine-devel@ovirt.org
Sent: Wednesday, December 5, 2012 7:14:46 PM
Subject: Re: [Engine-devel] host cpu feature



- Original Message -
 From: Doron Fediuck dfedi...@redhat.com
 To: Yaniv Kaul yk...@redhat.com
 Cc: Laszlo Hornyak lhorn...@redhat.com, engine-devel
 engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 6:10:55 PM
 Subject: Re: [Engine-devel] host cpu feature

  Alternative idea, inspired by Thus, if you hit any bugs, you are
  on
  your own (http://libvirt.org/formatdomain.html#elementsCPU wrt
  'host-passthrough'):
  A config option to determine if we use host-model or
  host-passthrough.
  Y.
 

 I do not think the engine should go to this level.
 ie- it can ask for passthrough as a feature, and the
 actual implementation is handled by vdsm.


If vdsm decides over host-passthrough or host-model, then how will
the engine user know what exactly his VM gets. I think vdsm must be
told exactly what to do.



VDSM maintains some level of independence. This is why it the engine
should be able to ask for passthrough as a feature. Otherwize vdsm will
handle it. So for now I suggest we stick to passthrough only, and if
we get an RFE for advanced mode we'll support the host model.


What are we gaining by using passthrough over host-model? Looking at  
libvirt documentation, it seems that both modes give host CPU  
capabilities to guest VM. Whereas the downside of passthrough is that  
it limits migration. Whereas host-model will migrate to other hardware  
and if the destination hardware is better than source then the guest  
VM performance can be improved by rebooting guest.


As a stretch goal, ovirt can keep track of host capabilities and  
inform the user after migrating to a better host, that a reboot may  
improve guest performance.


Regards
Sharad Mishra


___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel




___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] [Users] RHEVM 3.1 DB Schema diagram

2012-12-05 Thread Allon Mureinik


- Original Message -
 From: Eli Mesika emes...@redhat.com
 To: Allon Mureinik amure...@redhat.com
 Cc: users us...@ovirt.org, engine-devel engine-devel@ovirt.org
 Sent: Wednesday, December 5, 2012 12:51:20 PM
 Subject: Re: [Users] RHEVM 3.1 DB Schema diagram
 
 
 
 - Original Message -
  From: Allon Mureinik amure...@redhat.com
  To: Eli Mesika emes...@redhat.com
  Cc: users us...@ovirt.org, engine-devel
  engine-devel@ovirt.org
  Sent: Wednesday, December 5, 2012 9:21:34 AM
  Subject: Re: [Users] RHEVM 3.1 DB Schema diagram
  
  Nice!
  
  How are the names of the blocks generated?
  Some names strike me a bit there (e.g., images is in the
  storage_domains_static block).
 
 Auto-generated ... (nice work IMHO)
That I get `-)
I was asking if you understand where the names of the blocks are taken from, 
because I couldn't.
 
  
  - Original Message -
   From: Eli Mesika emes...@redhat.com
   To: users us...@ovirt.org, engine-devel
   engine-devel@ovirt.org
   Sent: Tuesday, December 4, 2012 7:12:28 PM
   Subject: [Users] RHEVM 3.1 DB Schema diagram
   
   Hi
   
   There were some requests on the users list to get our DB schema
   diagram.
   After looking a while for a tool for generating that , I have
   found
   the DBSchema tool.
   
   Please find attached the RHEVM 3.1 DB Schema diagram.
   
   I intend to get it into the oVirt site but currently it's too
   large
   and does not fit well.
   
   Regards
   
   Eli Mesika
   
   ___
   Users mailing list
   us...@ovirt.org
   http://lists.ovirt.org/mailman/listinfo/users
   
  
 
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel