You are here

Livin' On A Linode


This weekend I decided to make the move I had been debating for about a year. I did away with the old shared hosting that had done me well for so many years and moved everything over to a VPS at Linode.

I did spend some time looking at numerous VPS providers out there, but I always had a leaning towards Linode. I have never heard anyone really say anything bad about them and they have a very robust community behind them, which was the biggest selling factor.

So yesterday morning I created my account, selected my distribution (CentOS 5) and fired up the server. Very smooth and the control panel Linode has made it extra sweet.

The rest of the day was spent setting up the server the way I wanted. My preference in distributions has always been CentOS, but the packages aren’t always the best. To get a fresh copy of PHP, Apache and MySQL running I did what I usually do – added the Utterramblings repository. Yeah i could have gone from source and compiled everything, but why? All that does is create more work and I really don’t want that, especially in the summer time when swimming pools and margaritas call.

After getting the AMP part of my LAMP stack running, I had to deal with the email problem. I don’t set up that many email servers, so it’s always an adventure for me. After a couple of hours of playing around and trying to find a good package, I finally got Postfix running with Dovecot and using a MySQL backend for virtual mailboxes and domains.

Now I was sitting here and thinking “what next” as I was installing the other mandatory software, like Fail2Ban, when it hit me like a ton of bricks – VARNISH!

I have ran Boost for years on my Drupal sites and have been really pleased with it, but it does eat up some disk space storing static content and my VPS only has 16 gigs. So I went ahead and grabbed the latest release of Varnish and went a building.

I hadn’t used Varnish in about a year and there were quiet a bit of changes in the VCL coding that I quickly had to become familiar with. My goal is to have all pages from Drupal cache for 5 minutes and all static stuff for an hour. All my sites also have one user that logins only – me, so I set it to basically ignore all cookies but the session one.

But now I got a problem. I have other things running on my server that doesn’t need varnish, like my client support area. For client support you can’t see anything unless you are logged in, so that meant having to have that bypass Varnish. Now I could have pushed all requests through Varnish and then just have it bypass it and go straight to that director, but it was getting late and I didn’t want to go through that much work. I ended up cheating and got an extra IP address from Linode and have the sites I don’t want going through Varnish using that. Simple enough.

Hooray – everything is ready to go. Now to move all my sites over!

I am running 3 main sites on this server:

  • HollyIT
  • IntoxiNation (my political blog)
  • Client Support Area

All of these sites run on the same version of Drupal and never resided on the same machine until a couple of months ago. Since I was in the middle of this big move, time was right to do another big item on my todo list – move everything to a single codebase. So I did that. Now all three sites run off of the same code base and utilize Drupal’s multisite features. While doing that, I decided I better go ahead and switch to Pressflow also, which is a special build of Drupal made for scalability and performance.

So I got everything moved over, imported the databases, did a quick RSYNC of the uploaded files and flipped the DNS switch. Now everything is humming along and I couldn’t be happier. I’ve also been able to move a lot of other little things from my development server here onto this new Linode. Maybe I can finally go to only having one computer run 24/7 again.