Home server PC

You can skip this article if you are not an IT person 🙂

While I am away doing a volunter IT system admin job in Israel, I have a small computer back in the UK I use a server.

Its a little Dell Optiplex SX280, its a ultra small form factor PC about the size of a large telephone book.   I used to support these type of PCs in a hospital I worked at, and I decided to get one for myself to use as a server.  I paid about £75 for it off ebay which the seller promised it had a Pentium 4 2.8 processor, so I was quite pleased when it arrived with a 3.2 processor 🙂   I added 2.5Gb of memory and a 320Gb hard disk, which uses normal off the shelf bits.   The performance of the PC is good but I would recommend vacuuming out dust from the insides which can block up the fans once in a while.

This mini server is perfect for me, although it doesn’t have any slots, and can only support one hard disk.   I use this computer in conjunction with VNC and RDP using a Dynamic DNS address my brother in law Jim helped me set up along with the right setting in a now very obsolete B series Netgear wireless router.   In more recent times I just use Logmein which is easier and less fiddly to set up.   These days I prefer small quiet computers.  I used to work at Novatech a computer dealer just outside of Portsmouth and since then I have lost interest in self-build/clone PCs which turn out to be more trouble than they are worth in their reliability and quality, having mostly Asus based clone PCs at my work, I spend a lot of time replacing failing hardware.

1. I run virtual machines on it using Windows XP as a base operating systems and simulate multiple extra computers and used it to learn a lot about Windows 7 which it runs beautifully under Sun/Oracle’s Virtualbox.

2. I use this box for downloading TV shows from BBC iPlayer using a special alternative app that downloads them as MP4 files, as this cannot be done on a non-UK IP address, so I can get TV shows remotely and copy them into Dropbox and watch them on my laptop here in Jerusalem.

3. I also do web based surveys which earn me a small amount of Amazon vouchers, this only works in the UK.

4. When I eventually head back to the UK I can stream TV shows off to it, althoughnI am one of these odd people who still has an old fashioned CRT telly, so will look at to treat myself to a LCD TV when I am one day back in the regular workplace again.

As an IT person its important not to stop learning new things, and I am wondering what my fellow peers in IT do to use as a lab for trying out stuff.

However in recent times for my work I need to learn more server environments like Windows Server 2003 and 2008, the latter version is mostly used in 64 bit form, also VMware which is the most popular software system for running virtualisation set ups, so I now need a 64 bit based system as a server.

Something like a Mac Mini would be nice, and they run Mac OS X, Windows, Linux under VMware well I think, but these are expensive at least £600 and not easily expandable (laptop style memory and hard drives

A few months ago, I came across an advert from DABS.com for this clever piece of kit, the HP Proliant N36L

These little HP servers look great as:

1. They are small form factor, can sit in a shelf or a cupboard out of the way, only uses 40-70 watts of power, means more time on a UPS power back up system, quiet running fans.

2. Really cheap, about £140, actually £240 but you get £100 back from a rebate from HP.    A real server for the price of a simple NAS device.

3. Have chassis to support 8Gb of RAM (2x 4Gb) and 4 hard disks in a RAID array.

A few limitations on this device is, relatively low powered 1.3 AMD CPU (but is 64 bit) only 1Gb of RAM and single 250Gb hard disk (just to get you going, you will need to upgrade)   no optical drive, you can get a DVD writer for £12.50 (I got from Amazon free shipping!) anyway or install Windows or Linux from a USB stick.   Just a blank drive for your preferred operating system.    The low spec of the server is intended for businesses with less than 10 people.

So the plan is, when I am next in the UK, is to get one of these HP microservers and put it in place of the Dell, run VMware ESX and similar and run a XP virtual machine and various other environments for myself, questions I have, is VMware easy for me as administrator to control from a long distance without anything going wrong that needs someone nearby?   I am going to a VMware conference in Tel Aviv this week.

Also, two of these would be great for a project at my work as I need to run a critical database system in a remote location, instead of the traditional server having two power supplies and two hard disks in case of one failing, having two relatively cheap servers running parallel with data mirrored on both of them, this in my opinion seems like better performance and redundancy for the money it seems.

I think HP will sell loads of these units, I would love to see if any other IT pros have bought for them for their own test environments, or even if two or more given their bargain price could be used to run a critical system needing redundancy or fail over of some sort.

Some people are running Microsoft’s Windows Home Server (WHS) on these, this seems fine but I would rather use an enterprise grade server like Ubuntu or Server 2008, or just stick to a NAS to store videos and music on.   Microsoft have free 90 day trial versions of Windows 7 and 180 day version of Server 2008 to test out which I want to play around with more.

Virtualising PCs using Virtualbox to make system admin easier and use less hardware

IT things, skip down a bit if not your thing 🙂

At work I have been using Virtualbox to manage virtual machines.   As an open source replacement for VMware or Microsoft’s VirtualPC I like it, its got the backing of Sun Microsystems (now owned by Oracle)  There are regular updates and active forums for support.   When I first heard of it from a colleague 3 years ago, you can literally throw almost any operating system at it, I used one of the first betas of Windows 7, various Linux distros, and things like Android, the fast becoming popular phone operating system, and all of these worked first time with very little issues.

In a nut shell, it makes a PC into multiple independent computers to run several systems at once, meaning less physical hardware to run servers, test PCs and other things.   The host (physical lump of metal) machine can be Windows, Mac or Linux.

This saves our organisation money as we have less actual hardware, patches and updates are easier manage and less power consumption and disk space used.

Each host that controls virtual machines has folders on the root of a drive as follows, with shortcuts onto the desktop:-

I wrote some documentation what I have done for work, this is not exhaustive, nor have I read much in the way of best practices for virtualisation.  But it is what has worked well for me.   At the moment I have a server which uses macros with Microsoft Excel and Outlook to process helpdesk app for our home repair team.   I didn’t create this system as there was no documentation for it, I took it off a physical PC, virtualised it and stored it safely on a dedicated server.   By stripping out unnecessary applications (Windows Media player, Adobe Acrobat etc) , it only needs about 8Gb of disk space.   I also have our SAP finance app which is on an Windows 2000 server box virtualised which made it one heck of a lot easier to apply patches and updates and do maintenance.   This week a normal Windows XP PC used by a member of staff who is the US which is only controlled by a VPN connection has been converted and stored the same way.

On the root of the drive I have made several folders on each host PC as follows:-

\live
– for real running machines currently used in production. When planning backups, these cannot be copied easily as files will be ‘locked’ as they are actively in use.
\backups
– Copies of critical virtual machines before making any changes. In the event of a change or update breaks the configuration, you can revert back to a previous build.   Make this folder sharable over the network.
\nonproduction
– VMs used for experimental use.  These don’t need to be backed up.
\isos
– copies of CDs, operating system media, service packs, etc. Instead of needing physical media inside the host, these come in handy, as you can do changes to the host remotely with VNC or Remote desktop (RDP)  and grab the CD you want from here.

Best settings for typical configuration

  • Use modern hardware for your host.   You should have a PC with a dual core processor which support hardware assisted virtualisation, Intel and AMD’s recent chips do this.   You should have at the very least 2Gb of RAM, preferably 4, and a mirrored disk RAID array where you VMs are going to sit, as a safety net in case of one disk fails.   Below make sure VT-x/AMD-V is ticked if you do have the one of the newest Intel/AMD cpus that support it.  It will work without this, but this is definitely recommended to have decent hardware.
  • OS for the host.   I am using plain old Windows XP (32 bit, with SP3) as a host, this isn’t ideal for several reasons.   You can’t run 64 bit guests, such as Vista, 7 and all recent Linux distros have 64 bit versions.  Secondly, standard plain-jane XP only can cope with a maximum of 3.5Gb of memory, so if you have 4Gb or more, the extra memory is redundant.   We don’t have licences for any other OS to be used as a host, and I don’t know enough about Linux to do system administration this way, but for those who do, it would be a good plan.
  • Disable sound, USB, floppy drive, serial port, support, etc you are unlikely to need these.
  • Once the Virtual machine has booted, install the guest addons.   This is a clever set of drivers that let the VM integrate well with the guest environment, you get proper video card drivers, mouse pointer will work seamlessly with the host.
  • Make sure you set network card settings to bridged (default choice is NAT)   If you don’t do this, the network card doesn’t work properly, and after I switched the setting from NAT to Bridged it still didn’t work, so I ended up building a new VM.
  • Disable the blue/green Windows XP trim on both VMs running Windows XP and the hosts, this boosts performance.   To do this:- goto control panel / system /  advanced / tick box for best performance / ok.
  • Install only the bare essential applications on the host.   My host, just has AVG antivirus, Infrarecorder, (CD burning) VNC and latest RDP for remote access, Internet Explorer 8 (This PC is not used for web browsing, its there as part of the updates)    I purposely left out things like Adobe Acrobat, as it will mean another set of updates to worry about.
  • Use a specific IP range for your VMs, I choose 192.168.x.90-99.
  • Put a second network card in your host, you can make your VMs work choose which network card to use (upto 4)  as I have found today, one network connection stretches things, when you have a dedicated finance server and another PC which requires a user to use remote VPN connection to it, which kept dropping.   Today, I took the server down and put an extra NIC card and directed the remote user’s VM to this.

Known issues and risks

  • When changing settings on a virtual machine, consider this like a real PC, the VM must be shut down for any changes made in configuration.   Changes to memory, disks, etc cannot be done whilst the VM is running.
  • Make sure your host does not have Windows updates on automatic.   Otherwise unexpected reboots to the host will happen when patches get rolled out.
  • When installing Virtualbox, the installation will add and extra virtual network card to the host system, it will also temporarly break network connectivity on the main network card you are using, normally RDP will attempt to reconnect soon after.   Tip! Download and install the latest version of RDP, there is a new version Microsoft released with Win7, this works happily with XP, and has some improvements on this old version. 🙂
  • Some legacy operating systems (or at least if they are converted from physical to virtual) may hang upon boot up. With Windows 2000 Server I built you need to tick the box for IO APIC.
  • When rebooting some VMs, you may experience a system hang with green stripes, you need to manually restart the VM. This does not impact the VM or damage any system files, but just remember if you remotely reboot that system you might need to manually reboot.  Since I moved from 3.2.8 to 3.2.10 this problem seems to have gone I think.
  • Dont be too enthusiastic to indiscriminately install a new version of Virtualbox without making careful back ups of your VMs. Be prepared for possible problems, seeing as many Virtualbox users have said their VMs failed to boot or crashed if a new version of Virtualbox was installed, due to differences in the way it handles the virtual hardware.
  • The feature that suspend VMs (click the X in the corner, there is an option to send shutdown signal, force a shutdown or suspend a VM) seems to give an odd issue that slows the clock down. This could cause some odd side effects with important servers, so I suggest not using this.

This set up works well for a smaller organisation like us, feel free to comment if you have questions.

One thing I would like to ask, and that if anyone can recommend an app I can run on my host, to monitor network, memory, CPU and hard disk space to make sure I don’t overtax my server with too many tasks.