Donnerstag, 26. November 2009

Exchange 2010 – Teil3 (Mailbox Moves)

Die Art und Weise wie Mailboxen verschoben werden können, hat sich mit Exchange 2010 verändert. Wen man in Exchange 2007 einen “Move-Mailbox” Befehl in einem PowerShell Fenster ausgeführt hat und dieses per Klick auf das “X” geschlossen hat, oder z.B. die RDP Session ausgetimed ist, wurde der Move abgebrochen.

In Exchange 2010 gibt es einen neuen Service, der Mailbox Moves handelt, den MRS –> Mailbox Replication Service. D.h. es gibt keinen “Move-Mailbox” Befehl mehr in 2010. Stattdessen verwendet man den Befehl “New-MoveRequest”, der den neuen Move-Request an den MRS schickt. Der Vorteil dabei ist, dass man die Move-Requests von allen Exchange 2010 Servern in der Org sehen kann und nicht auf ein “offenes” Powershell Fenster angewiesen ist.

Aber der Reihe nach. Wir moven in meiner brandneuen Exchange 2010 Testumgebung einfach einen User “Test1” von einer Datenbank auf eine andere:

image

Wie man sehen kann wird hier unterschieden in “Local” und “Remote” Move Request. Man ahnt es bereits, der Remote Move Request kann Mailboxen von anderen Orgs moven.

Wir interessieren uns hier für einen Local-Move, und moven deshalb den User Test1 von MDB1 nach MDB2:

image

Sobald der Move-Request abgesetzt wurde, taucht er unter “Move Request” auf. Der MRS arbeitet den Move Request nun ab –> Status “Moving”.

image

Und, da die Testmailbox beihnahe leer ist, wechselt er schnell auf “completed”:

image

Interessant sind auch die Properties eines Move Requests:

image  

Hier gibt es einen Button um “Faild Messages” anzuschauen, also korrupte Items.

Der MRS kann in einer Config Datei nach Bedarf eingestellt werden. So kann man z.B. die maximale Anzahl an Moves pro Source Datenbank festlegen. Die Cofig Datei findet sich hier: “<Exchange Installation Path>\V14\Bin\MSExchangeMailboxReplication.exe.config

Der MRS läuft auf jedem CAS Server. Bei einem Remote Move Request, kommt es darauf an, ob im Remote Forest Exchange 2010 läuft oder nicht. Momentan ist diese Wahrscheinlichkeit recht gering und so kontaktiert der lokale CAS direkt den Mailbox Server in der Remote Lokation (Exchange 2003 SP2 aufwärts). Sollte doch ein CAS 2010 in der Remote Lokation vorhanden sein, kann der Lokale CAS auch über einen weiteren Dienst namens “MRSproxy”. Der MRSproxy kann einen remote 2010 CAS kontatieren und über den den Move Request organisieren.

Der MRS sorgt nun auch dafür, dass eine Historie über alle Mailbox Moves in den Mailbox Properties gespeichert wird. Abrufen lässt sich das mit dem Get-MailboxStatistics Befehl:

image

Anschließend lässt man sich das Ergebnis in ein CSV pipen:

image

Das Ergebnis ist tatsächlich sehr detailiert und man kann so sehr schön herausfinden, auf welchen Datenbanken eine Mailbox schon “wohnte” und ob es beim Moven Fehler gab:

image