jesscoburn.com

Tidbits and thoughts on webhosting, web applications and just general cool geek crap.

Archive for the ‘Server Virtualization’ Category


Like any die-hard computer geek/junkie, when Vista was first released I moved to a new desktop running Vista. The downside to going to a new desktop is that same old problem “what do I do about my old desktop? I don’t want to (or I can’t) re-install all my programs, documents, etc?”. So for the past year+ I’ve been running two desktops, my current desktop and my legacy desktop and using terminal services to access my legacy desktop.  Over time, I’ve found myself accessing it less and less as I’ve managed to migrate most of the important bits over but I still don’t want completely retire it, so what do I do?  As a huge advocate of virtualization, it was time to virtualize my old desktop. 

Virtualizing your old desktop the easy way.

After looking for FREE ways to do this to Virtual PC, I couldn’t find anything FREE immediately and simply didn’t want to waste time trying to hunt something down so I decided to check out what VMWare had to offer (let’s face it, they’ve been doing VM long before anyone else, they gotta have something) and sure enough they have a conversion tool that’s available for free to convert your physical machine to a VM (P2V as it’s called) it’s called the VMware Converter

I installed the VMWare converter on my old desktop, hooked up a USB drive with plenty of free diskspace on it and started stepping through the wizard (what a great concept). After a few mouse clicks a had the conversion process running creating a new VMware VM for the latest version of VMware workstation. 

I left the converter running over night and the next morning came in and found it had completed after about 12 hours (I blame the fact that my old desktop was aging hardware, I was writing to a USB drive and I had 80GB of data to convert over).  What’s really impressive is that this was all run while the old desktop was online and active! (READ: NO DOWNTIME). 

When I got in this morning I installed a 30 day trial of VMware workstation, connected the USB drive with the VM on it and started it up.  It started immediately! I had to let the new hardware wizard run a few times,  install the VMware tools and then reboot the virtual machine but after a few minutes my old desktop was now running on my new desktop as a virtual machine and I’m now able to retire my old desktop!

So why is this worthy of a blog post?

Because it’s what I call: BAD ASS TECHNOLOGY. Here’s a bullet list of what I’ve been able to accomplish thanks to this technology:

  1. Going Green: Today we’re all ‘going green’ and worried about carbon emissions, rising fuel costs, etc. By virtualizing my old desktop I just took one more desktop offline.
  2. Security: My old desktop ran Windows XP and although I kept it up to date, it’s an aged platform that will eventually no longer be supported. My virtualizing it and only running that VM when I need to access it, I’m more secure against it getting compromised.
  3. Legacy Data & Programs Safe and Accessible:  By virtualizing my old desktop all my old programs, documents, email, etc are safe. How often have you moved to a new machine only to realize you didn’t copy a document over or that a program you use from time to time no longer runs on your new desktop.  For me I have a program called Adobe ImageStyler I use to create web graphics that has been long retired and no longer available but still very handy.

Unfortunately, I don’t have any whiz-bang screenshots or pictures available. Quite honestly, I didn’t think it was going to work on the first go round and I thought I was going to have re-image the old box again before I could get it to virtualize, but it worked perfectly the first time!

If you’re like me and recently moved to a new desktop (Perhaps now you’re running Windows Vista 64bit and have applications on your old desktop running Windows XP 32bit that you can no longer run) this is a good route to go.  

Conclusion

This is also the first time I’ve run VMware workstation in a couple years (let’s face it, VirtualPC is free afterall and free is hard to compete with) but I have to say it’s definitely still the leader in desktop virtualization (and yeah probably still has the edge in server virtualization too but the gap is narrowing daily).  I highly encourage anyone with an old desktop still running for whatever reason to give VMware a try. With the free converter and 30 day full version trial available, it’s well worth the time to experiment to see if it will work for you. If it does work, it’s going to cost less than $200 to license VMware workstation and make your old workstation your new virtual workstation on your new machine.


A new version of the Linux Additions for Virtual Server is now available from the Microsoft Download Center via the following webpage:

http://www.microsoft.com/technet/virtualserver/downloads/linuxguestsupport.mspx

These new Additions add support for some updated distributions of Linux and are designed to work with Virtual Server 2005 R2 SP1 which is available at http://www.microsoft.com/windowsserversystem/virtualserver

Currently Qualified Linux Guest Operating Systems

The following Linux operating systems have been tested and are on the list of supported guests for Virtual Server 2005 R2 SP1:

Enterprise distributions:

  • Red Hat Enterprise Linux 2.1 (update 7)
  • Red Hat Enterprise Linux 3.0 (update 8)
  • Red Hat Enterprise Linux 4.0 (update 4)
  • Red Hat Enterprise Linux 5.0
  • SuSE Linux Enterprise Server 9.0
  • SuSE Linux Enterprise Server 10.0

Standard distributions:

  • Red Hat Linux 9.0
  • SuSE Linux 9.3
  • SuSE Linux 10.0
  • SuSE Linux 10.1
  • SuSE Linux 10.2

Here’s Jess’s top 10 tips and tricks to help optimize your Windows VPS server running on Virtuozzo. 

  1. Disable Indexing Service
    Unless you’re using the FrontPage search bot you generally don’t need indexing service running and you should disable it.
  2. Defrag your drives
    Disk I/O is king, especially in a VPS and you should be regularly defragging your drives in your VPS just as you would in a physical server.
  3. Don’t run antivirus in the VPS
    Antivirus should always be run from the host node and on our servers it is. We use either AVG or McAfee on our hardware nodes.  This doesn’t mean you have to accept virus infected emails. Configure your mail client to allow a suitable delay in email delivery (I recommend 60 seconds if you can, otherwise 30 should be sufficient) and the hostnode antivirus will take care of the rest. 

    Smartermail installs clamd these days and I recommend you disable it and not use it. It’s proven to be quite the resource hog.

  4. Don’t run spamassassin
    Disable spamassassin checks in your VPS when running Smartermail. If you absolutely have to have spamassassin running with your VPS you should run spamassassin on a Linux dedicated server or vps and remotely connect to it in smartermail, this works great and allows you to make use of threading.
  5. Enable Windows Firewall and secure your VPS
    This is a must. Although the kernel is protected in your VPS, you’re still responsible for security in your virtual private server. Enable Windows Firewall and configure it.

    While on the topic of security you do not have to install OS updates, these are managed at the host-level. However you do need to remain aware of new updates and install them for any other server software you may have installed on your windows vps server such as SQLexpress updates, Smartermail updates, etc.  If you’re using Plesk you can request support to update Plesk for you as it’s installed through an application template. Verify things like open-relay mail servers are not enabled, anonymous FTP uploads are disabled, etc.

  6. Whenever possible use an application template.
    Application templates save memory and diskspace on your VPS.  An example of this is the OS install on your VPS. With just Windows your VPS uses about 150MB of diskspace, yet a full install of the OS uses about 4GB of diskspace. In fact an install of Windows Server 2003 on almost every other virtualization platform will use 4GB of diskspace.  This is a huge savings.
  7. Close your Terminal Services sessions and logout, do not just disconnect. 
    Each active Terminal Services session uses about 20MB of memory.  When you consider each VPS has generally 2 TS sessions (3 if you include the fact you’re able to TS into the console by using the command mstsc /console /v:YOUR_SERVERNAME ) and figure about 30 active VPSs on a machine that adds up to close to 2GB of memory that would be wasted memory on a server.
  8. Some applications when installing may require you to connect to console port.
    One such application is Windows Sharepoint Services 3.0. To connect to the console port use the command from dos:  mstsc /console /v:YOUR_SERVERNAME  where YOUR_SERVERNAME is your VPS host name.
  9. Don’t forget that you can manage your VPS through the Virtuozzo Power Panels,
    This includes tasks such as stop, start, reboot, backup, restore and even mount the filesystem without turning on the VPS.  To access the management port go to:  https://YOUR_SERVERNAME:4643/   where YOUR_SERVERNAME is your VPS host name. Remember when connecting to a port you have to explicitly type http://YOUR_SERVERNAME:PORT/  and not just type YOUR_SERVERNAME:PORT.

    There is a bug in the virtuozzo power panels that it may throw errors and say contact your hosting provider. If you get these errors the first thing you should do is go to preferences and set the timezone to your local time zone and not leave it to server default.  This generally fixes that error and a bugfix is due out shortly from SWsoft to fix this known issue.

  10. Configure your SQL services or better yet use shared SQL.  These days any web application is going to require a SQL database be it MSSQL or MySQL.  My recommendation is use a shared SQL database on a shared database server. Today SQL hosting is pretty cheap (about $10/month for 100MB is the norm) and networks like ours use a dedicated gigabit network for internal traffic so any latency connecting to the SQL server would be offset quickly by the amount of memory and Disk I/O you’d save by not running SQL on your VPS.  If you must run SQL on your VPS though then make sure you set a memory cap on the SQL service or you’ll find before long it’s using all your memory on your VPS and your apps will be starving for memory.
  11. What? 11? You said there was only ten.  Consider this … The Bonus Tip:  Backup, Backup, Backup. 
    With any server it’s important to have backup copies of your web content, databases and any information that’s vital to the operation of your websites and online business. This is the same with VPS servers.  No matter what any host tells you, you should never rely on just one backup or on someone else to manage your backups for you. You should always maintain a local (as in, your local desktop computer in the office or at home) copy of your website and website details.   I have heard horror stories time and time again of this and it always starts as “Well, I assumed  THEY/HE/SHE/THEM/YOU/(Anyone else but me) was doing backups and they just worked!”  What’s the problem?    The problem is backups go bad, files don’t restore, media fry, drives fizzle and bits get lost.  It happens and if anyone tells you it doesn’t happen don’t trust them, keep a local backup of your sites.  Think about this, and we’ll use this scenario instead of thinking of exploding U-Hauls full of fertilizer or natural disasters. One day all of the employees of your hosting company pool in $1 for a lottery ticket and a chance to win a billion dollars. They hit the lottery and each walk away with $100 million (much happier story than that flaming u-haul truck).  During all the celebrating, they decide to have a weenie roast in lobby of the building, the flames get out of control the building, the servers and the backups go up in flames. The new billionaires decide there’s no way they’re fielding those calls and take their new found wealth buy a island in the Caribbean and retire.  All your backups with that host are lost and anyone that knows how to restore your backups is off searching for buried treasure in the Caribbean. It will take ages to ever restore your backups. But if you have a local copy of your data (even if it’s a week old or month old), you’ll be back online and able to rebuild your site within a few days. Backup Backup Backup.

Those are my tips. When it’s said and done the common sense solution is this.  VPS’s have two resources they need to manage the most, that’s memory and disk I/O.  Everything you can do to minimize or optimize your usage of these two resources will improve your VPS performance. I’d love to hear from anyone else that has any recommendations on how to improve the performance of a VPS/VE running on Virtuozzo for Windows.


I recently posted a blog entry about my ‘informal’ apples to oranges comparison of the different virtualization platforms available for windows. Apparently I didn’t spell it out clear enough that things were not on a level playing field.  Well, guys I did it. I went and pissed off Bob. Sorry Bob.

But Bob taught me a couple lessons:

first don’t post half a**ed comparisons without coming out and telling everyone they are half a**ed comparisons and making it blatantly obvious they are half a**ed. I thought I described the different hardware that I had available at the time and mentioned that I had a brand new server on the way to do a real benchmark. He’s 100% correct though so I’m saying it here:  Guys my benchmark from 10/1 is half-assed! There I said.  (but you can bet your a** I’m going to be very thorough in my next test using the same exact machine all running only ONE virtual instance!)

second, read the EULAs & PURs! (that’s End User License Agreement and Product Use Rights) before you go doing something stupid like creating a half a**ed comparison and posting your results on the Internet.  So basically don’t just click “I Agree” and run off installing that application.

So here’s what I learned:

1. VMware’s EULA states:

You may use the Software to conduct internal performance testing and benchmarking studies, the results of which you (and not unauthorized third parties) may publish or publicly disseminate; provided that VMware has reviewed and approved of the methodology, assumptions and other parameters of the study. Please contact VMware at benchmark@VMware.com to request such review.

Okay so I can share my results with others just I can’t publish them or publicly make them available. Seems like privately sharing my results is okay though?

2. Microsoft’s Product Use Rights (a 66 page word doc of legalese) says:

i. Software. You must obtain Microsoft


I’ve pulled the article until I have time to properly benchmark all three systems on identical hardware, hopefully after the holidays.  Although I used different hardware, I firmly believe my numbers provided a reasonable estimate of what performance you would see using identical hardware.   I’d had verbal feedback from others that in fact they saw similar results but nothing to substantiate those comments.

The differences between RAID, CPU’s, Drives, etc all tended to balance out in my opinion. I welcome anyone to take on this task as well as I’d love to have something to compare my numbers against and prove my numbers as wrong.  So put your money where your mouth is and let’s see what you got.