Hallo liebe Community,
folgendes Problem/Szenario.
-Ein Windows Server 2003 mit Exchange 2003, diente sowohl als DC, als auch als Exchange Server für die Domäne.
-Es wurde eine Migration auf Windows Server 2008 R2 als DC und Windows Server 2008 R2 mit Exchange 2010 als Exchange Server durchgeführt.
-Die Migration des DC und des Exchanges wurde fast(!) beendet. Bevor der Exchange 2003 ordnungsgemäß deinstalliert werden konnte, und der DC runtergestuft werden konnte, ist der alte Server gestorben.
Die Domäne läuft soweit, Mails, Gruppen, Öffentliche Ordner, etc. laufen auch.
Fehlermeldung gibt es sobald man im Exchange 2010 in der Konsole eine Konfigurationsänderung vornehmen möchte, z.B. neuen User anlegt, oder die Eigenschaft eines vorhandenen Postfachs verändern.
Fehlermeldungen im Ereignisprotokoll des Exchange Servers(PID 6456, Thread 247) Task 'Get-Recipient' löst Beendigungsausnahme in Phase Microsoft.Exchange.Data.Directory.ADTransientException: Ein Fehler verursachte eine Änderung in der aktuellen Gruppe der Domänencontroller. aus. Ausnahme: {6f90b889-3d80-4836-930c-ba177718e9a0}
(PID 6456, Thread 247) Task 'Get-Recipient' schreibt beim Verarbeiten des Datensatzes von Index 0 einen Fehler. Fehler: Microsoft.Exchange.Data.Directory.SuitabilityDirectoryException: Active Directory-Fehler '0x 51' beim Prüfen der Eignung des Servers 'dc1.domäne.local': 'Active Directory-Antwort: Der LDAP-Server ist nicht verfügbar..'. ---> System.DirectoryServices.Protocols.LdapException: Der LDAP-Server ist nicht verfügbar.
bei System.DirectoryServices.Protocols.LdapConnection.Connect()
bei System.DirectoryServices.Protocols.LdapConnection.BindHelper(NetworkCredential newCredential, Boolean needSetCredential)
bei Microsoft.Exchange.Data.Directory.SuitabilityVerifier.CreateConnectionAndBind(String fqdn, Int32 portNumber, NetworkCredential credential)
--- Ende der internen Ausnahmestapelüberwachung ---
bei Microsoft.Exchange.Data.Directory.SuitabilityVerifier.CreateConnectionAndBind(String fqdn, Int32 portNumber, NetworkCredential credential)
bei Microsoft.Exchange.Data.Directory.SuitabilityVerifier.IsServerSuitable(String fqdn, Boolean isGlobalCatalog, NetworkCredential credential, String& writableNC, LocalizedString& errorMessage)
bei Microsoft.Exchange.Data.Directory.ConnectionPoolManager.GetConnection(ConnectionType connectionType, ADObjectId domain, String serverName, Int32 port, NetworkCredential credential)
bei Microsoft.Exchange.Data.Directory.ConnectionPoolManager.GetConnection(ConnectionType connectionType, NetworkCredential networkCredential, String serverName, Int32 port)
bei Microsoft.Exchange.Data.Directory.ADSession.GetConnection(String preferredServer, Boolean isWriteOperation, Boolean isNotifyOperation, String optionalBaseDN, ADObjectId& rootId, ADScope scope)
bei Microsoft.Exchange.Data.Directory.ADSession.GetReadConnection(String preferredServer, String optionalBaseDN, ADObjectId& rootId, ADRawEntry scopeDeteriminingObject)
bei Microsoft.Exchange.Data.Directory.ADSession.Find(ADObjectId rootId, String optionalBaseDN, ADObjectId readId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, IEnumerable`1 properties, CreateObjectDelegate objectCreator, CreateObjectsDelegate arrayCreator, Boolean includeDeletedObjects)
bei Microsoft.Exchange.Data.Directory.ADSession.Find(ADObjectId rootId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, IEnumerable`1 properties, CreateObjectDelegate objectCtor, CreateObjectsDelegate arrayCtor)
bei Microsoft.Exchange.Data.Directory.ADSession.Find[TResult](ADObjectId rootId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, IEnumerable`1 properties)
bei Microsoft.Exchange.Data.Directory.SystemConfiguration.ADSystemConfigurationSession.Find[TResult](ADObjectId rootId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults)
bei Microsoft.Exchange.Data.Directory.SystemConfiguration.ADSystemConfigurationSession.GetOrgContainer()
bei Microsoft.Exchange.Management.RecipientTasks.GetRecipient.IsUsingALbasedVlv(ADSession session)
bei Microsoft.Exchange.Management.RecipientTasks.GetRecipient.CreateSession()
bei Microsoft.Exchange.Configuration.Tasks.DataAccessTask`1.InternalStateReset()
bei Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.InternalStateReset()
bei Microsoft.Exchange.Configuration.Tasks.GetTenantADObjectWithIdentityTaskBase`2.InternalStateReset()
bei Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord()
Im Netzt habe ich diesen Artikel gefundenhttp://www.msblog.eu/exchange-2003-aus-adsi-entfernen/
Das ADSI sieht so aus, dass sowohl die „erste administrative Gruppe“ mit dem besagten nicht mehr vorhandenen ExchangeServer, als auch die „Exchange Administrative Group“ mit dem neuen ExchangeServer vorhanden ist.
Im AD ist der alte DC unter Domänen Controller natürlich auch noch vorhanden.
Meine Idee:
mit ADSI den alten ExchangeServer (CN=DC1) unter „erste administrative Gruppe“ entfernen, wie auf http://www.msblog.eu/exchange-2003-aus-adsi-entfernen/ beschrieben.
Dann das AD vom alten DC säubern.
Was meint ihr? Was ist zu tun? Wie ist die Reihenfolge? Was noch zu beachten?
Vielen Dank!