Windows Web Hosting, Web Technologies, etc
Virtualization
JessCoburn.Com running on ARR! and that not be Pirate speak thar Matey!
Aug 9th
3 Blog posts to say “Hey I’m running on my site load balanced using ARR”. This is the third and hopefully last blog post for tonight. I posted two other posts tonight:
- Discusses the first stage of Applied Innovations Cloud Initiative.
- Discusses ARR & Load balancing.
All of this was to explain how I’m running my website currently (which I tend to test everything on first so I break it a lot but you have to break eggs to make cake, right?).
ARR or Application Request Routing is a new extension to IIS7 that allows you to turn a Windows Server (or VPS as in my case) into an Application Aware Load Balancer with such features as offloading compression and SSL encryption!
How I’m running JessCoburn.com
For the past year and a half, JessCoburn.com has (and continues to) run on a shared web hosting server that runs IIS7 on top of Windows Server 2008. My site is treated identically to how my customers sites are treated as I firmly believe in eating your own dog food (no not ALPO but using the same services you sell). The site makes use of FastCGI to run the PHP engine and backends to a shared MySQL server. All of our shared web servers connect to the SQL servers via a private dedicated gigabit network for optimal performance. In addition, I make use of expiry headers for output caching of my images and also use the wordpress plugin supercache to reduce my reliance on MySQL queries so my pages render faster. So that’s why it’s been fast, I think you’d agree that’s pretty well optimized for a Windows shared hosting website (same thing you could for as little as $8.33 a month with one of our Windows hosting accounts.. Sure it’s optimized but there’s still a problem.
What’s the problem with JessCoburn.com?
The problem is my web site runs on a single web server. This means if there’s maintenance on the box (don’t worry we do this during load traffic times) there’s still potentially downtime. This also means if my site ever gets popular enough to make the first page of DIGG or REDDIT (use those social bookmarks please) then no matter how much I optimize my site on that one web server, I could have a problem… These are the trade-offs we accept with shared hosting (today).
But what if, I could run JessCoburn.com on multiple web servers and load balance them? Yeah who’s going to go out and spend 20K to load balance his little wordpress blog (the profit margins aren’t that good you know). Well thanks to our own cloud computing initiative and the good folks on the IIS Team at Microsoft I can do just that for peanuts! Today!
My new configuration
I have a Windows 2008 VPS running IIS7 with ARR 2.0 Beta 2 on it. It’s of course running on our High Availability Managed Windows VPS Hosting Cluster. I also have JessCoburn.com still running on the shared Windows Hosting server running on IIS7 and I setup another VPS server running on top of Virtuozzo running Windows 2003 and copied the site there. Just to show that you can route requests to any kind of server. Both servers back end to the same MySQL server.
All requests for JessCoburn.com come into the ARR server and it then proxies these requests between the Shared Server and the Win2003 VPS server. In the event one of the sites crashes, is down or has problems, ARR will redirect all requests to the other server.
Elastic Computing AKA Cloud Computing as provided by Applied Innovations
Aug 8th
I broke this post up into a series of posts. The first post (just published) gives an overview of ARR in IIS7 and why it’s cool. This post is going to talk about the first stage of cloud computing we’ve deployed at Applied Innovations and the benefit’s of it such that you could use it today to control your own hosted IT Infrastructure costs.
About the Applied Innovations Cloud Platform.
Applied Innovations is a charter member of Microsoft’s Dynamic Datacenter Alliance. The alliance is composed of a handful of hosters, ISVs and system integrators that have deployed a solution on Microsoft’s Dynamic Datacenter toolkit. Our implementation of the toolkit is a highly available cluster of VPS servers. These VPS servers or a series of physical servers that use a high speed, redundant SAN cluster for storage and in the event of a hardware failure or need for maintenance the virtual machines running on one of those servers will automatically fail over to one of the other nodes to keep the services and applications running 100% of the time.
In addition, our own solution also affords the user the ability to achieve a level of cloud computing called: elastic computing (a hot topic these days as Cloud computing is all the rage). Elastic computing is the ability to dynamically scale up and down your computing resources as your needs change. For instance, let’s consider the case of dedicated hosting.
When the Dedicated Server Meets the Cloud.
In the past when a hosting customer outgrew shared hosting they needed to move to a dedicated server. Moving an advanced web application (such as a live ecommerce website) from one server to another is time consuming and often costly so it’s something most store owners don’t want to do frequently. With that in mind they would often look at dedicated servers and have to predict their need for hardware not only today but often 6, 12 or even 24 months into the future or they could find themselves moving again in the near future. The problem with this is that often they found themselves purchasing more hardware and taking on a larger cost today in preparation for tomorrow than they needed and sometimes could afford.
Further, today we all know just how quickly the economy can turn and how fast you can find that your expected growth can disappear and all of a sudden find yourself needing to scale down instead of up. Or perhaps your business is seasonal and you find that you really only need a full dedicated server a few months out of the year and don’t need to pay for the full solution the other 9 months of the year.
At Applied Innovations, Our Dynamic Datacenter Solution is the answer to these very issues. With one of our highly available clustered Windows virtual dedicated servers (VDS servers) you’re able to scale up your diskspace, your memory, your processing power and likewise scale down your diskspace, your memory and even your processing power with just a click of a few buttons. This puts you in control of your hosted IT infrastructure and allows you to adjust your costs in line with your business.
What about Elastic Scalability? I thought that was Cloud?
The other hot topic in Cloud is Elastic Scalability. This is where your web infrastructure is hosted on multiple virtual machines (which may be elastic computing VMs) and is load balanced across these nodes. you then have the ability to expand and contract the number of nodes your site runs on as your traffic and business demands change.
We believe this too is a vital component to cloud computing but for 80% of the hosting business on the market today, it’s just not a necessity.. today. For that upper echelon of hosting customers (the Amazon, the Twitter, the Facebook type company) this is a necessity but for most companies this level of cloud computing is just an extra expense and in today’s economy extra expenses are not needed.
What’s next in the Cloud?
This is only the first phase of our own Cloud Initiative and there are of course other notions of cloud besides elastic computing and elastic scalablity that I didn’t hit on. What I can guarantee is our team is working as diligently as ever to continue to work on our Cloud Initiative and will continue to evolve our service offerings. In the meantime if you want to cut your dedicated hosting costs and have the ability to adjust your hosted IT infrastructure costs as your business adjusts, contact our team about our Managed Windows VPS Hosting solutions built on top of the first stage of our Cloud infrastructure.
Linux Additions for Virtual Server 2005 R2 SP1 updated
Nov 1st
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
- 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
Performance Tips for Your Windows VPS running Virtuozzo
Jun 19th
Here’s Jess’s top 10 tips and tricks to help optimize your Windows VPS server running on Virtuozzo.
- Disable Indexing Service.
Unless you’re using the FrontPage search bot you generally don’t need indexing service running and you should disable it. - 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. - 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.
- 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. - 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.
- 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. - 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. - 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. - 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.
- 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.
- 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.
Windows Virtuozzo VPS Server Software gets even cooler!
Feb 16th
It’s no secret I’m a big fan of Virtuozzo virtualization software from swsoft.com. I think for a hosting platform it’s really the best solution on the market today and we’re basing our entire VPS hosting solely around it.
Recently in preparation for our release of windows VPS hosting (very soon) we brought everything up to date including taking Virtuozzo to 3.5.1 SP1. Normally, an SP1 means major changes and this is no exception.
Virtuozzo 3.5.1. SP1 adds a ton of new features but my favorites are:
Improved Diskspace Control in Virtuozzo
Added was the ability to use dynamically increasing diskdrives (they call them compact disks). In the Linux version a client could subscribe to a 20GB Diskspace allocation and would only use as much space as their actual usage was. This means total disk usage would be lower as most clients really never use their total allocation. In fact the accounts I resized today all were 20GB partitions and the average actual partition was under 4GB.
While we’re on diskspace, Virtuozzo is just bad ass. OS virtualization doesn’t need to create duplicate copies of the OS so when a client gets a 20GB partition only about 300MB or so is actually used for the OS the rest is all shared with the host machine.
Memory Control and Allocation in Virtuozzo
This isn’t really a feature of SP1 but probably improved within the patch somewhere so I’m including it here. Below is an image of a client’s virtual node (yeah we use dual processor, dual core xeons and serial attached SCSI drives in our VPS servers). The client was initially set at unlimited memory because we wanted to see if memory was a problem for his VPS. We then switch his memory from unlimited to a cap of 384MB.
The image below is pretty cool he was uncapped on memory so the line stayed at the bottom (let’s say 10%), once we set a cap it jumped up immediately about 70%. In real-time. How cool is that. Dynamically adjusted his memory allocation WITHOUT having to reboot his VPS. Zero Downtime, that’s what it’s all about.

Your VPS can now be a VPN Client
A big request has been that your VE be able to connect to a VPN. Until now this hasn’t been possible but now it is. I’m told in Virtuozzo 4.0 you’ll be able to run a VPN server too!
Enable Strict CPU Limits In Your Windows VPS
With Virtuozzo you can set a CPU share so that each VPS gets a certain amount of the CPU, larger plans can have a larger slice, etc. Now you can also set a max CPU usage. What’s this mean? Means you can set a cap on just how much maximum CPU they can get. With Virtuozzo a VPS can burst to 100% available CPU (available CPU is defined as total CPU minus the sum of guaranteed CPU across all active VPSs). So now you can set it so that VPSs can only burst to 25% or 50% total CPU, etc. Why is this good? Keeps one VPS from bogging down the total available CPU and also allows you to offer a higher burst limit to larger VE’s.
Each VE has it’s own Console
Now you can use Terminal Services, Citrix, Radmin, vnc or any other remote management tool you prefer and not just Terminal Services as each VE/VPS has it’s own Console. Seems like a small change but it’s just another example of Virtuozzo narrowing the gap between OS virtualization and HW virtualization and offering a robust windows virtualization solution.
You can manage Windows Firewall Rules!
Yeah, I’m not sure just when this was added honestly because I assumed it just didn’t work at all but you can now define Windows Firewall rules within your VPS.
Here’s a tip: don’t forget to setup the exception for terminal services before you enable your windows firewall! If you forget to do that you’ll find yourself locked out. Fortunately though with the Virtuozzo Power Panels enabled (https://yourip:4643) you’ll be able to log into that and turn off the windows firewall service and can then go in and fix your rules so you’re not completely locked out.
Other features added
There are other features added that are equally cool but not really relevant to my needs or those of my clients but for completeness: Ethernet Layer Network Adapter Support is supported so that a NIC can be assigned to a single VPS. Windows 2003 Network Load Balancing support has been added, Teamed Network Adapters are now supported, Citrix Presentation Server supported and they added new CLI commands.
I know it seems like I’m paid for this stuff, but I’m not. I’m simply excited about technology when it’s “BAD-ASS” and Virtuozzo is simply BAD ASS Technology. Virtual Private Servers are the future of shared hosting, reseller hosting will slowly evolve into Virtual Private Server hosting as resellers continuously want more control of their servers. Dedicated Hosting will be replaced with Dynamic Dedicated Servers and shared hosting will all run within dedicated VPSs. I believe SWsoft is on the leading edge of this technology and that’s why we use them for our system. I blog about it because I’m excited and I want the world to know just how cool it is. Ofcourse, if the world wants a windows vps hosting account then I hope they select Applied Innovations and that’s