Personal virtual servers


Recently, we decided to provide personal virtual servers as an employee benefit. After briefly evaluating typical virtual servers provided by hosting companies, we ended up with an above average configuration. We wanted to provide at least 1 gigabyte of memory, over 50 gigabytes of disk space, a fast enough Internet connection and adequate processing power. Because delivery times for server hardware are rather long (on the order of a few weeks) and the setup is more difficult (requesting a new IP block to our server room is quite an inconvenient and slow process), we decided to rent a dedicated server, including 2 x 80 GB SSDs, 2 x 1500 GB SATA disks, 24 GB of DDR3, 2 x quad core Xeon processors and a 1 gbit/s Internet connection.

After changes to our installation server (FAI) and to our internal virtual machine management tool (also known as VIMMA), we were ready to go. If you ever stumble upon a link to futupeople.com or futupeople.mobi, you know it’s ours. As soon as the first server is full (23 virtual servers), we’ll rent the next one.

We also wrote the following usage policies: No work related stuff. Use your own judgement.

Short and simple. We trust our employees.

Speaking of VIMMA, some time ago we streamlined the process for handling our work-related virtual servers. Whenever someone needs a virtual server, he (or she) can just go to VIMMA and click “Create a new virtual machine”. The new machine is automatically installed, up and running, and the creator is notified by email, all in less than 30 minutes. Another great thing is that the creator – and all other employees with access to the server – can grant or revoke access for others using a simple web application. When a new person joins the project, any old member can modify the access control lists. No bureaucracy (but automatic audit logs of course), no approvals from managers, no requests to an outsourced IT department (we don’t have an outsourced IT department at all).

Going forward, the next large project for the IT team is further development of an internal search engine – for network disks, our wiki, bug tracker, source code repositories, Yammer posts, Basecamp data, and so on. Currently, a prototype has already been implemented using Solr.