For those who follow me on Twitter or Facebook, you would have undoubtedly seen the posts regarding Server 2003 EoL and my battles with my organisation (primarily the service and business owners of the servers) about getting off this out-dated OS and onto something more recent – or in a number of cases, just getting rid of a no-longer-required server entirely.
Today was a mini-milestone for me. I was able to decommission an old domain that’s been hanging around, the very FIRST Windows AD domain that was built in this organisation. It was Server 200 functional level. It ran on three Windows Server 2003 domain controllers. Within the domain, there were over 70 Domain Administrators. It was terrifying.
And today, I got to decommission it. It was a wonderful feeling.
I put up a post on Reddit regarding my achievements – because I need to brag to people who will actually understand what an achievement today really is for me. I won’t rehash the whole post (you can read it for yourself) but the gist of it is – as of today, my organisation is rid of 98% of it’s 2003 Server. 6 remain – and 5 of those will be gone by August. Because of me.
As part of this, I thought it would be good to go through some of the pearls of wisdom I gleaned from this insane 12-18 month roller coaster ride. So the following are a few of the things that I learnt from going through this process.
Break it down into smaller manageable pieces
This was a MASSIVE project – just under 250 server to either decommission or migrate, different applications, idfferent service & business owners, different time frames. It can seem so overwhelming. You need to be able to break it down into small chunks, into manageable bits that can be done on their own. Always start small – start with one or two, learn from them and move onto the next. You don’t have to do it all at once. I **really** wanted to do it all at once and it still took me over 12 months to get where I am now. Take it slow, take it in stages, do it well and do it properly.
Change processes are vital
I’ve had my battles with our Change Manager in the past, and I’ve thrown my hands up in frustration at having to use our change process, but it was vital to this project. It meant that all the changes were logged – if something went wrong, we could see where and why. People were kept in the loop. But most importantly, the approver approving the change had visibility…which meant that I felt comfortable turning a server off or sending it into oblivion, confident in the fact that everyone who needed to know knew that it was happening.
It also meant that my team (and my boss!) had visibility on what I was working on. My job queues for the last few months have been insane – larger than they’ve ever been before, because of all the changes I’ve been building and working on. This made it easier for my boss to shuffle work around, because he could see what was going on and just how much I was working on. This gave me the ability to focus on the Server 2003 decommission full-time for the last three months (minus my minor stint at being a manager!).
You need the ability to explain to the business why the decommission is necessary
This was incredibly important. While I understood why it was needed, explaining to the business was harder. They understood, in a peripheral sense, what end-of-life meant – but that didn’t magically give them budget or resources to help. They had to realise what risks came with staying on 2003 – no vendor support, no updates, larger attack surface, the fact that we would no longer provide in-depth technical support. That hit home and gave them the ability to go to their management and get the required budget and resources to assist. It took me a few months to learn this lesson and understand what language I needed to use, how I needed to best present the risks in order to get the business attention and it was well worth it. It made the last few legs of this project much, much easier.
You need to be helpful and understanding towards the business/customer
Sometimes there just wasn’t the resources available, despite the push to get off this outdated operating system. Which is where I was able to offer some assistance. Sure, it’s outside of my normal job description and my usual tasks, but if it helps get the job done and helps get the server decommission over the line, I’m willing to wear it. And it wasn’t just me – there were a number of colleagues who pitched in (thanks Kerrie & Ken!) to offer assistance in moving services, applications, databases off. The business was exceedingly grateful in some instances – which in turn makes *us* look awesome. I’m not going to turn down an opportunity to look awesome!
Organising and scheduling is really important, especially if you have a large number to do
I’m an organisation nut. I’m OCD (no, really, I am >.>) and I have a thing for spreadsheeting things. So of course I spreadsheeted the living hell out of this project. And it made the world of difference. From one look I could see which servers were due this month, which server belonged to which service owner, which were still waiting on changes to be built, what the risks were, what applications were on each box. It also meant that I could provide that information quickly and easily to my management – making it easier for them to provide updates higher up the chain.
I was also very pedantic about making sure my changes (and corresponding tasks) were done a certain way, to make it easier for all teams involved. From one look at the job queue, you would be able to see what server was moving on what day, which made it easier to plan around and ensure that there weren’t any conflicts. I know this certainly helped the other teams who were involved. This project also helped my learn how to fine-tune some of my other processes – make them more efficient. I’ve now taken these processes and moved them on to my next big project – and it’s made a huge difference.
Communication is key
This was a huge project, with so many different parts to it and so many different people involved. This meant being able to communicate to the *right* people was important. I learnt who needed to be told what information – and what information just wasn’t relevant. I also learnt how to present the information the correct way – management don’t want long-winded spiels, they want quick bullet points and numbers that they can collate and present quickly to their management. Business owners don’t care about the technical jargon, they care about what this will mean to them and their service. Technical teams couldn’t care less why we’re moving something – they just want to know when and where.
Communication was the linchpin of the whole piece of work – ensuring that everyone knew what was going on, who was involved, when things were happening and (most importantly) why it was happening.
Take each little win as a victory and celebrate it
There were some mini milestones that were important victories – that annoying server that you’ve been trying to get rid of for years is now gone. Celebrate it! That frustrating business owner who’s been dicking you around has finally committed to getting rid of that box and you can turn it off. Celebrate it! I had a number of mini milestones (not least being getting rid of our final Server 2000 box…yes, you read that right, 2000) that I celebrated through-out the process purely because if I hadn’t done that, I would have gone insane. It also meant that I had small things to look forward to leading up to the end – it wasn’t an all-or-nothing.
So today, I get to celebrate one of those mini-milestones, even though it’s quite big.
I’ve helped my organisation save money, I’ve assisted business and service owners in moving onto more support operating systems, I’ve helped consolidate down our current server farm, I’ve helped us regain a large amount of infrastructure (in the form of disk space, and virtual memory & vCPU’s), but more importantly I’ve accomplished it.
I’ve accomplished it.
I may have had help, but this baby was pretty much all me – and for that, I think I’ll shout myself a chocolate bar ^_^
UPDATE: I was recently invited to do a guest spot on @CurrentStatus4U discussing “Death to Windows Server 2003! If you’re interested, I discuss many of the things I mentioned here and go into more details regarding change process and some of the headaches I had to deal with, which you can watch here