-
Notifications
You must be signed in to change notification settings - Fork 5
Installation
##Installation instructions
For installing plainvm you need Perl v5.10+ with few modules installed:
- AnyEvent
- JSON
- Image::Imlib2
- HTTP (HTTP::Request, HTTP::Response)
These modules can be installed using cpan
:
cpan AnyEvent
cpan JSON
cpan Image::Imlib2
cpan HTTP
For installing Image::Imlib2
you may first need to install imlib2
. It's located in libimlib2
and libimlib2-dev
packages for Ubuntu and imlib2
, imlib2-devel
for Fedora.
After that make sure that plainvm/endpoint/src/main.pl
and plainvm/entryhost/src/main.pl
are executable.
chmod +x plainvm/entryhost/src/main.pl
chmod +x plainvm/endpoint/src/main.pl
By running endpoint/src/main.pl
you'll start the End point. After that run entryhost/src/main.pl
to start the Entry host. If the connection between both is not established successfully check the configucarion files (located at endpoint/conf
and entryhost/conf
).
If you want to use plainvm with many End point instances just start the End point on all of them and insert their host names into entryhost/config/endpoints.conf
.
If you want to start the remote desktop access to the virtual machines you need some extra work. If you use VirtualBox for virtualization platform you must install VirtualBox's extension pack for your version of VirtualBox. After you're done with this you need Guacamole. For integration with plainvm you can use the dirty patch of Guacamole's JavaScript files. In /etc/guacamole/user-mapping.xml
enter all hosts for which you need remote access. For user name enter the VM's id, the password field leave empty. If you want to use plainvm for creating this mapping you should make the user mapping file writable by the user by which plainvm is started:
chmod +w /etc/guacamole/user-mapping.xml
Here is a sample file:
<user-mapping>
<authorize username="d4984690-bd87-4029-be99-a44996a6d7ba" password="">
<protocol>rdp</protocol>
<param name="hostname">localhost</param>
<param name="port">3355</param>
</authorize>
<authorize username="d26d067a-f6e7-441b-9bd1-a05fbe846642" password="">
<protocol>rdp</protocol>
<param name="hostname">localhost</param>
<param name="port">3356</param>
</authorize>
</user-mapping>
Currently there's no better integration with Guacamole and probably the installation guide is a bit complex. You can also improve it by contributing to the project.
by Minko Gechev, http://blog.mgechev.com/