Tell me more ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm looking for a cloud software solution that:

  1. Can run on both server and desktop machines;
  2. Virtualizes hardware and has the option of exposing each real machine to the cloud;
  3. Allows a VM to be "locked" to a set of real hardware capabilities and stay there until moved (e.g. a user's "real" desktop);
  4. Allows a VM to link to some types of devices elsewhere (e.g. USB/serial via ethernet); and
  5. Is geography-aware to control movement of VMs between real networks.

I'm aware that this may be the holy grail of virtualization, and I've searched alot. Some solutions appear to meet some criteria but not others. Most cloud implementations appear to ignore real hardware, for example.

I realise that this may be solved by using three different implementations in combination:

  1. A standard cloud server farm.
  2. A bare-metal network backup utility with PXEBoot.
  3. VNC and/or VDI. (VNC obviously would require the real hardware to be running.)

This combination, however, has some serious drawbacks that I'd like to solve by treating it as one system.

My explanation follows...

I have a network of real servers and desktops in multiple locations.

I've virtualized servers before using Virtualbox and that's worked quite well. I've even connected USB devices to VMs on servers.

I would like to virtualize the desktops in all my offices to facilitate movement of desktops, remote access (e.g. VDI) and bare-metal backups. However, I know that there are problems with this. For example, some desktops have specific hardware (e.g. 3D graphics cards, USB devices, etc) that limit their mobility. Geographic constraints also limit movement in that VMs can be moved easily within offices, but transferring between offices is not always preferable.

What I would like to find is a system that can virtualize everything from bare-metal easily by maintaining an abstraction layer on each client and server machine that exposes the hardware available and runs as a cloud. Then certain VMs would be "locked" to specific hardware (so that, e.g. the VM runs only on their own desktop.) This would be required for situations where speed is important (e.g. 3D graphics pass-through).

In addition, abstracted low-speed devices (e.g. USB) could be piped from real hardware to a VM in the cloud. This is important since if a VM is taken down, another VM can connect to the real hardware for minimum downtime.

share|improve this question
1  
What specific problem are you trying to solve? I don't see much in this request that points to the Cloud as a solution. – ewwhite Oct 15 '12 at 1:03
1  
USB over IP sounds plausible. The rest though...'has the option of exposing each real machine to the cloud' - smacks somewhat of buzzword bingo. The cloud is 'nothing' more than an abstraction for PAAS and SAAS, and you run things on a cloud, not expose things to it. – Journeyman Geek Oct 15 '12 at 1:05
@white. I'm trying to solve the problem of losing data, HA VMs, downtime, and desktop availability while maintaining hardware control and scalability. – tudor Oct 15 '12 at 1:18
@JourneymanGeek. Not buzzword lingo. This is a real-world problem. Like I said, I've seen some solutions that cross the cloud-real boundary but they don't all have everything that would pair VMs with real machines and cloud machines in the one system. – tudor Oct 15 '12 at 1:19
@JourneymanGeek With Virtualbox, I can expose hardware to a VM. I believe I can also expose that over a network, too, although I haven't done it. There's nothing that says, therefore, that I can't have the cloud system manage those connections and connect the VM to the hardware whether by emulation or pass-through. For example, in order for a cloud to work, a network connection must be abstracted and managed. Otherwise, the whole cloud system would not work. It's not simply PAAS and SAAS. I'm extending this to Device As A Service, just as Virtualbox does already. – tudor Oct 15 '12 at 1:38
show 6 more comments

closed as not a real question by Adrian, ewwhite, rnxrx, Ward, MadHatter Oct 15 '12 at 12:36

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, see the FAQ.

1 Answer

  • Virtualize your desktops... VDI (e.g. VMWare View, Citrix VDI in-a-box) or your applications (Citrix XenApp, MS RemoteApp) or use a straight Microsoft RDS or Citrix solution.
  • For systems with hard resource requirements, why not continue to use a PC?
  • Use Microsoft Active Directory and Group Policy to enable mobility, set policy and centralize documents/backups (file server). Roaming profiles? My Documents redirection?
  • All of the above, minus a standalone PC, can be virtualized...
  • Maybe local VM hosts systems per location?
share|improve this answer
I have considered VDI. It's implementation means that you have to have very heavy server load. I think this is overkill when the user already has a PC on their desk that does what they want. I would consider using a real PC, but it presents problems of fast recovery, and the machine has to be on to be "live". If the user wants to access their desktop offsite, then running from the "cloud" would make sense, but it doesn't make sense to run it from the cloud all the time as it reduces response time. It doesn't make sense to run it from the machine all the time since that costs energy. – tudor Oct 15 '12 at 1:20
@tudor See XenApp and Microsoft RemoteApp. – ewwhite Oct 15 '12 at 1:24
I agree with you regarding local VM hosts systems per location. However, I would like them to be the same so that they can work in tandem. For example, moving a staff member from one office to another permanently. – tudor Oct 15 '12 at 1:24

Not the answer you're looking for? Browse other questions tagged or ask your own question.