For a while I was finding my website slow. The host I was using, Powweb, often seemed slow at MySQL. Shopping around for new web hosts, I became aware of the concept of a virtual private server. It’s a virtual machine, many of which will be running on a computer in a rack somewhere. Unlike a traditional web host, you have complete control over your very own Linux box, but also complete responsibility for making it work.
After some surfing, I decided that Rackspace would be a fairly risk free way to try it out. They charge by the hour, so you can create a virtual machine, play with it, and destroy it afterwards at next to no cost. I’d heard of Rackspace from Robert Scoble, and they seem like a good company to deal with.
Using Rackspace
So I signed up for my account and had a ten minute wait before Rackspace phoned me up to verify I was a real person for billing purposes. Perhaps they are worried people will use their systems for fraud or spamming. In any case it was quick and the guy on the phone was helpful.
Next I created my server. The web interface makes it easy to create and destroy servers at will. You choose how much memory you want (this affects the price) and the operating system you want to use. I chose Ubuntu because I am familiar with it and 256MB of RAM because it was the cheapest option and it’s easy to upgrade if you find you need it. After a few minutes of building I had an IP address and I could log in.
Initial setup
The first thing to realise is that you are responsible for a server on the internet, so taking care of security is important. I found a handy guide and followed the recipe (or at least the bits of it I liked). It’s also important to keep the operating system up to date, a cron job can do this automatically but it’s probably worth keeping an eye on things to make sure all is going well. Somewhat reassuring is that the whole server can be backed up as a single image which is trivial to restore. Unlike a traditional web host where you have to back up your web files and MySQL database separately, this seems more straightforward.
With Ubuntu, installing the AMP bit of LAMP (Linux, Apache, MySQL, PHP) is easy with apt-get. Even phpMyAdmin is available as a package and works out of the box. I soon had my web server up and running and my WordPress database transferred across. I spent a few days playing with webgen to update my ageing, hand-crafted HTML static web pages, and was eventually happy with the site.
DNS
The next thing was to point my domain name at my web server. DNS is something I only mess with once every few years, and at first I messed up by pointing the domain name directly at my server. robfisher.net worked but www.robfisher.net didn’t. That all the various DNS caches take *hours* to refresh doesn’t help. Eventually I figured out with a chat session to Rackspace support that I had to point my domain name at Rackspace’s DNS servers, and then configure those using a web control panel to point at my virtual server. This is really flexible as if I wanted to I could have many servers with different subdomains, or point many subdomains at just the one server.
Redirects
Another problem was that I wanted to ditch the www. part of my web address. On Powweb www.robfisher.net and robfisher.net were the same thing, but people had not linked to it consistently and Google results pointed to a mixture. So I learnt about 301 redirects and also used this technique to point to the web pages that had moved around as a result of my playing with webgen.
Memory
So everything was fine, but I noticed with Rackspace’s diagnostics that my server was swapping occasionally. In other words it was running low on memory. Now that’s not necessarily a problem, after all it’s Rackspace’s disk that’s getting worn out and they don’t charge for disk I/O. My website was still much quicker than it had been on Powweb. But I like things to work the way they should work, so I looked around for various ways to optimize memory usage. This is something of a black art but there are plenty of web tutorials. The change that made the most difference for me was tweaking StartServers, MinSpareServers, and MaxSpareServers (that site also taught me about vmstat). By running top and pressing shift and M I could see that each of about 10 Apache processes seemed to use up to 10% of available memory. My site is not so high traffic that this is anywhere near necessary, and reducing the number of processes reduced the memory usage to the point where I was not swapping at all. WordPress pages also loaded noticably faster.
Email
Finally I noticed that I was not receiving notification emails from WordPress. In my /var/log/mail.log file I could see, “Our system has detected an unusual amount of 421-4.7.0 unsolicited mail originating from your IP address. To protect our 421-4.7.0 users from spam, mail sent from your IP address has been temporarily 421-4.7.0 blocked.” On no! Had I been hacked?
It turns out this is a problem with cloud hosting. There are all kinds of rules to running a mail server properly, and it seems like hard work. All web addresses are on the Spamhaus PBL list by default, which is just a way of saying “I am an end user and not a mail server”. You can get your server removed from PBL, but I worried that if I didn’t maintain my mail server properly I would get on all kinds of blacklists and never get removed from them. Fortunately, it is possible to configure Postfix to send mail via another SMTP server, and it is possible to use Google Mail’s own SMTP server. For the volume of mail my web server will handle (notifications from PHP programs) this is perfect.
The verdict: it’s not for everyone but for now I am happy. I get to learn stuff about running a web server. Rackspace is the cheapest way to get a VPS that I found. The server itself is only $10 a month and because my site uses hardly any bandwidth my bandwidth charges are next to nothing. With Rackspace you pay for exactly what you use.
It’s about twice as expensive as Powweb was, but my server is now lightning fast compared to how it used to be, and I can play around with running whatever software I want on it.
Logging into it via SSH on my Android phone to check for OS updates and memory usage is extremely geeky fun.
Thanks Rob – interesting read.
Sam
I am in the exact same situation as you, I was hosting my wordpress blog on a machine at home, but the upload speed on ADSL was too poor, and I have now set up a rackspacecloud server with the same spec as yours.
I am also having these issues and found this helpful, Thanks!
Another thing I have done is add a line in MYSQL’s config file to stop innodb from running which can save about 100MB!
http://mediakey.dk/~cc/optimize-mysql-for-low-memory-use/
Thanks again,
Aaron
Thanks for that link Aaron. I did do some stuff with MySQL config files that I didn’t write about because I didn’t really understand what I was doing.
Nice piece of text I must say. Is it oke for me to make a translation in Dutch with a obvious link to this article?
If you like, Usdating, but how about linking to the site where you would publish your translation?
…and you should not forget to mention that your email traffic is censored by rackspace. Even if you decide that there should be no spam filtering, they will apply their blacklist and bounce emails without notifying you.
I was asked now several times why I do not react on email of business partners as sometimes the email coudl be received but not always. Speaking with support today – they do not care.
So I have to ask myselfe now if rackspace is what I should pay for or go back to my old provider having not such problems.
What do you think?
Frank: not sure as I don’t use Rackspace email. I did have trouble *sending* email. Just setting up your virtual host as an email server won’t work well because it will be blacklisted by default. This is normal: it is non-trivial to set up an email server because of all the paranoia about spam. For my purposes, using a GMail mail server gets around this.
Hi!
Great article! Thanks for all the useful info! I have one question for you about the domain configuration on a could. I currently just have my sites (they are small) hosted at home on a single server and configure Apache to use the header information sent by the browser to direct to the correct directory and serve the content there. Can I still use this method with the cloud server’s IP address? Or, is there some other configuration that I must follow for a could server?
I hope this makes sense! J
I run multiple domains on one server and nothing special is needed. There is a page for configuring DNS on Rackspace’s website, so you just point your domains to your virtual server’s IP address. Apache configuration is the same as for any server. Later you could split your domains between multiple servers by reconfiguring the DNS.
Hey wow! Fast reply! Thanks so much. I’m going to try it out in the new year!!!
Super-Duper site! I’m loving it!! Will come again once more – taking you feeds also, Thanks.
Hello. Fantastic position. I didn’t expect this on the Wednesday. This is really a great story. Thanks!
In my experience, you should NOT use rackspacecloud for anything more than small workhorse-type servers that will require little setup work and keep no valuable information. I was running a server and somehow they lost my server images and were not able to recover it from the backup file in their own cloud files storage after 5 days. No way to upload a backup copy of your server images and techically unknowledgeable tech support so in case of what they called a “bug” you’re out of anything you had in your servers
I’m a huge fan of Rackspace managed hosting. However, their cloud servers are not very good at all. Frankly they’re almost useless.
Perhaps I’m using them incorrectly, or I’m just having a bad experience, but their service is incredibly slow. Like to the point that if I have five or six people hitting a site, the site almost becomes completely unresponsive.
I have a few web services which an iPhone app I have connects to and it’s unbearable how long it takes to return data from those services.
Again, I’m a huge Rackspace fan – their managed hosting is top notch and just awesome. Their cloud servers are just frankly useless at this point though.
Excellent beat ! I wish to apprentice while you amend your web site, how can i subscribe for a weblog site? The account aided me a appropriate deal. I were a little bit familiar of this your broadcast offered brilliant transparent concept
control mantenimiento…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…
rhinestone jewelry…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…
ugg boots clearance| ugg clearance| ugg boots uk| uk ugg outlet| UGG Classic Tall Boots|UGG Bailey Button Boots|UGG Kensington Boots|UGG Seline Boots…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…
read more…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…
Sarraff…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…
web hosting, domains, dedicated servers, templates, seo, cheap hosting…
[...]Rackspace Cloud Servers as a Web Server « Rob's Blog[...]…