Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
##What is plainvm? plainvm allows you to control and create multiple virtual machines which are distributed among many hosts. The only thing you need is plainvm installed and browser which supports HTML5. For the virtualization you can use any platform (currently only Virtualbox is supported). Everything is done real-time through the websocket protocol so multiple clients can access the environment simultaneously. If all dependencies of plainvm are installed the client can establish direct access to any virtual machine and control its' desktop. As the project is in it's second release there are some limitations which can be found in the next sections. plainvm is distributed under the terms of the GPL 3.0
##How does it work? plainvm has few key components. There're end points and entry host. The end points are the hosts where the virtual machines are actually located. The entry host is the machine which is used for accepting the clients and providing the machines hosted in the end points. In the simplest case the end point and the entry host could be the same machine. That's the case in which a single host with virtual machines is used. The communication between the client and the entry host is done with the websocket protocol. plainvm has build-in web server so there are no extra dependencies. The communication between the end points and the entry host is established through tcp sockets.
##Advantages of plainvm plainvm is modern way of using your virtualizaion platform over the Internet. You can run plainvm on any device which supports HTML5 and WebSocket. You can even use your mobile device to access your virtualization infrastructure. Sample advantages of plainvm are:
- Web interface accessible from everywhere.
- Real-time communication between the Client and the Entry host.
- Duplex communication channel between the Client and the Entry host.
- The client uses pure HTML5 without any plugins.
- Concurrent use of the infrastructure between many clients.
##Quick user guide plainvm is a single page rich internet application (RIA). It's home screen can be seen bellow:
The digits bellow corresponds to the digits which are located on the image above:
- Screenshot of the selected machine if available. When the machine is started and Guacamole is installed and configured properly by clicking on the screenshot remote access to the machine's desktop will be opened in the current window. When double click on the screenshot - remote access will be opened in new browser window.
- Properties of the selected machine
- Host name of the End point where the virtual machine is located
- Buttons for control over the machine (from left hand side to right hand side):
- Start the machine
- Shutdown the machine
- Poweroff the machine
- Edit the VM's properties (CPU, RAM, VRAM, ..etc.)
- Name of the virtual machine in left and it's operating system in right.
- Icon of the machine which depends on the operating system of the virtual machine. When the virtual machine is running there's a blue shadow around the icon.
- Tab which contains statistics about the virtual machines (screenshot with the statistics tab can be seen bellow).
- Tab which contains an installation wizard. Using it in two steps you can create new virtual machine.