Min 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

  1. Ændre alle database forbindelser til at køre på DNS navn på alle 260 websites
  2. Ændre alle smtp forbindelser til at køre på DNS navn på alle 260 websites
  3. Flytte databaserne en nat og ændre DNS navn til at pege på den nye server
    1. Så kunne løsningerne køre med databaser hen over vores VPN tunnel ind til dedikeret linje kom op.
  4. Få automatiseret kopieringen af IIS opsætninger fra 4 IIS servere til én
  5. Få automatiseret data kopieringen fra 4 webservere til én med mulighed for at overføre ændringer hver anden dag ind til driftstart
  6. Få koordineret router ændringen til vores IP adresser
  7. 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 :)

co3 rack slukket

Og er nu erstattet af 5 RDP forbindelser

Remote Desktop connections

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.

 

, , ,

2 Kommentarer

  • Lars siger:

    Hej Kevin
    Tak fordi du deler dine erfaringer.

    Du skriver du har brugt xcopy fordi du gerne ville kopierer filer med rettighederne. Har I brugt IIS’ standard IUSR brugere eller lå brugerne på et DC?

  • Kevin Steffer siger:

    Hej Lars, vi brugte IIS’ standard brugere, men vores rettigheder til vores udviklere, FTP program etc. skulle bevares.

Skriv et svar

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>