April 2007


I am The Cyberwolfe and these are my ramblings. All original content is protected under a Creative Commons license - always ask first.
Creative Commons License

Install Exchange 2007 in only 60 steps!

Our company, being as IT-related as we are, has decided to migrate our Exchange 2003 system up to Exchange 2007 so we know what do to when our clients ask for it. Here’s how to do it:

1) Buy new server. You cannot upgrade an existing E2003 server.
2) Install OS of choice – in this case, Server 2003 Enterprise Edition 64-bit
3) Install all updates, antivirus, etc.
4) Print and read the 15-or-so pages from Technet describing the install process.
5) Read them again, damn thing is still updating.
End of Day 1
6) Join new server to domain.
7) Run dcpromo to convert to backup domain controller.
8) Watch dcpromo fail because you have to run adprep from the S2003 Ent-64 cd first.
9) Watch adprep fail because you have to run it on the Server 2003 domain controller.
10) Run adprep on the other DC…ok, it worked that time.
11) Run dcpromo on new server. Again, it worked this time.
12) Read the docs again, discuss with more experienced engineer – who doesn’t recognize any of the new terminology M$ is using either.
13) Curse M$ for the bastards they are.
14) Slot the Exchange 2007 DVD and run the installer.
15) Blow past the first three meaningless EULA screens and get to the actual install screen.
16) Steps 1-3 are to prep the server for Exchange. Step 1: install .Net 2.0. Click on Install, it bounces open IE to a download page. They had over 4Gigs worth of space on that DVD and they couldn’t include the .Net2 runtimes?
17) Download and install .Net
18) Step 2 is to install MMC – already done. Moving right along.
19) Step 3: Install PowerShell. Again, it bounces me to a download screen.
20) Download and install PowerShell.
21) Step 4: Install Exchange! Woohoo, here we go!
22) Watch installer launch the tester to see if you are ready for E2007. Watch tester throw big red X’s. Read and discover that I need to update .Net and install IIS because I forgot it. Read further about the pre-install Exchange Server Best Practice Analyzer that would have told me all of these things and possibly more – that was not mentioned in any of the docs I already read.
23) Update .Net
24) Install IIS.
25) Google search for the Analyzer and download. Double-click to install.
26) Watch as install fails: I need .Net 1.1?!!?
27) Download .Net 1.1
28) Curse M$ for the Bastards they are.
29) install .Net 1.1 – watch installer throw warning that the 64-bit version of the OS has a known issue with .Net 1.1 and I will have to type a really long command into a command shell after I install it. Save info to text file because you know that shit won’t be at the end of the install where it really should be.
End of Day 2.
30) Install analyzer, tweak minor issues it spits out.
31) Make Ghost image of server like a smart monkey.
32) Install Exchange…watch it fail on a “no access to file” error – because it tried to access a file on the DVD that… doesn’t exist? WTF?!?
33) Research error code, discover that running the installer again should do the trick.
34) Run installer again, adding each server role manually this time. Process succeeds.
35) Run through built-in checklist, fix errors it shows me now – like making it a Global Catalog. Razzlefrazzinpieceacrap…
36) Tests run clean.
37) Create routes and create test user from old server, mail still works.
38) Move test user mailbox to new server, test mail. Still works.
39) Move to real mailboxes as guinea pigs – mail works!
40) Wait, no it doesn’t. Outbound external is fragged. inside org and inbound work though.
41) Bash head against problem for half an hour, then call M$ Priority Support, create ticket, roll eyes excessively while Tier I tech tells me there’s nobody home in Tier II right now, they’ll call back in 2 hours or less.
42) It’s 6:30pm – Go home. Eat dinner. Bash head some more. Call it a night.
43) Answer phone at 11PM – it’s Tier II, only 3 hours late. Tell them I’ll call back in the morning.
End of Day 3
44) Have one of the other guys call M$ while I do something else – turns out I inadvertently created a routing loop. Mail is now working for all mailboxes.
45) Discover that somehow webmail is broke, spend an hour looking for a complicated cause.
46) Blink repeatedly when Da Roomie discovers that the default website of the old server has somehow been stopped. Restart service, OWA works. So does activesync.
47) Move the inactive and seldom-used mailboxes to new server. First batch throws an error – Exchange System Assistant service has stopped for no reason. Restart.
48) Next and succeeding batches work fine. Go home.
49) Test OWA from home – no such luck. Penalty reboot, 10 minutes on the bench.
50) OWA still doesn’t work from home – server times out on auth.
End of Day 4
51) Realize that E2003 is just NOT going to forward to E2007 for webmail and pull an end-run by assigning another static IP from the pool to the new server and creating some forwards in the firewall.
52) Beat on this for another hour until I realize that someone wrote the list of available static IPs down wrong and it’s dot-28, not dot-30. Amazing – now it works.
53) Spend the next two hours beating on the RPC/HTTP connector until realizing it won’t work until we de-commission the old server.
End of Days 5 and 6
54) Come to work to discover that your boss was playing with it over the weekend and managed to screw up several things, including the firewall rules you spent an hour pinning down.
55) Spend an hour figuring out and fixing the above.
56) Spend another two hours trying to get the calendar connector for our LOB software to work.
57) Find out from Tech Support at LOB Software that they don’t support E2k7. (And the boss didn’t check this when he was on the phone with the owner why?…)
58) Move all of the mailboxes back to the E2k3 server and shelve project until the “Spring release” of LOB software.
60) Bitch on Internet

One reply to “Install Exchange 2007 in only 60 steps!”

  1. bc Says:

    good LORD that sounds painful. You need combat pay.