Cross-Forest Mailbox Migration Exchange 2007->2013

Hier beschreibe ich die Migration von Exchange 2007 nach Exchange 2013. Nicht Teil dieser Beschreibung ist die Installation des Exchange-Systems an sich. Ich setze in dieser Beschreibung voraus:

  • Exchange 2013 ist auf dem neusten Stand installiert (z.Zt. aktuell SP1 CU6)
  • Benutzer sind im ActiveDirectory angelegt und haben ein Postfach

 

Export der Mailboxen vom Quellserver

Für den Export der Mailboxen benötige ich zwei Dateien:

 

  1. Datei: Pstexport.cmd
    diese Datei führt im prinzip lediglich das Powershell-Skript aus

Powershell -command „& { \\servershare\Mailbox_Migrieren\pstexport.ps1 }“

 

  1. Datei: Pstexport.ps1
    Diese Datei führt den eigentlichen Export der Postfächer in *pst-Dateien durch

 

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin

#Variablen für die Logfiles

$filedate=get-date -f „yy-MM-dd“

$fileext=„_exchbak.txt“

#Hier findet der Export statt

Get-Mailbox -OrganizationalUnit „SMS-Eigene“ | Export-Mailbox -PSTFolderPath \\servershare\Mailbox_Migrieren\pst\ -Confirm:$false > \\servershare\Mailbox_Migrieren\logs\$filedate$fileext

exit

Die beiden Skripte sind unter \\servershare\Mailbox_Migrieren\ abzulegen. Zusätzlich müssen in diesem Verzeichnis noch die Unterverzeichnisse pst\ und logs\ angelegt werden.

Das Skript „pstexport.cmd“ kann nur unter folgenden Bedingungen ausgeführt werden:

  • Der Benutzer muss volle Zugriffsrechte für die Postfächer verfügen.
  • Es kann nicht auf dem Exchange-Server ausgeführt werden, da das export-mailbox cmdlet ein 32Bit Windows-System voraussetzt (muss man nicht verstehen)
  • Es sollte von einem Memberserver aufgerufen werden, auf dem die Exchange-Administrationstools installiert sind

Am besten abends aufrufen, denn beim ersten Aufruf läuft das Skript eine Weile

 

Import der Mailboxen auf dem Zielsystem

 

Zum Import auf dem Zielsystem habe ich folgendes Skript geschrieben. Es benötigt eine Textdatei mit einfachem Aufbau als Datenquelle:

Datei: mailboxen.txt

Mailbox

Alias1

Alias2

Alias3

Alias…

Aliasn

Datei: mailboxen_importieren.ps1

import-module activeDirectory

. ‚C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1‘

Connect-ExchangeServer -auto

$data = import-csv -encoding UTF8 -Path c:\install\mailboxen.txt -Delimiter „,“

 ##vorhandene Mailboxen leeren

#foreach ($i in $data)

#{

#search-mailbox -Identity $i.Mailbox -DeleteContent -Force

#}

 ##import der neuen Mailboxen
foreach ($j in $data)
{

$pstfile= ‚\\exchange-cas\e$\‘ + $j.mailbox + ‚.pst‘

$name= $j.Mailbox #+’2′

New-MailboxImportRequest -name $name -Mailbox $j.Mailbox -filepath $pstfile -BadItemLimit 99999

}

 ##erfolgreiche Importsanforderungen entfernen
Get-MailboxImportRequest -Status Completed | Remove-MailboxImportRequest

Dieses Skript muss dann auf dem neuen Exchange 2013 laufen.

 

Die beiden Schritte Export und Import können beliebig oft ausgeführt werden.

Wenn das Exportskript erneut gestartet wird, wird die bereits vorhandene *.pst- Datei um die Änderungen ergänzt. „Ergänzt“ ist hierbei wörtlich zu nehmen. Es werden nur Daten zusätzlich in die PST geschrieben, keine Daten entfernt!

Der Import auf dem neuen Exchange-Server erkennt, dass es sich um bereits vorhandene Elemente handelt und importiert nur die neu dazugekommenen – daher ist der erneute Import auch wesentlich schneller als der erste Initial-Import.

 

Noch was zur Auslastung beim Import:

Der Server steht extrem unter Strom, wenn der Import läuft. Man sollte nicht zuviele Imports gleichzeitig laufen lassen, wenn die Postfächer groß sind, sonst kanns sein, dass der Server an seine Speichergrenzen kommt. Ich habe dem Exchange-Mailbox Server 96GB RAM und 256GB Pagefile spendiert, damit lief der Import von ca. 80 Mailboxen mit in Summe knapp 180GB in gut 8 Stunden durch. Der zweite Import lief dann etwas weniger als 1 Stunde

About The Author

Jahrgang 1977, mehr als 20 Jahre Berufserfahrung in der IT-Branche. Schwerpunktthemen sind Windows-Netzwerke, Virtualisierung, Active Directory, Exchange, SCCM Mein Hobby ist Gospelmusik - egal ob als Sänger, Dirigent oder Bassist

Related posts

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

%d Bloggern gefällt das: