This article is more than 1 year old
Migrating from WS2003 to *nix in a month? It ain't happening, folks
Needs must, says Trevor Pott
Sysadmin blog Some people take exception to my recommendation that those running Win32 applications try to move to a newer version of Windows. They believe that if I were a "credible" IT professional I would counsel a move to *nix technologies such as Linux, Unix or BSD.
The context for this debate is that Windows Server 2003's end is upon us. I've written about this a few times, talked about why so many cling to Server 2003 and looked at how to deal with some of the more difficult upgrade issues.
Consider this comment by commenter W.Anderson. It's fairly representative of a lot of feedback I have received recently.
The article writer makes no case for remaining on Windows Server, except vague derogatory comments about Linux, BSD not being worth the effort.
Active Directory integration is a no-issue in 2015 for NIX (UNIX/BSD/Linux) servers and administration and the topic of Windows Server - ever Server 2012 R2 having a poor record of security and robust reliability as compared to NIX is never memtioned.
Furthermore advanced storage technologies like "containerization", very high level virtualization, Big Data analytics, dominant and “best of Breed Web development technologies and other required functions standard in NIX are completely absent from Microsoft products and services.
I therefore suspect article writer is either a Microsoft software partner, Microsoft solution provider or supporter with little or no professional/expert knowledge or experience on NIX, or lastly a possible paid propagandist for continued Microsoft adoption – in other words a pathetic shill.
Any truly technology solution professional/expert with credible experience in both NIX and Microsoft fields would know immediately the path taken by most Cloud Services vendors, Financial Services, Banks and Stock Exchanges - USA and International, the vast majority of Networking/Web and Cloud vendors prefer and do adopt NIX solutions over Microsoft for good and successful reasons.
I've never been fond of dancing around a subject, so let's dispense with the handholding and cut to the meat of things here, shall we? We have less than a month until Server 2003 turns into a pumpkin. Good luck porting your legacy Win32 applications to *NIX by the time Server 2003 ends support.
In one month? Not going to happen.
The truth of the matter is that like-for-like applications do not exist in almost every case. Very few packaged software vendors make multi-platform applications. Even where those packaged applications exist across multiple platforms, there are almost always notable differences between the variants that will require administrators learn the quirks of the new platform and the new application variant.
Few – to the point of it being rational to say "almost no" – Win32 applications have a *nix counterpart. Moving to *nix thusly requires either porting to a similar but not like-for-like application a nasty, developer intensive port fo the existing code, or a complete rewrite of potentially multiple interoperating applications to get from Windows to *nix.
In one month? Not going to happen.
You're a shill
The amusing part of the comment to me is the "you're a shill" bit. For the record, my company is a Microsoft Partner - not that I can remember which category we're in, we're pretty much participating in order to get the 10 people's worth of Microsoft Action Pack Subscription (MAPS) licenses.
This is what keeps us using Microsoft technologies: we'd have moved all our stuff over to *nix ages ago if we had to pay street price for Microsoft's wares. At that point we'd probably drag over Microsoft-using clients: I wouldn't be comfortable supporting them on the latest, greatest Microsoft stuff if I didn't have day-to-day experience with it.
So +1 to Microsoft for not killing off MAPS yet – although I'm convinced Microsoft will Technet it soon, and I'll be writing another deeply embittered sysadmin blog about it.
Decades of being a Microsoft partner and a systems administrator that makes a living from Microsoft have made me the human representation of "that guy on the internet" who yells at Microsoft all the time. I yell at them about stupid licensing practices, pissing on partners, staff, developers and customers, and I'm pretty sure I was the first one to coin "cloud first, mobile first, customer last".
So, I am a steadfast critic of many Microsoft practices – and I still recommend moving your existing Win32 workloads from Server 2003 to Windows Server 2012.
Now is not the time to embrace the penguin
Anyone who seriously counsels companies with less than a month left to try moving from Windows to *nix needs to be prevented from working in IT. You cannot even run a proper needs assessment for such a transition in a month. To say nothing of the time you'll need to figure out the hundreds or thousands of little things that can (and will) go wrong and have to be debugged during such a transition.
Small businesses today can have dozens or hundreds of applications in their care. Enterprises have hundreds, sometimes thousands of different applications. It is rank madness and professional malpractice to even pretend that those can all be shifted across platforms in time.
In one month? Not going to happen.
What we, as responsible systems administrators can do is move some of the handful of really obvious interpreted language workloads (PHP on Apache, static websites, etc) over to *nix. If and only if they don't require major reworking to do so. (Many PHP applications require at least some rewriting to deal with different file system structures, etc.)
We can move existing Win32 apps to a supported version of Windows. We can even move some applications to the cloud...though that's chancy as it might require a lot of retraining staff in a right hurry, if those workloads happen to be end-user visible.
After the migration to a supported, secure platform is done, then and only then is it sane, rational and professionally ethical to give serious consideration to porting from Windows to *nix. For most applications that's a multi-year process, and most companies will have hundreds of thousands of applications to port.
Return on investment
Separate the man from the message. Whatever you want to think about my personal "shillness" for Microsoft the end of support for Server 2003 is a critical issue for Windows administrators who still have this operating system in service.
Server 2003 has been around for ages, and it will be targeted by an unholy slew of malware the instant support ends. I've already seem some of the early proof of concept zero days showing up on the internet's darker places and trust me when I say that each and every one of us absolutely must get in front of this.
The cost of porting even one application can be anywhere from a few thousand dollars in licensing or testing ports to millions of dollars per application in rewriting it for the new environment. The ROI needs to be considered in each case, for each application. Timeframes for migration need to be considered, especially with Server 2016 out next year, and Windows containerization out the year after that.
If you want to migrate workloads from Windows to *nix, that is the proper way. Proper consideration. Proper effort. I've migrated thousands of applications and over a hundred business from Windows to *nix. In every single instance it was a multi-year affair, with almost all of it being research and testing.
Even moving from Server 2003 as a file server to a Linux-based file server can be an effort of months. In several cases I've had legacy Win32 applications make use of Windows file server features that Samba doesn't provide by default (or at all) and workarounds had to be considered.
Moving a business from Windows to *nix is not going to happen with only one month left on the clock. Deal with it. Don't screw your employers or your clients over. Do the right thing and migrate them to the next version of Windows. You can fight the glorious battle to escape Microsoft's orbit another day. ®