Opened 8 years ago

Last modified 8 years ago

#123 new

xen request and allocation mismatch

Reported by: lnevers@bbn.com Owned by: somebody
Priority: major Milestone:
Component: Experiment Version: SPIRAL5
Keywords: Cc: geni-dev-utah@flux.utah.edu
Dependencies:

Description

In a scenario where one exclusive and one non-exclusive emulab-xen VMs are requested:

<node client_id="xen1" 
component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="false">
<sliver_type name="emulab-xen"/>
<interface client_id="xen1:if0">
</interface>
</node>
<node client_id="xen2" 
component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true">
<sliver_type name="emulab-xen"/>
<interface client_id="xen2:if0">
</interface>
</node> 

Both VMs allocated are exclusive according to the manifest:

<node client_id="xen1" 
component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc4" 
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24797">
<sliver_type name="emulab-xen"/>
....
<node client_id="xen2" 
component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc4"
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24798">
<sliver_type name="emulab-xen"/>
...

Change History (3)

comment:1 Changed 8 years ago by lnevers@bbn.com

In addition to the original "one exclusive emulab-xen and one non-exclusive emulab-xen" request resulting in 2 "exclusive" hosts, there is another request that results in resources allocated not matching the request.

If "one exclusive Xen and one exclusive OpenVZ" are requested, the resulting sliver allocates two OpenVZ hosts.

Rspec request for one exclusive OpenVZ and one exclusive Xen:

  <node client_id="xen1" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="true">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="xen1:if0"/>
  </node>
  <node client_id="xen2" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="true">
    <sliver_type name="emulab-xen"/>
    <interface client_id="xen2:if0"> 
  </node> 

According to Manifest the two hosts are on the same device (pc4). Is this possible an OpenVZ host on the same physical node as the Xen host?

<node client_id="xen1" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc4" 
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24873">
    <sliver_type name="emulab-openvz"/>
...
<node client_id="xen2" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc4" 
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24874">
    <sliver_type name="emulab-xen"/>
...

Login to the Xen host (xen2) and it is the same as the OpenVZ host:

[lnevers@xen2 ~]$ cat /etc/issue
Fedora release 15 (Lovelock)
Kernel \r on an \m (\l)
[lnevers@xen2 ~]$ uname -a
Linux xen2.IG-XN-5-4.ch-geni-net.utah.geniracks.net 2.6.32-042stab049.6.emulab.1 #1 SMP Mon May 21 14:36:04 MDT 2012 x86_64 x86_64 x86_64 GNU/Linux
[lnevers@xen2 ~]$ cat /proc/meminfo |grep MemTotal
MemTotal:       49311612 kB

comment:2 Changed 8 years ago by lnevers@bbn.com

Another scenario where resource allocated do not match in the request. In a scenario where 1 non-exclusive Xen and 1 non-exclusive OpenVZ hosts are requested, the resulting sliver has 1 exclusive xen and 1 exclusive openvz.

The request:

  <node client_id="xen1" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="xen1:if0"/>
  </node>
  <node client_id="xen2" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-xen"/>
    <interface client_id="xen2:if0"/>
  </node> 

The manifest:

<node client_id="xen1" 
component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc2" 
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24883">
    <sliver_type name="emulab-openvz"/>
...
<node client_id="xen2" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" 
exclusive="true" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc2" 
sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+24884">
    <sliver_type name="emulab-xen"/>
...

Check of the hosts show that both are OpenVZ hosts.

comment:3 Changed 8 years ago by lnevers@bbn.com

Updating ticket to capture email:

On 8/14/13 8:20 AM, Leigh Stoller wrote:

Hi. As Jon mentions, exclusive=false is a desire but not binding. It simply says you are okay to get a shared node, but if the mapper decides to use exclusive nodes, so be it. I expect this test would fail for openvz as well (subject to the randomness of the resource mapper).

On 8/14/13 8:28 AM, Leigh Stoller wrote:

What is the expectation for a request for non-exclusive resources both Xen and OpenVZ

in the same request?

They should map to different physical hosts, which is clearly not happening.

Note: See TracTickets for help on using tickets.