Mine erfaring med migrering af IIS på 260 websites til nyt virtualiseret hosting center
Jeg har de sidste 4 måneder arbejdet sammen med vores interne IT afdeling på en plan der bar titlen “Outsource driften af IT”. Jeg vil hermed lige dele mine erfaringer med projektet.
Når man tæller det sammen lyder projektet på
- etablering af en 500Mbit dedikeret linje til hostingcenteret
- migrering af 40 servere, isoleret set for Co3 og mit ansvar 14 servere kørende på Windows 2000, 2003, 2003 R2 med 4 IIS 6 servere og 2 SQL 2000 samt 1 SQL 2005 servere med over 10 gamle løsninger kørende med ASP, .NET 1.1, .NET 2.0, 3.5 og 4.0.
- ny platform baseret på Windows 2008 R2 64 bit servere
- vmware virtualisering oven på IBM Blades
Det hele skulle migreres over på en ny virtualiseret platform med Windows server 2008 R2 64 bit og selvfølge med mindst muligt nedetid for vores kunder.
Forud for migreringen lå at vi afventede etableringen af den dedikeret net-linje til hosting centeret, men eftersom Blade-server og infrastruktur blev klar i hostingcenteret, fik vi dog en VPN tunnel derud, så vi kunne starte på simpel server opsætning og konfiguration.
Mit projekt
- Migrere 4 IIS webserveres websites sammen på én ny IIS 7.5 ( 260 websites)
- Migrere 2 DNS maskiner fra Win 2003 over på Win 2008
- Kopiere data og efterfølgende ændringer hver anden dag ind til driftsstart
- Kopiere data fra filservere til én server
- Flytte 3 SQL servere (2000,2005) sammen på én 2008 server
- Omkodning af websites med hardcodede IP’er (da det nye hosting center ikke kunne fortsætte med vores IP range)
- Omkonfigurering af integrationsløsninger: drev-bogstaver, SMTP og SQL henvisninger m.m.
Min plan
- Ændre alle database forbindelser til at køre på DNS navn på alle 260 websites
- Ændre alle smtp forbindelser til at køre på DNS navn på alle 260 websites
- Flytte databaserne en nat og ændre DNS navn til at pege på den nye server
- Så kunne løsningerne køre med databaser hen over vores VPN tunnel ind til dedikeret linje kom op.
- Få automatiseret kopieringen af IIS opsætninger fra 4 IIS servere til én
- Få automatiseret data kopieringen fra 4 webservere til én med mulighed for at overføre ændringer hver anden dag ind til driftstart
- Få koordineret router ændringen til vores IP adresser
- Få kopieret vores filservere henover den dedikerede linje på én nat, så der kan køres drift fra næste morgen.
Konklusion
Planen lykkedes med samlet set 1 times nedetid for vores kunder en sen aften.
Vores rack er slukket
Og er nu erstattet af 5 RDP forbindelser
Tidsforbrug ca. 150 timer inkl. research på best practices samt mine automatiseringsprocesser.
Tips & tools
Til automatiseret kopiering af IIS opsætninger brugte jeg Microsoft Deployment værktøj “msdeploy” – det mest geniale værktøj til min ogave.
msdeploy -verb:sync -replace:objectname=metaproperty,scopeAttributeName=name,scopeAttributeValue=Path,targetAttributename=value,match=D:\\inetpub,replace=E:\inetpub -source:metakey=lm/w3svc/1 -disableLink:contentExtension -dest:metakey=lm/w3svc/1001,computername=co3prod01.co3dmz.lan
Min udfordring med msdeploy var at den nye servers data drev var bogstav E og de gamle lå på D – men med Google fandt jeg nogle stumper, så jeg fik strikket ovenstående kommando sammen, og så ville jeg ikke have at den skulle tage data med så derfor -disableLink:contentExtension, det ville jeg gerne håndtere med xcopy så jeg fik rettigheder på filer med over.
Til automatiseret kopieringen af data med ændringer de efterfølgende dage brugte jeg xcopy
xcopy /K /E /Y /D <source> <destination>
Adskellige kilder peger på robocopy og det er på mange måder et stærkere tool, men jeg fandt ikke pendanten til xcopys /D parameter.
Skal du ud i et lignende projekt, så håber jeg, at du har fået lidt med fra denne blogpost og har du spørgsmål så fyr løs.


