Take a look at ImageRepository.rb line 197<br><br><div class="gmail_quote">On Wed, Nov 24, 2010 at 10:03 PM, Steven Timm <span dir="ltr"><<a href="mailto:timm@fnal.gov">timm@fnal.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<br>
A followup--<br>
when I try to run the mkfs command by hand on a copy of the sparse<br>
file from the repository here is what I get:<br>
<br>
/sbin/mkfs.ext3 ./testsparsefile<br>
mke2fs 1.39 (29-May-2006)<br>
./testsparsefile is not a block special device.<br>
Proceed anyway? (y,n) <br>
Filesystem label=<br>
OS type: Linux<br>
Block size=4096 (log=2)<br>
Fragment size=4096 (log=2)<br>
262144 inodes, 524288 blocks<br>
26214 blocks (5.00%) reserved for the super user<br>
First data block=0<br>
Maximum filesystem blocks=536870912<br>
16 block groups<br>
32768 blocks per group, 32768 fragments per group<br>
16384 inodes per group<br>
Superblock backups stored on blocks:<br>
        32768, 98304, 163840, 229376, 294912<br>
<br>
Writing inode tables: done<br>
Creating journal (16384 blocks): done<br>
Writing superblocks and filesystem accounting information: done<br>
<br>
This filesystem will be automatically checked every 36 mounts or<br>
180 days, whichever comes first.  Use tune2fs -c or -i to override.<br>
bash-3.2$ ls -lrt<br>
total 10349388<br>
-rw-r--r-- 1 timm fnalgrid  2147483649 Nov 24 14:42 c440fa087fda2ddfecee250da48659db675da0e5<br>
-rw-rw---- 1 timm fnalgrid 10485760000 Nov 24 14:50 7bf1f760a574f34a88213010ed76ef632ccffbea<br>
-rw-r--r-- 1 timm fnalgrid  2147483649 Nov 24 14:59 testsparsefile<br>
bash-3.2$ du -s ./testsparsefile<br>
99352   ./testsparsefile<br>
bash-3.2$ du -s ./c440fa087fda2ddfecee250da48659db675da0e5<br>
16      ./c440fa087fda2ddfecee250da48659db675da0e5<br>
bash-3.2$ file ./testsparsefile<br>
./testsparsefile: Linux rev 1.0 ext3 filesystem data (large files)<br>
<br>
So it could be that the script that is calling the mkfs command  is not expecting the y/n prompt and that is what is giving the error.  Adding<br>
the -F option to the mkfs would fix that.  Where is the corresponding<br>
ruby file that is calling the mkfs?<br>
<br>
Steve Timm<div><div></div><div class="h5"><br>
<br>
<br>
<br>
<br>
On Wed, 24 Nov 2010, Steven Timm wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Two surprises here:<br>
<br>
1) oneimage help doesn't list a "create" subcommand at all, just oneimage register.<br>
<br>
2) I made a fresh install of opennebula on a clean machine<br>
with nothing else installed and I still get the same error I got before,<br>
no matter if I use oneimage create or oneimage register.<br>
<br>
bash-3.2$ oneimage create datablock_test.one<br>
Error: mkfs Image: in mkfs command.<br>
<br>
What is it trying to do at this stage?<br>
Note that it *did* make a sparse data file in the image repo at about that time but seems to have failed to make the file system inside of it.<br>
ls -lh reports a file size of 2.1G, du -s reports a usage of just 16K.<br>
<br>
We are using the stock ruby that comes with sci. linux 5.5<br>
<br>
bash-3.2$ rpm -q ruby<br>
ruby-1.8.5-5.el5_4.8.x86_64<br>
<br>
Also note--if I need to create an OS image I can do it.<br>
<br>
bash-3.2$ oneimage create kernel.img<br>
bash-3.2$ oneimage list<br>
 ID     USER                 NAME TYPE              REGTIME PUB PER STAT #VMS<br>
  4     timm        Steve test OS   OS   Nov 24, 2010 20:46 Yes  No  rdy 0<br>
bash-3.2$<br>
<br>
<br>
On Wed, 24 Nov 2010, Ruben S. Montero wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi<br>
<br>
Yes in this case there should not be any path. Here it is working:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<<br>
</blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote>

</blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote>

</blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote>

</blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote>
img> cat dblock.img<br>
NAME          = "Experiment results"<br>
TYPE          = DATABLOCK<br>
# No PATH set, this image will start as a new empty disk<br>
SIZE          = 2048<br>
FSTYPE        = ext3<br>
PUBLIC        = NO<br>
DESCRIPTION   = "Storage for my Thesis experiments."<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
oneimage create dblock.img<br>
</blockquote>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
oneimage create dblock.img<br>
</blockquote>
pc-ruben:img> oneimage list<br>
 ID     USER                 NAME TYPE              REGTIME PUB PER STAT<br>
#VMS<br>
...<br>
  5    ruben   Experiment results   DB   Nov 24, 2010 20:30  No  No  rdy<br>
 0<br>
<br>
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<br>


<br>
<br>
It may be a ruby version issue, which one are you using?<br>
<br>
About the other questions:<br>
<br>
a.- qcow2 feature is already in the source repo, and will be included in the<br>
upcoming OpenNebula 2.0.1.<br>
</blockquote>
Can we use qcow2 and persistent at the same time?<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
b.- there is not a relationship between the persistent attribute and the<br>
image format. When a image is declared as persistent only one VM is able to<br>
use it to prevent data inconsistencies in the image.<br>
</blockquote>
<br>
That is what we would want in this case.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
c.- spare images: I think I do not really understand your use case. Would<br>
not  a datablock do the job?<br>
</blockquote>
<br>
A datablock would do the job if I could make it work.<br>
<br>
Steve<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Cheers<br>
<br>
Ruben<br>
<br>
On Tue, Nov 23, 2010 at 9:38 PM, Steven Timm <<a href="mailto:timm@fnal.gov" target="_blank">timm@fnal.gov</a>> wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am trying to create the example DATABLOCK volume<br>
as shown on<br>
<br>
<a href="http://www.opennebula.org/documentation:rel2.0:img_template" target="_blank">http://www.opennebula.org/documentation:rel2.0:img_template</a><br>
<br>
bash-3.2$ cat datablock_test.one<br>
NAME          = "Experiment results"<br>
TYPE          = DATABLOCK<br>
# No PATH set, this image will start as a new empty disk<br>
SIZE          = 2048<br>
FSTYPE        = ext3<br>
PUBLIC        = NO<br>
DESCRIPTION   = "Storage for my Thesis experiments."<br>
<br>
bash-3.2$ oneimage register datablock_test.one<br>
Error: mkfs Image: in mkfs command.<br>
<br>
What is missing?  Template reference page seems to<br>
indicate that I need SOURCE or PATH required, but<br>
what would be SOURCE if I just want to start with<br>
a blank file system?<br>
<br>
------------------------<br>
<br>
Also I  have more questions on the qcow2 format:<br>
a) we are running opennebula 2.0, haven't there been some<br>
bug reports that qcow2 isn't working with latest opennebula.<br>
b) It's my understanding that qcow2 format does quick copy<br>
on write, how does that mesh with a image that is persistent--i.e<br>
in normal circumstances only one system would be using it?<br>
<br>
Does anyone know of a way to send a sparse image along with KVM<br>
or can that only be done in Xen?<br>
Steve<br>
<br>
<br>
<br>
On Fri, 12 Nov 2010, Ruben S. Montero wrote:<br>
<br>
 Hi<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Yes OpenNebula supports that functionality. You can define spare file<br>
systems that can be created on the fly and then saved for later usage.<br>
There are two aspects to be considered:<br>
<br>
*Usage*<br>
<br>
This can be implemented with the new image repository using a<br>
DATABLOCK image, more information on this [1]. Also you can define a<br>
FS image to be a plain FS that will be created the first time and then<br>
can be reused, options for disks in [2]. If you use the image repo, be<br>
sure to make the image persistent, and when using the second option<br>
make sure to include SAVE=yes in the disk so you keep the changes.<br>
(Note that SOURCE in the previous image definitions may point to a<br>
block device)<br>
<br>
*Implementation*<br>
<br>
This depends on the storage architecture you are planning for your<br>
cloud. The images can be backed by a device (e.g LVM, you need to make<br>
the devices known to all the WNs) a shared FS (NFS is not an option<br>
but may be Ceph, GlusterFS or Lustre works in your setup). Also you<br>
can use qcow formats that will dynamically grow and may help to move<br>
the disk around. OpenNebula 2.0 can be used to implement these<br>
options. You may need to tune some of the drivers to match your system<br>
tough.<br>
<br>
Let me know if you need more help<br>
<br>
Cheers<br>
<br>
Ruben<br>
<br>
[1] <a href="http://www.opennebula.org/documentation:rel2.0:img_guide" target="_blank">http://www.opennebula.org/documentation:rel2.0:img_guide</a><br>
[2] <a href="http://www.opennebula.org/documentation:rel2.0:template#disks_section" target="_blank">http://www.opennebula.org/documentation:rel2.0:template#disks_section</a><br>
<br>
On Thu, Nov 11, 2010 at 8:00 PM, Steven Timm <<a href="mailto:timm@fnal.gov" target="_blank">timm@fnal.gov</a>> wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I have a user who has a need for 250GB of disk storage (eventually)<br>
that he would like to migrate around with his VM.  NFS isn't<br>
suitable for this application.  This is an application which will<br>
start with a file base and then gradually grow.  On Amazon this<br>
could be a use case for EBS but ONE doesn't have anything like that<br>
as far as I can tell.<br>
<br>
My question, can I create an opennebula template that calls out<br>
device "vdc" as a sparse file system eventually growable to 250 GB,<br>
and migrate that and save that as necessary?  If so, how?<br>
We are running opennebula 2.0 and using KVM as our hypervisor.<br>
<br>
Steve Timm<br>
<br>
<br>
--<br>
------------------------------------------------------------------<br>
Steven C. Timm, Ph.D  (630) 840-8525<br>
<a href="mailto:timm@fnal.gov" target="_blank">timm@fnal.gov</a>  <a href="http://home.fnal.gov/~timm/" target="_blank">http://home.fnal.gov/~timm/</a><br>
Fermilab Computing Division, Scientific Computing Facilities,<br>
Grid Facilities Department, FermiGrid Services Group, Assistant Group<br>
Leader.<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opennebula.org" target="_blank">Users@lists.opennebula.org</a><br>
<a href="http://lists.opennebula.org/listinfo.cgi/users-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/users-opennebula.org</a><br>
<br>
<br>
</blockquote>
<br>
<br>
<br>
<br>
</blockquote>
--<br>
------------------------------------------------------------------<br>
Steven C. Timm, Ph.D  (630) 840-8525<br>
<a href="mailto:timm@fnal.gov" target="_blank">timm@fnal.gov</a>  <a href="http://home.fnal.gov/~timm/" target="_blank">http://home.fnal.gov/~timm/</a><br>
Fermilab Computing Division, Scientific Computing Facilities,<br>
Grid Facilities Department, FermiGrid Services Group, Assistant Group<br>
Leader.<br>
<br>
<br>
</blockquote>
<br>
<br>
<br>
</blockquote>
<br>
<br>
</blockquote>
<br>
-- <br>
------------------------------------------------------------------<br>
Steven C. Timm, Ph.D  (630) 840-8525<br>
<a href="mailto:timm@fnal.gov" target="_blank">timm@fnal.gov</a>  <a href="http://home.fnal.gov/~timm/" target="_blank">http://home.fnal.gov/~timm/</a><br>
Fermilab Computing Division, Scientific Computing Facilities,<br>
Grid Facilities Department, FermiGrid Services Group, Assistant Group Leader.<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Dr. Ruben Santiago Montero<br>Associate Professor (Profesor Titular), Complutense University of Madrid<br><br>URL: <a href="http://dsa-research.org/doku.php?id=people:ruben" target="_blank">http://dsa-research.org/doku.php?id=people:ruben</a><br>

Weblog: <a href="http://blog.dsa-research.org/?author=7" target="_blank">http://blog.dsa-research.org/?author=7</a><br>