[Box Backup] Virtual Machine backup

Dave Bamford boxbackup@boxbackup.org
Fri, 05 Jun 2009 14:41:06 +0100


Hi Chris

I tried the LDFLAGS=static but I got this error

configure:8360: checking for openssl/ssl.h
configure:8368: result: yes
configure:8384: checking for SSL_read in -lssl
configure:8419: g++ -o conftest -g -O2  -static conftest.cpp -lssl 
-lcrypto -lz  >&5
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_bind_func':
(.text+0x2fb): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_bind_func':
(.text+0x3ae): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_bind_var':
(.text+0x42b): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_bind_var':
(.text+0x4d6): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_unload':
(.text+0x52d): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_load':
(.text+0x5e2): undefined reference to `dlopen'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_load':
(.text+0x64b): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libcrypto.a(dso_dlfcn.o): 
In function `dlfcn_load':
(.text+0x678): undefined reference to `dlerror'
collect2: ld returned 1 exit status

Using debian lenny.

I think the best idea is to let the script which takes the machine 
snapshots replace the output
file and see if box diffs it. It should work according to Ben.
The only issue now is how to set up the box parameters so box can upload 
a 200G file.
I think I will build a test vm with a small footprint first.

Thanks

Dave
Chris Wilson wrote:
> Hi Dave,
>
> On Wed, 3 Jun 2009, Dave Bamford wrote:
>
>>>> Ideally box should run at the hypervisor level but there are no 
>>>> tools to compile at this level. I can get ssh access and get to an 
>>>> ash shell. uname -a reports VMKernel.
>>>
>>> Box Backup is designed to compile in pretty minimal environments. 
>>> You may be able to cross-compile for the hypervisor environment by 
>>> setting "LDFLAGS=-static" at configure time when building on a 
>>> machine with a build environment where you can compile Box Backup 
>>> normally.
>>
>> Where would that go exactly, I am not an expert on building 
>> /compiling. I'll give it a try.
>
> You could try putting it on the configure command line, e.g.
>
>   ./configure LDFLAGS=-static
>
> If that doesn't work, please post the results. You can use the ldd 
> command to see whether the binary is linked to any dynamic libraries 
> or not. If not then it should be good to run on the hypervisor.
>
>> I copied the files from a vmware esxi machine to another machine via 
>> NFS today 220Gb in total ( a virgin install of sbs 2003 ) and it tar 
>> gzipped to 2.3Gb, of course it only contained the OS and no user data.
>>
>> All "bare Metal" backups solutions seem to cost in excess of $500. 
>> The big issue to me is the delta blocking which box does well. But by 
>> taking a new snapshot each time box will see this as a new file and 
>> back the whole thing up. Even with an uplink of 2M which you can get 
>> with ADSL2+ it will take too long.
>
> If you replace the existing snapshot with a new one with the same file 
> name, then Box Backup should do an incremental backup of it, in 
> theory. If not, please let me know and I'll investigate.
>
> Cheers, Chris.