The Server Migration Continues
This blog is no longer hosted on a shared server account! Woo hoo!! Yesterday I configured a shiny new VPS (shininess not guaranteed...) to be our new web server for most of our systems, both current and upcoming. If you haven't gone through a process like this,you might be wondering what all is involved. Well, let me tell you.... a lot!
Planning the Migration
Just like every other project, the first thing you must do is plan out the work that needs to be done. For me it looked a little like this:
- Backup blog
- Backup wiki
- Backup other things
- Test all backups! (I use a VM for this)
- Create new VPS with Digital Ocean
- Setup & configure VPS
- Test VPS for various security and config needs
- Restore blog backup to VPS
- Restore wiki backup to VPS
- Change name servers to point to new name servers (@ DO)
- Setup DNS records via DO
- Wait for DNS to propogate.........
That's a pretty close representation to what actually happened. The hardest step for me is #12. Waiting for 0-48 hours is not something I'm good at. There is always a delay when you're changing DNS records, but it is so much worse when you are changing name servers completely!
You might be wondering why I would go through the headache of managing my own servers. I keep wondering that too, but here it is in order of priority:
- Learning experience
- Cost Savings
I will attempt to explain my reasoning behind each point in the next sections.
It's widely known that shared hosting is a big security risk. Why? Servers that power shared hosting accounts typically are running hundreds or even thousands of accounts. As hardware keeps growing more powerful, that number can too. If the server running your shared hosting account has a security flaw, it could allow a malicious user of one of the other sites to expose data in your site.
Another big security concern I have with shared hosting is how they hold on to antiquated software versions that are no longer supported. Why would they do this? Because their clients have mission critical PHP apps that were written 9 years ago and are not compatible with new versions of PHP. To those folks I would ask why they would trust a mission critical app to outdated technology, but hey that's just me...
I imagine forcing an upgrade of versions like this also causes a huge surge of customer support tickets for the hosting provider, so they put that off as long as possible.
Running my own server means I get to control exactly what is installed, what version it is, and when I update. This doesn't just allow me to use the newest version of software X if I want to but it also means that I don't have 400 extra services installed and running. Instead it has exactly what I need today and nothing else which helps reenforce my point on security.
This shouldn't come as any surprise to those who know me... I love learning. When preparing for this migration I had a number of learning opportunities, such as how to better control the various config files, monitoring log files, and other sysadmin type things. I even toyed around with the idea of using LDAP with Kerberos which was another huge learning experience. While I decided to not use it for now it was a lot of fun learning about the basics of the technology, how they play together, and the fact that I have no need for that level of complexity.
This one won't be true for everyone because I was paying for a dedicated IP address on top of my shared hosting account. I did that because the shared IP for the shared hosting I had kept getting blacklisted for being a spammer, plus I wanted to provide my site over https://. When you add the costs of the base shared hosting plus the dedicated IP address, I was paying almost $7 / mo for an account with 5GB of storage and not much flexibility. Compare that to the $5/mo VPS at Digital Ocean that gives me a 20GB SSD, and it added to my argument to switch.
Still in Transit
I'm really happy to have my blog migrated because I had been wanting to get back into posting regularly. The biggest part of the migration is over now so I'm down to picking up the pieces and starting to build out the new parts of rustprooflabs.com! Stay tuned!
Have questions or comments about the migration? Let me know in the comments!
Published July 14, 2014
Last Updated July 14, 2014