Making the move from Shared Hosting to VPS

After months and months of suffering through Godaddy’s terrible technical support and poor website performance due to their strict resource limitations, I finally decided to make the move to a VPS.

My main reason for wanting to make the move was because I was building a directory website with more than 100,000 entries by importing listings file by file, and Godaddy’s server made it impossible for me to import a file with just 200 entries at a time. The import process would get throttled every time leaving me with an Internal Server Error, and a partially imported file that I would have to clean up every time it failed.

Since I am living in Canada, I wanted to choose one in my own country this time. The cheapest and best I could find was one called OVH (http://www.ovh.com/ca/en/vps/) at just $2.99 per month for 1 GB or RAM, 10 GB of disk storage, 10,000 GB of transfer at 100 Mbps.

hosting-vps-classic

Anyway, I signed up for 3 months, which was quite an insignificant expense (less than $10) to try out their VPS. Unfortunately, I ended up almost tearing the hair out of my head because of their unbelievably poor documentation.

Because of that, my main reason for putting this article together was so that other people who want to make the move to VPS hosting can do it more easily by following the same steps that worked for me.

1. Purchase a VPS hosting package with OVM.

It might take a while for it to be completely set up. Wait until you are assignd an IP address which you can see by clicking the IP link in the left column of your OVM manager control panel or by clicking on the Infrastructure link and then your server name. You will get an email after your VPS has been set up, so you should be patient and wait for that.

2. Log in to Godaddy and go in to manage your domains.

Select a domain that you would like to use for your nameservers on your VPS. Click on the domain name and then on the settings tab. Scroll down to where it says Host names and click the manage link. Where it has a field in front of .domain.tld, put ns. So if your domain is abc.com and you put ns in the field, your name server would be ns.abc.com. Enter the IP address for your VPS in the IP field.

hosting-hostname
3. Now click on the Zone file tab and then click Edit.

You are going to add some A records. You will already have one there for @. Click on the pencil icon and update that IP address with your VPS IP. Then click on Quick Add and add another one. This one is an * instead of a @, and enter your VPS IP again.
Now go down to where it says AAAA Host (IPv6) and add in a @ and * again, except instead of the IP address, use the other number.
Click on the Save button.

hosting-zone-file

4. Now your work on Godaddy is done. Go back to your VPS control panel again and click on the Infrastructure tab and then on your server name.

You will see a lot of  useful information there about your server. Where you see some tabs at the bottom, click on Secondary DNS and then Add a domain. Add your main domain, abc.com, to the popup and click next. You should see your new domain added. Make note of your Secondary DNS URL.

hosting-infrastructure

5. Now click on the IP tab (at the top of the left menu), then click on your server to open up your IP list.

The important thing here is the reverse IP that you see under reverse. Click on that and replace that number with your new name server (i.e. ns.abc.com) and save it.

hosting-reverse

You are going to have to wait a while for all that to propagate, perhaps as long as a whole day. After everything is working, you should be able to use your own nameserver to point your domain names to your VPS. Let’s try it.

Go to Godaddy again and select a domain name that you would like to host on your VPS.
Where it says “Nameservers” click on the link that says Manage.
Click on the “Custom” radio button so you can add your own name servers.
In the first field, enter your new nameserver (i.e. ns.abc.com)
In the second field, enter your secondary DNS that you just made note of. In my case, it was sdns1.ovh.ca.

hosting-new-nameserver

Then click OK. Your domain is going to point to your VPS server space now, but it will also take some time before it’s going to work.

Go to your Plesk or other control panel and add a new domain. Enter the name of the domain and a new folder (myotherdomain.com) should be created to hold your website files. Once everything has been propagated, your domain should be pointed to that folder.

Congratulations, you have successfully set up your VPS server to host your websites! 🙂