Posts mit dem Label MIGRATION werden angezeigt. Alle Posts anzeigen
Posts mit dem Label MIGRATION werden angezeigt. Alle Posts anzeigen

Freitag, 23. August 2019

[EXCHANGE][MIGRATION] Eine OnPremise Exchange Migration durchführen


Voraussetzungen

Exchange 2007 kann nur auf maximal Exchange 2013 NICHT 2016 migriert werden
Exchange 2010 kann nur auf maximal Exchange 2016 NICHT 2019 migriert werden
Exchange 2013 kann NICHT auf einem Server 2016 installiert werden, nur Server 2012 R2
Exchange 2016 kann NICHT auf einem Server 2019 installiert werden, nur Server 2016

Active Directory functional level

Exchange 2013                  2003
Exchange 2016                  2008 R2
Exchange 2019                  2012 R2

Outlook Client

Exchange 2013                  Outlook 2007 SP3
Exchange 2016                  Outlook 2010 SP2
Exchange 2019                  Outlook 2013

Komplette Kompatibilität Matrix online

Cutover oder Coexistenz?

Entweder man löst den alten Exchange in einem Schritt ab, oder man lässt beide noch ein wenig laufen (coexistenz)

Jenachdem ist ein Extra-Schritt notwendig

Anmerkung, bei der Coexistenz sind extern ebenfalls «legacy» DNS nötig (legacy.contoso.com) sowie damit es extern funktioniert 2 externe IP Adressen
Patch-Status alter Exchange Server:
Bitte den alten Server so weit wie möglich Patchen und Updaten:
WICHTIG: Dies sind die im MINIMUM benötigten Patches gemäss Microsoft

Domain Level vom AD

Der Forest und Domain Functional Level sollten mindestens 2003 / 2008R2 sein, bitte wie hier beschrieben überprüfen:
Bzw:
Active Directory Users and Computers
-> Raise Domain Functional Level
Active Directory Domains and Trusts
-> Raise Forest Functional Level


Freitag, 27. Juli 2018

[MIGRATION] DHCP Server migrieren

Auf dem neuen Server die DHCP Rolle installieren. Bei der Konfiguration KEINE Autorisierung druchführen.

Auf dem neuen Server PowerShell:

Export der alten DHCP Leases:
Export-DhcpServer -ComputerName alter_DHCP_Server -Leases -File C:\dhcpexp.xml -verbose

Import der Leases:
Import-DhcpServer –ComputerName Neuer_DHCP_Server -Leases -File C:\dhcpexp.xml -BackupPath C:\dhcpbackup\ -Verbose

Im DHCP Manager, den neuen Server Autorisieren:

Rechte Maus auf auf den Servername, Autorisieren

Beim alten die Autorisierung gneau gleich entfernen, Rolle DeInstallieren

Freitag, 8. Dezember 2017

[MIGRATION][HYPER-V] Konvertierung von PC / Server zu Hyper-V




Um eine PC / Server in Hyper-V zu konvertieren, gibt es 2 möglichkeiten.
Aus unserer Erfahrung eignet sich die erste Variante (disk2vhd) besser, da die zweite Variante oft Probleme macht bzw. bei 99% abbricht

Variante 1: Disk2VHD



Wichtig: In den "Systeminformationen" den BIOS-Modus anschauen:
Sollte dieser UEFI sein, muss auf dem Quell PC/Server folgendes gemacht werden:
-Freier Laufwerksbuchstabe, Beispiel D:\
-Die UEFI Partition mit foldendem CMD-Befehl sichtbar machen:
mountvol Z: /S


Auf dem PC / Server folgendes Tool installieren:
https://docs.microsoft.com/de-de/sysinternals/downloads/disk2vhd



"Use VHDX" und "Use VSS" einschalten

Wichtig:
Sofern ein C:\ und ein D:\ vorhanden sind, wählt nicht alles aus!
Sonnst packt das Tool alles in eine einzelne .vhdx Datei

Sondern nur z.B: System Reserved, ggf die UEFI Partition (Z:) und C:\

Danachd as Tool nochmals laufen lassen für D:\


ANMERKUNG:
Um direkt auf eine Freigabe die Datei zu erstellen, einfach ein Netzlaufwerk nutzen:
net use X: \\vmhost01\d$ PASSWORD /user:vmhost01\administrator


ANMERKUNG: Use Volume Shadow Copy (aka VSS)
Werden die
System Reserved sowie UEFI Partition virtualisiert, kann die Option
Use Volume Shadow Copy ggf. nicht benutzt werden!

Lösung: Wählt die UEFI Partition nicht aus. Die Partition wird im RAW format aber dennoch erstellt

Bottet die VM danach von einer Windows DVD,
geht in den CMD:

diskpart
list vol

die UEFI Partition sollte nun RAW sein und versteckt

sel vol # (wobei # die nummer ist)
format quick fs=fat32 label="System"


list vol
merkt euch auch den buchstaben eurer windows installation und der UEFI partition

(sollte die UEFI keinen haben:
sel vol #
assign letter=G
)


exit

danach


bcdboot C:\Windows /s G:
(wobei D: der Buchstabe der UEFI Partition ist)


War bei mir nie nötig:
bootrec /rebuildbcd




Variante 2: Microsoft

1. Auf dem Hyper-V-Server folgende Dienste installieren
                -Hyper-V
                -Intelligenter Hintergrundübertragungsdienst

2. Auf dem Hyper-V-Server den Konverter installieren: https://www.microsoft.com/en-us/download/details.aspx?id=42497

3. Gemäss Microsoft Anleitung durchführen: https://technet.microsoft.com/de-ch/library/dn874008(v=ws.11).aspx  (Scrollen bis:  „Konvertieren von physischen Computers in Hyper-V mithilfe der Benutzeroberfläche“)

WICHTIGER Hinweise: Falls der Zugriff auf den Quellcomputer wegen Fehlenden Rechten fehlschlägt, muss der Benutzer „Administrator“ aktiviert und verwendet werden. Bei anderen Admin-Benutzern kann es sein, dass es nicht klappt.

WICHTIG:
Hyper-V Generation richtig wählen:
https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/plan/should-i-create-a-generation-1-or-2-virtual-machine-in-hyper-v

WICHTIG:
Ggf. (bei älteren OS, die Integration Services Installieren, ISOs dazu hier:
https://smudj.wordpress.com/2017/03/02/vmguest-iso-for-older-windows-oses-in-win102016

WICHTIG:
Sollten Probleme mit dem Booten der VM sein (Bluescreen oder so) bitte hier weiterschauen:
http://blog.thunderbyte.ch/2019/06/hyper-vesx-nach-p2v-vortualisierung-von.html


Variante 3: Starwind

Mit diesem Tool hatte ich schon gute Erfahrungen in allerlei Konverierungen gemacht, komplett Gratis!

https://www.starwindsoftware.com/starwind-v2v-converter

Wenn der Ziel Server ein Hyper-V ist, kommt es manchmal zum Fehler:

Access Denied (0x80070005)

Auf dem Ziel-Server sind dann diverse DCOM Meldungen im Eventlog:
The server-side authentication level policy does not allow the user domain\user SID (S-1-5-21-169265991-480587897-1379554900-3670) from address (192.168.10.4) to activate DCOM server. Please raise the activation authentication level at least to RPC_C_AUTHN_LEVEL_PKT_INTEGRITY in client application.


Lösung:
-Auf dem QUELL Server, den LOKALEN Admin nehmen, nicht der domain admin
-Firewall auf dem ZIEL Server vorübergehend deaktivieren
-Registry (Reboot required!)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\AppCompat
RequireIntegrityActivationAuthenticationLevel
0x00000000


Mittwoch, 4. Oktober 2017

[MIGRATION] Migration von lokalem Benutzerprofil in ein Domänen-Profil leicht gemacht

Wichtig: Der Domänen-Benutzer darf noch kein Roaming Profil besitzen! Ansonnsten werden die Profildaten überschrieben!

Wir behelfen uns folgendem Tool:

http://www.forensit.com/downloads.html

User Profile Wizard:
Nach der installation ist "Profwiz.exe" starten

Als erstes, das User-Profil wählen, welches migriert werden soll

Im nächsten Dialogfeld:

"Enter the domain , or select the local computer name":
Entweder die Domäne eingeben (z.B. contoso.local) oder den lokalen Computer auswählen
Join Domain, falls der Computer noch nicht in der Domäne ist

Enter the account name:
Den neuen Benutzername eingeben

Im nächsten Feld, den Administrator der Domäne angeben, im Format:
CONTOSO\Administrator

Danach werden alle Einstellungen des lokalen Benutzerprofil auf das neue Domänen-Profil migriert und der PC neu gestartet

Montag, 2. Oktober 2017

[MIGRATION][GPO] Scripts und Batches für eine Migration

Anbei diverse Scripts und Batches für eine automatisierte Migration

Netzlaufwerk löschen:Batch:

net use Z: /delete

Netzlaufwerk verbinden (oder am besten mit GPO):
GPO:
Benutzerkonfiguration -> Einstellungen -> Windows Einstellungen -> Laufwerkszuordnung
Batch:
net use Z: \\Server\Freigabe /persistent:yes

Drucker Löschen:
Batch:
rundll32 printui.dll, PrintUIEntry /dn /q /n "\\Server\Druckerfreigabename"

Drucker Verbinden (am besten mit GPO):
Benutzerkonfiguration -> Einstellungen -> Systemsteuerungseinstellungen -> Drucker

Dateien Kopieren:

OHNE BERECHTIGUNGEN:
robocopy <SOURCE> <DESTINATION> /COPY:DAT /MT:16 /ZB /R:2 /W:2 /E /DCOPY:T /V /TEE /LOG:Robocopy.log

/COPY:DAT = Datei, Attribute und Zeitstempel (ohne Berechtigungen), kann ersetzt werden durch COPYALL falls die Berechtigungen übernommen werden sollten


MIT BERECHTIGUNGEN:
robocopy <SOURCE> <DESTINATION> /COPYALL /MT:16 /ZB /R:2 /W:2 /E /DCOPY:T /V /TEE /LOG:Robocopy.log


/COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT).
                      (copyflags : D=Data, A=Attributes, T=Timestamps).
                      (S=Security=NTFS ACLs, O=Owner info, U=aUditing info).


/COPYALL = Kopiert alle Dateinformationen (Datum, Atribute, Besitzer, Berechtigungen etc.)

/MT:16 = MultiThread - 16 gleichzeitige Verbindungen

/ZB = Damit bei einem Fehler nochmals gestartet werden kann

/R:2 = Zwei Versuche, falls Fehler beim Kopieren

/W:2 = Zwei sekundn warten, vor neuversuch bei Fehler

/E = Auch unterverzeichnisse / leere Verzeichnisse kopieren

/DCOPY:T = Zeitstempel der Verzeichnisse wird kopiert

/V = Verbose, Zeigt übersprungene Dateien

/TEE = Zeigt alles in Konsole sowie Logfile

/LOG:Robocopy.log = Logdatei

/FFT  = Lässt 2 Sekunden unterschied im Zeitstempel zu, wird für Windows <-> NAS / Linux verwendet

/XD "X:\ORDNER1" "X:\ORDNER2" = Bestimmter Ordner vom Kopieren ausschliessen

Montag, 24. Juli 2017

[EXCHANGE][MIGRATION] PublicFolder kann nicht entfernt werden, Replicationen vorhanden

Infos über die PublicFolder DB mit folgendem Exchange Powershell Command:
Get-PublicFolderDatabase | fl

Löschen per Command:
Remove-PublicFolderDatabase -identity "Public Folder Database"

 

Lösungsansatz 1 (Löschen geht nicht da Daten vorhanden):

Bereitstellung Aufheben
Die .edb des PublicFolders umbenennen
Bereitstellung wiederherstellen

Meldung mit OK bestätigen, dadurch wird eine neue Datenbank erstellt

Diese sollte sich nun löschen lassen, bzw, in der Public Folder Management Console, die Replikationen


Lösungsansatz 2 (exchangev1 401 elemente):

Get-PublicFolderStatistics

Zeigt ExchangeV1 mit 401 Elementen

Achtung: Auf eigene Gefahr:
adsiedit.msc

Konfiguration verbinden

Konfiguration
CN
Service
Microsoft Exchange
First Organisation
Administrative Groups
Exchange Administrative Group
Servers
Servername
InformationSore
SecondStorageGroup
Public Folder Database - löschen

oder
CN
Service
Microsoft Exchange
First Organisation
Administrative Groups
Exchange Administrative Group
Databases

Dienstag, 4. Juli 2017

[EXCHANGE][OFFICE365][MIGRATION] Ablauf einer Migration von lokalem (on Promise) Exchange zu Office 365




Mögliche Probleme:
Step 3:
Microsoft Management Framework 4.0 Fehlt
https://www.microsoft.com/de-ch/download/details.aspx?id=40855
(Windows6.1-KB2819745-x64-MultiPkg.msu)
Server neu starten und nochmals Hybrid Configurator starten


Step 5:
Migrationsendpunkt kann nicht verbinden

Mit einer Powershell (als Admin ausführen) zu Office 365 verbinden:

Set-ExecutionPolicy RemoteSigned
-> Ja

$UserCredential = Get-Credential

Office 365 Benutzername und Passwort eingeben

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession $Session

Test-MigrationServerAvailability -ExchangeRemoteMove -RemoteServer mail.primarschule-bonstetten.ch -Credentials(Get-Credential)
Benutzername und Passwort von lokalem Admin eingeben


Donnerstag, 13. April 2017

[EXCHANGE][MIGRATION] Export / Import von Mails oder Postfächer zu einer .pst Datei

Das geht ganz einfach, mit der Exchange Management Shell:

Exchange 2010, 2013, 2016:

Dem Benutzer Berechtigungen geben:

New-ManagementRoleAssignment –Role "Mailbox Import Export" –User Administrator

Wichtig: Die Management Shell neu starten

Neue Netzwerkfreigabe machen, entweder mit Zugriff für Jeder, oder "Exchange Trusted Subsystem"

Danach folgende 2 Befehle ausführen:
$AllMailboxes = Get-Mailbox
$AllMailboxes|%{$_|New-MailboxExportRequest -FilePath \\localhost\PSTExports\$($_.Alias).pst}

Für einzelnes Postfach:
New-MailboxExportRequest -Mailbox <name> -FilePath \\localhost\PSTExports\<name>.pst

Eingehende / Ausgehende Mails nur einer bestimmten Zeit
New-MailboxExportRequest -ContentFilter {(Received -lt ’04/01/2010′) -and (Received -gt ’03/01/2010′) -or (Sent -lt ’04/01/2010′) -and (Sent -gt ’03/01/2010′)} -Mailbox “John” -Name JohnExport -FilePath \\Server\Share\John.pst

Wobei: -gt (greater than), -lt (lower than

Import einer .pst in den neuen Ordner Recovery

New-MailboxImportRequest -FilePath \\localhost\share\test.pst -Mailbox John -TargetRootFolder "Recovery"



Mit diesem Befehl kann der Status überprüft werden:
Get-MailboxExportRequest

bzw
Get-MailboxImportRequest

WICHTIG: Sind alle auf Status "Completed" kann das ganze mit folgendem Befehl noch abgeschlossen werden:

Get-MailboxExportRequest | where {$_.status -eq "Completed"} | Remove-MailboxExportRequest

bzw
Get-MailboxImportRequest | where {$_.status -eq "Completed"} | Remove-MailboxImportRequest


Für Exchange 2007 ist das ganze etwas komplizierter. Es kann nicht direkt auf einem 64bit Server ausgeführt werden, da ein Export in eine .pst nur von einem 32bit Computer / Server geht. Outlook muss ebenfalls installiert sein.

Der Befehl lautet dort:
Get-Mailbox -Database ‘MDB’ | Export-Mailbox -PSTFolderPath D:\PSTs

Dienstag, 11. April 2017

[SERVER][EXCHANGE][MIGRATION] Alter Domänenkontroller zu neuem Domänenkontroller migrieren

WICHTIG: Ein funktionierendes Backup ist nach wie vor das A. und O. Es kann immer etwas schief gehen!!

WICHTIG: Sollte auf dem alten Server ein Exchange sein (z.B. bei SBS) muss dieser vorgänig weg-migriert werden!

Schritt 1:

Auf dem alten und neuen Server, alle Windows Updates installieren, sowie schauen, das die Uhrzeit stimmt.

Domain Level:
Der Forest und Domain Functional Level sollten mindestens 2003 / 2008 sein, bitte wie hier beschrieben überprüfen:

Powershell:
$dse = ([ADSI] "LDAP://RootDSE")

# Domain Controller Functional Level
$dse.domainControllerFunctionality

# Domain Functional Level
$dse.domainFunctionality

# Forest Functional Level
$dse.forestFunctionality

Resultat:
Value  Forest        Domain             Domain Controller
0      2000          2000 Mixed/Native  2000
1      2003 Interim  2003 Interim       N/A
2      2003          2003               2003
3      2008          2008               2008
4      2008 R2       2008 R2            2008 R2
5      2012          2012               2012
6      2012 R2       2012 R2            2012 R2
7      2016          2016               2016

Erhöhen könnt Ihr dies hier:
Active Directory Users and Computers
-> Raise Domain Functional Level

Active Directory Domains and Trusts
-> Raise Forest Functional Level
-> Raise Domain Forest Level

Schritt 2:

Den neuen Server ganz normal installieren. Computername  (kann später nicht mehr geändert werden) sowie IP Adresse vergeben (IP kann geändert werden)

Als erster DNS sollte der alte Domänencontroller drinnstehen, solange bis die Migration fertig ist.

Wichtig: Sofern der neue Server eine Essentials-Verison ist: Den "Windows Server Essentials konfigurieren" - Wizard nicht ausführen, immer schliessen.

Schritt 3:

Neuer Server als 2er DC konfigurieren:

Erstmals den Server ganz normal wie ein Client in die Domäne aufnehmen.

Nach dem neustart, wieder den Server Manager öffnen:

Server Manager -> Rollen und Features -> Active Directory Domänendienste rolle installieren.

Anschliessen Server zu einem Domänencontroller machen, zu einer bestehenden Domäne hinzufügen.

Anmerkung: Kommt eine Meldung bez. Sysvol / FRS nicht mehr unterstützt, muss zuerst folgendes gemacht werden:
http://www.rebeladmin.com/2015/04/step-by-step-guide-for-upgrading-sysvol-replication-to-dfsr-distributed-file-system-replication/


DNS Server anklicken

DSRM Passwort setzen

Sollten Warnungen erscheinen ist dies normal -> installieren

WICHTIG: Nach dem neustart kann nun endlich der "Windows Server Essentials konfigurieren" - Wizard abgeschlossen werden

WICHTIG: Man hat nun je nach Lizenz (Foundation / SBS) 21 Tage Zeit, den alten DC sauber abzulösen!


Donnerstag, 11. August 2016

[OFFICE][MIGRATION][OUTLOOK] Datenübernahme von Outlook 2003 auf 2010



PST:
C:\Dokumente und Einstellungen\%username%\LokaleEinstellungen\Anwendungsdaten\Microsoft\Outlook

Archive und Pst kopieren nach
C:\Users\%username%\Documents\Outlook-Dateien

NK2:
E:\Dokumente und Einstellungen\Walter Schweizer\Anwendungsdaten\Microsoft\Outlook
NK2 kopieren nach
%appdata%\Microsoft\Outlook
Klicken Sie auf Start und anschließend auf Ausführen
outlook.exe /importnk2