4 Steps to a Server Non-Migration
May 17 2009
And now for a guest post by my business partner, Nicole Johnson, who is the VP of Product Development for Babble Soft on the topic of moving servers. She shares the ups and downs and great learning experiences of our recent attempt to move servers from a dedicated to shared environment.
Recently, we decided to attempt to migrate our Babble Soft site from our own dedicated server at Rackspace to a shared server hosted by Mosso, which was spun out of Rackspace. It turned out to be a time-intensive process and in the end, didn’t work out. We thought it would be a good idea to chronicle what we went through just in case you are thinking about doing something like this, too, just to keep a few things in mind. Although it didn’t work for us, it doesn’t mean it wouldn’t work for others.
1. Server Assessment
The first step in our migration was to make sure the new environment would work for us. We had to make sure that our applications would work which are written using Microsoft’s .NET programming model and our main site and blog would work, written in php on the same server. After reviewing the “Is it a good fit?” guidelines, we deemed it should work. It would be a transition to go from having your own server to sharing: No more remote connections and no more SQL Server Profiler (among other things, but it would be for the benefit of the company to reduce costs.
2. Test, test, test
The second step of server migration is to test your application and website on the new server. We set up a new account and installed everything on the new server WITHOUT updating our domain host to the new location, yet. Mosso makes things VERY easy to test your website. In addition to that, the live chat tech support is invaluable! All of the techs were very knowledgeable (some more than others, but all good) and very helpful. They were very eager to help me and did a great job.
One trouble spot was that when I tested the blog, it did not work. It’s a WordPress blog and moving Aruni’s blog, entrepreMusings, over was a breeze, but not our Babble Soft corporate blog. I couldn’t easily go to wp-admin because it kept trying to go to the domain, which was on our old server. After talking things over with the Mosso techs, we determined it might just be because we were “testing” and it would be fine when it came over. Wrong, but that’s just how technology goes sometimes. I’d later spend a good part of a whole day on a Redirect Loop Error that would only be solved by installing the Disable Canonical URL Redirection Plugin that both one of the Mosso techs and @clecompte gave me at almost the same time. I still have no idea why it worked on our server and not on the Mosso server, but c’est la vie, and I didn’t have time to figure it out. The blog still didn’t work after that due to our server having a default IIS configuration and blog posts don’t end in .php to “tell” the server that it should handle them as such, but I’m probably getting into too much tech talk now, so we’ll end that there. I would have gotten it to work, eventually…had we really finished the transfer.
3. Plan the downtime for the move
The third step to our migration was to take our applications down in an organized way. In our quarterly newsletter, we warned our users the site would be down for maintenance the week of May 11th, Mother’s Day. Aruni and I are both mothers, but, it would be a good day for the site to be down since most of our customers are moms, too, and they would likely be doing Mother’s Day “things”, so we “took one for the team” and planned to work that day. I had everything ready to go, so Aruni put our application and purchase page in maintenance mode and submitted for the DNS change at the domain host. They proved to move the site quickly and I was able to bring our application back online within a few hours (would have been faster if I hadn’t been a mom that day, but that’s what happens when a company is run by two moms). Unfortunately, it was not that simple to bring the purchase page back up as there was a database connectivity issue, but being the work-a-holic that I am, I worked on that until 2am and then part of the next day and fixed it. We were on our way. So, what went wrong?
4. Know when to cut your losses
In the grand scheme of things, had this been what I do full time all day, I probably didn’t spend THAT much time on this whole project, however, in a working-part-time-on-three-jobs kind of way (five if you count being a wife and mom), it proved to be almost “3 weeks” of work. So, when I was putting the finishing touches on everything, trying to make it 100% functional and the Mosso techs (by now we’ve become fast friends and all) let me know that Mosso was going to medium trust security level on all servers, it became a deal breaker. It’s not because medium trust is a bad thing. In fact, I think it might be a scary thing they weren’t in the first place, being a shared server and all, and it’s a good thing they are changing that. But, now I just spent “3 weeks” testing and moving an application on a server that is not configured like the final environment and our application doesn’t work in medium trust “as is.”
This is not to say that we couldn’t make it run in medium trust and who’s to say that it wouldn’t be just a day’s work, but the way technology is, it could be a day or another “3 weeks.” At this point, we have now lost too much productive time on this project to make this worth it. Taking Seth Godin’s advice, we decided to ignore sunk costs and determined that my time moving forward would be better spent on one of my primary job functions, product development. So, we went back to our dedicated server and decided, instead, that we’ll just have to become wildly successful to offset the savings and see that it was a blessing in disguise because our needs would far surpass what a shared server could give us in a year anyway.
In the end, this was a really good learning experience and Mosso definitely seems to offer a great service, but it just ended up not being the right fit for us. Had we known about the medium trust issue earlier on, we might have either saved time or been able to work on it, but one of the main “issues” of a shared environment is we have to adapt to their changes and we just learned it way faster than I thought we’d have to. We’re staying with Rackspace as our hosting provider, who offered us fabulous customer service throughout this whole process. Many businesses would do well modeling their service levels after theirs.Author: Aruni | Filed under: Rackspace | Tags: mosso, Rackspace, server migration | 3 Comments »