CD Upload Server

Registered by Evan Broder on 2009-08-16

We should provide a means for users to upload their own boot CDs to Invirt. Drawing on discussions we've had in the past, here's how I think the process should work (all hostnames, paths, etc are preliminary):

- User is told to sftp CD images to <owner>@xvm-images.mit.edu:~/cds/ (names preliminary)

- User homedirs on xvm-images are FUSE-backed, with dynamically generated .k5login files. ~/cds/ is a symlink to /tmp/cds/<owner>. If that directory doesn't exist, the FUSE FS creates it when something calls readlink on the symlink.

- User goes back to the website, which shows him a list of the CDs that have been uploaded to any locker's account on xvm-images that he has bits on, with a button by each one to "finish the upload process"

- xvm-images' host creates an appropriately sized block device and `xm block-attach`es it to xvm-images.

- xvm-images then copies the disk onto the block device

- When the copy is done, the host `xm block-detach`es the LV

- Any files in /tmp/cds are garbage collected when they're more than a week old.

The LVs should have different prefix namespaces when xvm-images is doing the copy, and after it's complete.

My current thinking is that custom discs should count against your total disk quota.

There are some unresolved details with regards to who sends remctls where and through whom, but those are details. I personally have a preference for xvm-remote being a hub and repeater for all remctls.

One potential expansion of this service would be direct access to VM disks. I'm not entirely sure how that would work, but the FUSE FS would probably have to translate the block device of the VM's disk into a regular file for scp and sftp to play nicely.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Evan Broder
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

Updated spec to associate CDs with owners, not individual VMs.

-- Evan, 2009-12-27

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.