[one-users] Xen with NFS..

Javier Fontan jfontan at fdi.ucm.es
Fri Aug 21 04:52:53 PDT 2009


Hello,


On Fri, Aug 21, 2009 at 1:09 PM, Pallab
Chakrabarty<pchakrabarty at spikesource.com> wrote:
> The problem lies in these two lines:

> Thu Aug 20 12:25:55 2009 [VMM][I]: Generating deployment file:
> /opt/cloud/var/36/deployment.0

> Thu Aug 20 12:25:55 2009 [VMM][I]: Command execution fail: 'cat >
> /opt/cloud/one/var/36/images/deployment.0 && sudo /usr/sbin/xm create
> /opt/cloud/one/var/36/images/deployment.0 && sudo /usr/sbin/xm sched-cred -d
> one-36 -w 256'

> 1) deployment file is generated at loca: /opt/cloud/var/36/deployment.0
> 2) but cat > command looks for a different location:   'cat >
> /opt/cloud/one/var/36/images/deployment.0

It is normal that those two paths are different (the second one has
/images added). Internally ONE has the notion of "local deployment
file" and "remote deployment file". Local deployment file is created
in the frontend and in this case is /opt/cloud/var/36/deployment.0. As
we have to deal with clusters with shared directory and without we
need a way to copy the deployment file to the execution host. This can
be done in a separate call to scp for example but to decrease ssh
connections to the minimum we are doing the copy and the actual VM
setup in the same ssh call. In this call we also send the content of
local deployment file in STDIN. So the call should be something like
this (I'll omit VM setup):

cat /opt/cloud/var/36/deployment.0 | ssh execution_host 'cat >
/opt/cloud/one/var/36/images/deployment.0 && [...]'

As you can see cat does not have any parameter so it will read from
the STDIN and there is a redirection to the remote deployment file
(the one with /images added). This is basically the same as:

scp /opt/cloud/var/36/deployment.0
execution_host:/opt/cloud/one/var/36/images/deployment.0

The error you are getting is usually caused because
/opt/cloud/one/var/36/images does not exist in the execution host.
This directory is created previously in the frontend:

Thu Aug 20 12:25:55 2009 [TM][I]: tm_ln.sh: Creating directory
/opt/cloud/one/var/36/images
Thu Aug 20 12:25:55 2009 [TM][I]: tm_ln.sh: Executed "mkdir -p
/opt/cloud/one/var/36/images".

If that directory is correctly mounted in the execution_host (it has
the same path as in the frontend, or if different you specify the
directory in VM_DIR of one.conf) it will also exist there and that
copy will be successful.

Can you please explain me your shared directory setup? (what is
exported from the frontend and where it is mounted in the execution
host). Can you also check that /opt/cloud/one/var/36 exists in the
execution host and that oneadmin user can write there?.

Bye


-- 
Javier Fontan, Grid & Virtualization Technology Engineer/Researcher
DSA Research Group: http://dsa-research.org
Globus GridWay Metascheduler: http://www.GridWay.org
OpenNebula Virtual Infrastructure Engine: http://www.OpenNebula.org


More information about the Users mailing list