Michael,<br><br>My apologies, my patch had a gross typo (baseame --&gt; basename). You can either change that, or try the following which is a bit more elegant:<br><br>        images_path = File.dirname remote_dfile<br><div id=":8i" class="ii gt">



        cmd = &quot;mkdir -p #{images_path} &amp;&amp; cat &gt; #{remote_dfile} &amp;&amp; #{LIBVIRT[:create]} #{remote_dfile}&quot;</div><br>Best,<br><br>-Tino<br clear="all"><br>--<br>Constantino Vázquez, Grid Technology Engineer/Researcher: <a href="http://www.dsa-research.org/tinova">http://www.dsa-research.org/tinova</a><br>

DSA Research Group: <a href="http://dsa-research.org">http://dsa-research.org</a><br>Globus GridWay Metascheduler: <a href="http://www.GridWay.org">http://www.GridWay.org</a>  <br>OpenNebula Virtual Infrastructure Engine: <a href="http://www.OpenNebula.org">http://www.OpenNebula.org</a><br>


<br><br><div class="gmail_quote">On Tue, Nov 17, 2009 at 9:50 PM, Michael W. Lucas <span dir="ltr">&lt;<a href="mailto:mwlucas@blackhelicopters.org">mwlucas@blackhelicopters.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<br>
Hi,<br>
<br>
Thanks for the patch.<br>
<br>
Short answer: still not working, but the failure is different.<br>
<br>
My patched one_vmm_kvm.rb looks like the below (I don&#39;t know Ruby, so<br>
I could have quite easy made an error and not known it):<br>
<br>
--- one_vmm_kvm.rb-dist 2009-11-17 15:15:24.966874194 -0500<br>
+++ one_vmm_kvm.rb      2009-11-17 15:15:56.445072283 -0500<br>
@@ -85,7 +85,12 @@<br>
         domain = tmp.read<br>
         tmp.close()<br>
<br>
-        cmd = &quot;cat &gt; #{remote_dfile} &amp;&amp; #{LIBVIRT[:create]} #{remote_dfile}&quot;<br>
+#        cmd = &quot;cat &gt; #{remote_dfile} &amp;&amp; #{LIBVIRT[:create]} #{remote_dfile}&quot;<br>
+        deployment_filename = File.baseame remote_dfile<br>
<div class="im">+        images_path               =<br>
+remote_dfile.gsub(deployment_filename,&#39;&#39;)<br>
+        cmd = &quot;mkdir -p #{images_path} &amp;&amp; cat &gt; #{remote_dfile} &amp;&amp;<br>
+#{LIBVIRT[:create]} #{remote_dfile}&quot;<br>
<br>
</div>         deploy_exe = SSHCommand.run(&quot;&#39;#{cmd}&#39;&quot;, host, log_method(id), domain)<br>
<br>
oned.log says:<br>
<br>
Tue Nov 17 15:32:42 2009 [ReM][D]: VirtualMachineAllocate invoked<br>
Tue Nov 17 15:32:42 2009 [DiM][D]: Allocating a new VM<br>
Tue Nov 17 15:33:04 2009 [ReM][D]: VirtualMachineDeploy invoked<br>
Tue Nov 17 15:33:04 2009 [DiM][D]: Deploying VM 2<br>
Tue Nov 17 15:33:04 2009 [TM][D]: Message received: TRANSFER SUCCESS 2 -<br>
<br>
2/vm.log shows:<br>
<br>
Tue Nov 17 15:33:04 2009 [DiM][I]: New VM state is ACTIVE.<br>
Tue Nov 17 15:33:04 2009 [LCM][I]: New VM state is PROLOG.<br>
Tue Nov 17 15:33:04 2009 [VM][I]: Virtual Machine has no context<br>
Tue Nov 17 15:33:05 2009 [LCM][I]: New VM state is BOOT<br>
Tue Nov 17 15:33:05 2009 [VMM][I]: Generating deployment file: /usr/local/one/var/2/deployment.0<br>
<br>
It appears that we never try to run the command to start the VM,<br>
however.<br>
<br>
Tcpdump on the compute node shows that the head node is not even<br>
attempting to SSH to the compute node when deploying the VM.  (I do<br>
see SSH traffic when oned monitors the compute node, so I believe my<br>
packet sniffer is configured correctly.)<br>
<br>
Any other suggestions?<br>
<br>
Thanks,<br>
==ml<br>
<div><div></div><div class="h5"><br>
On Mon, Nov 16, 2009 at 04:38:23PM +0100, Tino Vazquez wrote:<br>
&gt; Hi Michael,<br>
&gt;<br>
&gt; The problem is that a diskless VM will cause that the transfer driver<br>
&gt; doesn&#39;t get called. This transfer driver is responsible for creating the<br>
&gt; &#39;images&#39; directory. If you want t a network-booted machine you can try out<br>
&gt; the following: in src/vmm_mad/kvm/one_vmm_kvm.rb change line 88 from:<br>
&gt;<br>
&gt;         cmd = &quot;cat &gt; #{remote_dfile} &amp;&amp; #{LIBVIRT[:create]} #{remote_dfile}&quot;<br>
&gt;<br>
&gt; to<br>
&gt;<br>
&gt;         deployment_filename = File.baseame remote_dfile<br>
&gt;         images_path               =<br>
&gt; remote_dfile.gsub(deployment_filename,&#39;&#39;)<br>
&gt;         cmd = &quot;mkdir -p #{images_path} &amp;&amp; cat &gt; #{remote_dfile} &amp;&amp;<br>
&gt; #{LIBVIRT[:create]} #{remote_dfile}&quot;<br>
&gt;<br>
&gt;<br>
&gt; Please try this out, and if you find it useful please come back to us with<br>
&gt; some feedback to we can include it in future releases.<br>
&gt;<br>
&gt; About your second questions, there are two deployment.0 images due to<br>
&gt; OpenNebula design and its ability to use ssh or nfs. Because the VMM driver<br>
&gt; doesn&#39;t know wihch storage it is being used, OpenNebula always uses a<br>
&gt; scratch &#39;images&#39; directory in the remote node were the deployment.0 file and<br>
&gt; disks are copied from the front-end to there. If the storage is NFS based<br>
&gt; you end up with two deployment.0 files locally. The &#39;images&#39; directory is<br>
&gt; used because doing a cat of a file over the same file will result on a null<br>
&gt; file. Hope this makes sense :o<br>
&gt;<br>
&gt; Regards,<br>
&gt;<br>
&gt; -Tino<br>
&gt;<br>
&gt; --<br>
</div></div>&gt; Constantino V?zquez, Grid Technology Engineer/Researcher:<br>
<div><div></div><div class="h5">&gt; <a href="http://www.dsa-research.org/tinova" target="_blank">http://www.dsa-research.org/tinova</a><br>
&gt; DSA Research Group: <a href="http://dsa-research.org" target="_blank">http://dsa-research.org</a><br>
&gt; Globus GridWay Metascheduler: <a href="http://www.GridWay.org" target="_blank">http://www.GridWay.org</a><br>
&gt; OpenNebula Virtual Infrastructure Engine: <a href="http://www.OpenNebula.org" target="_blank">http://www.OpenNebula.org</a><br>
&gt;<br>
&gt;<br>
&gt; On Wed, Nov 11, 2009 at 9:21 PM, Michael W. Lucas &lt;<br>
&gt; <a href="mailto:mwlucas@blackhelicopters.org">mwlucas@blackhelicopters.org</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; Hi,<br>
&gt; &gt;<br>
&gt; &gt; My ON 1.4beta2/KVM environment is working fine with disk images.  ON<br>
&gt; &gt; cannot start a network-booted machine, however.  The problem appears<br>
&gt; &gt; to be with the path used for the deployment file.  If I use this template:<br>
&gt; &gt;<br>
&gt; &gt; NAME   = onvm1<br>
&gt; &gt; CPU    = 0.5<br>
&gt; &gt; MEMORY = 512<br>
&gt; &gt; OS      = [ BOOT   = network ]<br>
&gt; &gt; NIC     = [ BRIDGE = &quot;br0&quot;,<br>
&gt; &gt;           MAC = &quot;00:16:8B:AB:C7:14&quot; ]<br>
&gt; &gt; GRAPHICS = [type=&quot;vnc&quot;,listen=&quot;127.0.0.1&quot;,port=&quot;-1&quot;]<br>
&gt; &gt;<br>
&gt; &gt; the error log shows:<br>
&gt; &gt;<br>
&gt; &gt; Wed Nov 11 15:14:34 2009 [VMM][D]: Message received: LOG - 2 Command<br>
&gt; &gt; execution fail: &#39;cat &gt; /one_dir/2/images/deployment.0 &amp;&amp; virsh --connect<br>
&gt; &gt; qemu:///system create /one_dir/2/images/deployment.0&#39;<br>
&gt; &gt;<br>
&gt; &gt; /one_dir/2/images/deployment.0 doesn&#39;t exist.  But<br>
&gt; &gt; /one_dir/2/deployment.0 does exist, along with vm.log and the transfer<br>
&gt; &gt; files.  There&#39;s no &quot;images&quot; subdirectory.<br>
&gt; &gt;<br>
&gt; &gt; On a simple VM with a hard drive, such as this, we do have an images<br>
&gt; &gt; subdirectory.  Oddly, I have separate but identical deployment.0 files<br>
&gt; &gt; in multiple locations.<br>
&gt; &gt;<br>
&gt; &gt; clusterhead1/one_dir/1;ls -lai<br>
&gt; &gt; total 10K<br>
&gt; &gt; 156066 drwxrwxrwx 3 oneadmin oneadmin    6 2009-11-11 15:06 .<br>
&gt; &gt; 155649 drwxr-xr-x 6 oneadmin oneadmin   13 2009-11-11 15:17 ..<br>
&gt; &gt; 156092 -rw-r--r-- 1 oneadmin oneadmin  368 2009-11-11 15:06 deployment.0<br>
&gt; &gt; 156088 drwxrwxrwx 2 oneadmin oneadmin    4 2009-11-11 15:06 images<br>
&gt; &gt; 156087 -rw-r--r-- 1 oneadmin oneadmin   83 2009-11-11 15:06<br>
&gt; &gt; transfer.0.prolog<br>
&gt; &gt; 156067 -rw-r--r-- 1 oneadmin oneadmin 2173 2009-11-11 15:17 vm.log<br>
&gt; &gt;<br>
&gt; &gt; clusterhead1/one_dir/1;ls -lai images/<br>
&gt; &gt; total 5K<br>
&gt; &gt; 156088 drwxrwxrwx 2 oneadmin oneadmin   4 2009-11-11 15:06 .<br>
&gt; &gt; 156066 drwxrwxrwx 3 oneadmin oneadmin   6 2009-11-11 15:06 ..<br>
&gt; &gt; 156093 -rw-r--r-- 1 oneadmin oneadmin 368 2009-11-11 15:06 deployment.0<br>
&gt; &gt; 156089 lrwxrwxrwx 1 oneadmin oneadmin  28 2009-11-11 15:06 disk.0 -&gt;<br>
&gt; &gt; /one_dir/one_images/dns1.raw<br>
&gt; &gt; clusterhead1/one_dir/1;<br>
&gt; &gt;<br>
&gt; &gt; Any suggestions, folks?<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt; ==ml<br>
&gt; &gt;<br>
&gt; &gt; --<br>
&gt; &gt; Michael W. Lucas        mwlucas@BlackHelicopters.org<br>
&gt; &gt; <a href="http://www.MichaelWLucas.com/" target="_blank">http://www.MichaelWLucas.com/</a><br>
&gt; &gt; Latest book:  Cisco Routers for the Desperate, 2nd Edition<br>
&gt; &gt; <a href="http://www.CiscoRoutersForTheDesperate.com/" target="_blank">http://www.CiscoRoutersForTheDesperate.com/</a><br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; Users mailing list<br>
&gt; &gt; <a href="mailto:Users@lists.opennebula.org">Users@lists.opennebula.org</a><br>
&gt; &gt; <a href="http://lists.opennebula.org/listinfo.cgi/users-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/users-opennebula.org</a><br>
&gt; &gt;<br>
<br>
</div></div>--<br>
<div><div></div><div class="h5">Michael W. Lucas        mwlucas@BlackHelicopters.org<br>
<a href="http://www.MichaelWLucas.com/" target="_blank">http://www.MichaelWLucas.com/</a><br>
Latest book:  Cisco Routers for the Desperate, 2nd Edition<br>
<a href="http://www.CiscoRoutersForTheDesperate.com/" target="_blank">http://www.CiscoRoutersForTheDesperate.com/</a><br>
</div></div></blockquote></div><br>