Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

CESNET - TRUSTED CLOUD DRIVE INSTALLATION INSTRUCTIONINSTRUCTIONS


A) Single VM installation:

All virtual machines were Ubuntu 64-bit 12.04 LTS with OpenJDK 1.7

For a single VM installation I followed the PSNC guide

I didn't bother with setting up SimpleSamlPHP and Apache, I was using just Jetty to serve the webcontent.

...

OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode)

Only issue I found was with the jquery.js paths :(see below)

 

 

B) Multiple VMs installation:

I didn't bother with setting up SimpleSamlPHP and Apache, I was using just Jetty to serve the webcontent.

For the multiple VMs installation I followed the https://github.com/VirtualCloudDrive/CloudDrive/wiki/Two-Quick-starts

I made 5 VMs for this setup :

...

On the webserver I decided to simply use provided Jetty to start things up. There I only edited the CloudDrive-master/src/web_clouddrive/src/main/props/production.default.props file to connect to the MySQL server on the other VM, packaged it with "./sbt package" and copied the resulting .war file to CloudDrive-master/binaries/website/root.war.

Issuing ./sbt update and then ./sbt ~jetty-run I was able to start the website. You can reach it at http://clouddrivewebserver1.du1.cesnet.cz:8080


Problems:

1)

Both installations have the same problem with serving the jquery.js file. When I am logged in the website and I am at the root of my home directory view, I can click the buttons to create new folder or upload a file with no problems (buttons have javascript onclick listeners on them). The URL of jquery.js file is http://clouddrivewebserver1.du1.cesnet.cz:8080/jquery.js. The URL of the webpage is http://clouddrivewebserver1.du1.cesnet.cz:8080/webdrive .

But when I descend into a subdirectory, say /test/ and I try to create new folder, nothing happens. Back when I check the Jetty log I can see the 404 error and a Java stack trace of NullPointerException (can be seen in included file). My browser is now trying to access the URL http://clouddrivewebserver1.du1.cesnet.cz:8080/webdrive/jquery.js while the URL of the webpage is http://clouddrivewebserver1.du1.cesnet.cz:8080/webdrive/test .

2)

The second problem is with multi-VM setup and downloading files. When I try to download a file via the website in the single-VM setup, it works and I am able to successfully download the file. But when I try to download a file via the website from the multi-VM setup, I get an error webpage and then when I check the folder, the file I tried to download is gone. Debug logging from the Jetty of the failed download attempt can be seen in the atteched file.

After going through the configuration files I suspect the error being in declaration of filesystem_prefix in /etc/rightfabric/config.txt. There it states:

#If you use the local filesystem for data storage, this is the folder or
#mount point to store. Note that it must be shared across all machines in a
#multi-machine setup. E.g. via SMB or NFS or so.
#NOTE THE TRAILING SLASH IN THE PATH
filesystem_prefix = /cloud/data/

 

The thing is, I have this setup as a directory on the local disk of my App VM as that is the place where I store the blobs (I upload files via cadaver which connects directly to App VM). I can see the files being there:

cloud@clouddriveApp1:~$ ls -lh /cloud/data/maarten/
total 17M
-rw-r--r-- 1 cloud cloud  128 Nov 26 14:34 01a6cad3-a67a-4129-8457-4aafbd5dceb6
-rw-r--r-- 1 cloud cloud   32 Nov 26 16:54 1b7892b2-281b-4b13-ae7e-9901a1efbba0
-rw-r--r-- 1 cloud cloud  784 Nov 26 14:51 25c61c78-4b0a-4926-8605-978b22157672
-rw-r--r-- 1 cloud cloud  784 Nov 26 16:08 3c43d014-af5c-4a53-95e9-ae1ba6858b0c
-rw-r--r-- 1 cloud cloud  784 Nov 26 16:08 3e0719ab-9458-41f7-a259-65882e08bebf
-rw-r--r-- 1 cloud cloud   16 Nov 28 09:35 5d1520fc-8e78-446a-a7aa-f64ac986f3a3
-rw-r--r-- 1 cloud cloud 8.3M Nov 28 11:30 927058df-09ee-44c6-a05d-8268abaf02b6
-rw-r--r-- 1 cloud cloud  784 Nov 26 16:42 a54b85d6-2f34-4b5d-bdd8-e335365c45ea
-rw-r--r-- 1 cloud cloud 8.3M Nov 28 12:21 accfe894-5f04-40dc-84b9-7442bb14b27d
-rw-r--r-- 1 cloud cloud 4.1K Nov 28 09:36 d481e8f2-da9f-4957-8e35-17d73eeedc6f
-rw-r--r-- 1 cloud cloud  784 Nov 26 14:47 d9b19d10-1608-45fc-bdb4-5cf841660d75

 

Then on the webserver I can see the directory is created but obviously it is empty:

cloud@clouddriveWebserver1:~/CloudDrive-master$ ls -lh /cloud/data/maarten/
total 0

Do I understand correctly, that I need to have the filesystem with binary blobs of stored files mounted even on the webserver nodes ? I would imagine the WebDAV daemon nodes having the need to see the filesystem as they process the files.