From my previous post you may already know I’ve chosen DigitalOcean as the VPS hosting provider for this website. Great feedback, a great price, and great tutorials made the rather difficult choice easier for me.
A VPS (virtual private server) is called a “droplet” in DigitalOcean-speak, and creating one was mind-numbingly simple. The hardest choice was the operating system to use. They support 5 variations of Linux (Ubuntu, CentOS, Debian, Arch Linux and Fedora), and multiple versions of each variation. For no other reason than choosing what was most familiar to me, I initially chose Ubuntu as the variation. I then chose 13.10 x64 as the version because it was the latest version, and I went with x64 instead of x32 because, err, isn’t 64-bit better than 32-bit?
DigitalOcean also provides what I would consider a one-click deployment of a VPS with WordPress already installed, but because I’d like to host more than just one website on this server, and I’m using this adventure as a way to dust off my old Unix command knowledge, I skipped the easy route.
With the VPS fired up I began to explore all of DigitalOcean’s online tutorial articles on installing the LAMP (Linux, Apache, MySQL, PHP) stack. This is when the knot in my stomach began, and I realized I should have did a wee bit more research than signing up for an account and spinning up a VPS solely based on my aging memory and gut feel. I quickly found it interesting that ALL of their Ubuntu articles mentioned 12.04 in their titles. I initially ignored that observation assuming the articles were just old. Until I came across a title with 12.04 LTS in it. I remembered those letters from working with Joomla, wherein Joomla would provide versions that were to remain supported for a long time even though they would publish newer versions. The LTS version, Long Term Support, was extremely stable and recommended, while the new versions were cutting edge and would serve as a stabilization path to an upcoming LTS version.
Sure enough, a quick Google for Ubuntu LTS led me to understand that 12.04 was their uber-stable LTS version. The 13.10 version was an interim release until 14.04 LTS was to be released in 2014.
Already unsettled I found I had some slight issues following the tutorials. I honestly don’t recall the specifics, but some instructions were off. (I’ve since deployed a 12.04 droplet and the instructions were flawless, so I can either assume 13.10 is slightly different than 12.04, or I didn’t know what the hell I was doing when I first ran though the tutorials. Either could be the case.)
After running the droplet over-night and Pingdom alerting me to my server going down for 30 minutes during the night, I decided to appease my inner-voice and destroy Droplet #1 and create a new one. Droplet #2 was to be a CentOS fueled server. Doing research first this time, like I should have done from the beginning, I picked CentOS because of it’s reputation for stability. It seems every version is an LTS version. They may not have the latest features, but they’re extremely stable.
Alas, Droplet #2 was not to grow old. The tutorials for getting LAMP, WordPress, and other modules installed weren’t as clean as the Ubuntu tutorials. I found I needed to refer back to the Ubuntu tutorials every now and again for guidance when I hit a stumbling block. The last straw was trying to configure permissions for the website folders. Commands that worked fine on Ubuntu weren’t working in CentOS.
The decision to move off of CentOS was no fault of the operating system. The tutorials, and my lack of Linux knowledge, were to blame. As I gain more knowledge I may actually head back to CentOS. Performance-wise, my base install of WordPress ran almost 100ms faster under CentOS than it now does under Ubuntu. Is that due to the OS? Is that due to me installing and configuring things differently on the two droplets? Some day I’ll do a more scientific test and bring two new servers up at the same time, each with a different OS, to know for sure.
By know you can probably guess I’m on a Ubuntu 12.04 VPS running the LAMP stack. Following the tutorials went flawlessly. For those techies in the audience, yes, I’m running Apache as the web server, and yes I know Nginx is favored by the technical elite. I doubt I’ll have to worry about needing to handle huge loads on this website. Plus, I can find more “noob” articles on Apache than I can for Nginx. Baby steps…