Exchange Server: Neue Updates (Oktober 2018)

Besser spät als nie: Es wurde heute das CU 11 für Exchange Server 2016 veröffentlicht. Microsoft ist diesmal etwas spät dran, denn eigentlich wurden die Updates bereits im September erwartet.

Durch die späte Veröffentlichung von CU11 wird es im Dezember kein CU geben. CU12 wird somit erst im März 2019 zusammen mit CU1 für Exchange Server 2019 veröffentlicht.

Für Exchange 2013 gibt es kein neues CU, da sich Exchange 2013 wie auch Exchange 2010 im erweiterten Support befinden.

Für Exchange 2010 gibt es allerdings das UR24, welches bereits im September veröffentlicht wurde, daher nehme ich es hier noch mit auf.

Exchange Server: Neue Updates (September 2018)

Hier geht es zu den Details der Änderungen:

Hier geht es zum Artikel zu den Updates auf dem Exchange Team Blog:

Hier findet sich ein Artikel über Punkte die bei der Installation von CUs für Exchange 2016 beachtet werden müssen:

Exchange 2016: Kumulative Updates (CU) installieren

Insbesondere der Windows Defender und andere Virenscanner sollten für die Dauer der Installation deaktiviert werden, diese verursachen gern mal Probleme während der Aktualisierung. Der Windows Defender sorgt insbesondere dafür, das Exchange CUs mehrere Stunden für die Installation benötigen.

Auch die Server Component States sollten nach der Installation eines Updates kontrolliert werden, hier finden sich entsprechende Informationen:

Exchange 2016: Server Component States

Hier findet sich auch noch ein Artikel über mögliche Stolpersteine bei den .NET Framework Abhängigkeiten der CUs für Exchange 2013 und Exchange 2016:

Exchange 2013: Stolperstein beim Update einer alten Version auf das aktuelle CU

12 Replies to “Exchange Server: Neue Updates (Oktober 2018)”

  1. Bei mir ist das Update bei Postfachinstallation abgebrochen – mehrfach versucht:
    unable to mount database. (hr=0x80004005, ec=1108)

    Gruss

    Jörg

  2. Dieser Fehler wird bei Installation des Postfachdienstes ausgeworfen:

    Fehler:
    Der folgende Fehler wurde generiert, als „$error.Clear();
    $name = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxUniqueName;
    $dispname = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxDisplayName;
    $dismbx = get-mailbox -Filter {name -eq $name} -IgnoreDefaultScope -resultSize 1;
    if( $dismbx -ne $null)
    {
    $srvname = $dismbx.ServerName;
    if( $dismbx.Database -ne $null -and $RoleFqdnOrName -like „$srvname.*“ )
    {
    Write-ExchangeSetupLog -info „Setup DiscoverySearchMailbox Permission.“;
    $mountedMdb = get-mailboxdatabase $dismbx.Database -status | where { $_.Mounted -eq $true };
    if( $mountedMdb -eq $null )
    {
    Write-ExchangeSetupLog -info „Mounting database before stamp DiscoverySearchMailbox Permission…“;
    mount-database $dismbx.Database;
    }

    $mountedMdb = get-mailboxdatabase $dismbx.Database -status | where { $_.Mounted -eq $true };
    if( $mountedMdb -ne $null )
    {
    $dmRoleGroupGuid = [Microsoft.Exchange.Data.Directory.Management.RoleGroup]::DiscoveryManagement_InitInfo.WellKnownGuid;
    $dmRoleGroup = Get-RoleGroup -Identity $dmRoleGroupGuid -DomainController $RoleDomainController -ErrorAction:SilentlyContinue;
    if( $dmRoleGroup -ne $null )
    {
    trap [Exception]
    {
    Add-MailboxPermission $dismbx -User $dmRoleGroup.Name -AccessRights FullAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue;
    continue;
    }

    Add-MailboxPermission $dismbx -User $dmRoleGroup.Identity -AccessRights FullAccess -DomainController $RoleDomainController -ErrorAction Stop -WarningAction SilentlyContinue;
    }
    }
    }
    }
    “ ausgeführt wurde: „System.InvalidOperationException: Fehler beim Einbinden der Datenbank „MailboxDatabase“. Fehler: Fehler bei Active Manager-Vorgang: Fehler bei der Datenbankaktion: Fehler bei Vorgang mit folgender Meldung: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
    Diagnostic context:
    Lid: 65256
    Lid: 10722 StoreEc: 0x454
    Lid: 1494 —- Remote Context Beg —-
    Lid: 1238 Remote Context Overflow
    Lid: 34760 StoreEc: 0xFFFFFC01
    Lid: 41344 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 35200 dwParam: 0x2EF0
    Lid: 59596 dwParam: 0x2B2A4B Msg: JI20
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT05
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT08
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM19
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM20
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM21
    Lid: 54472 StoreEc: 0x980
    Lid: 42184 StoreEc: 0x454
    Lid: 10786 dwParam: 0x0 Msg: 15.01.1591.008:Atlantis:ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 51578 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 1750 —- Remote Context End —-
    Lid: 1047 StoreEc: 0x454 .. [Datenbank: MailboxDatabase, Server: Atlantis.intern.thewalkingdead.rocks] —> Microsoft.Exchange.Cluster.Replay.AmDbActionWrapperException: Fehler bei Active Manager-Vorgang: Fehler bei der Datenbankaktion: Fehler bei Vorgang mit folgender Meldung: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
    Diagnostic context:
    Lid: 65256
    Lid: 10722 StoreEc: 0x454
    Lid: 1494 —- Remote Context Beg —-
    Lid: 1238 Remote Context Overflow
    Lid: 34760 StoreEc: 0xFFFFFC01
    Lid: 41344 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 35200 dwParam: 0x2EF0
    Lid: 59596 dwParam: 0x2B2A4B Msg: JI20
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT05
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT08
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM19
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM20
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM21
    Lid: 54472 StoreEc: 0x980
    Lid: 42184 StoreEc: 0x454
    Lid: 10786 dwParam: 0x0 Msg: 15.01.1591.008:Atlantis:ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 51578 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 1750 —- Remote Context End —-
    Lid: 1047 StoreEc: 0x454 .. [Datenbank: MailboxDatabase, Server: Atlantis.intern.thewalkingdead.rocks] —> Microsoft.Exchange.Data.Storage.AmOperationFailedException: An Active Manager operation failed. Error: Fehler bei Vorgang mit folgender Meldung: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
    Diagnostic context:
    Lid: 65256
    Lid: 10722 StoreEc: 0x454
    Lid: 1494 —- Remote Context Beg —-
    Lid: 1238 Remote Context Overflow
    Lid: 34760 StoreEc: 0xFFFFFC01
    Lid: 41344 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 35200 dwParam: 0x2EF0
    Lid: 59596 dwParam: 0x2B2A4B Msg: JI20
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT05
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT08
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM19
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM20
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM21
    Lid: 54472 StoreEc: 0x980
    Lid: 42184 StoreEc: 0x454
    Lid: 10786 dwParam: 0x0 Msg: 15.01.1591.008:Atlantis:ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 51578 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 1750 —- Remote Context End —-
    Lid: 1047 StoreEc: 0x454 [Server: Atlantis.intern.thewalkingdead.rocks] —> Microsoft.Mapi.MapiExceptionDatabaseError: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
    Diagnostic context:
    Lid: 65256
    Lid: 10722 StoreEc: 0x454
    Lid: 1494 —- Remote Context Beg —-
    Lid: 1238 Remote Context Overflow
    Lid: 34760 StoreEc: 0xFFFFFC01
    Lid: 41344 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 35200 dwParam: 0x2EF0
    Lid: 59596 dwParam: 0x2B2A4B Msg: JI20
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT05
    Lid: 43212 dwParam: 0x2B2A5A Msg: JT08
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM19
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM20
    Lid: 59596 dwParam: 0x2B2A5A Msg: WM21
    Lid: 54472 StoreEc: 0x980
    Lid: 42184 StoreEc: 0x454
    Lid: 10786 dwParam: 0x0 Msg: 15.01.1591.008:Atlantis:ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 51578 Guid: ce10069a-4d70-49cd-ba26-f7bff872ca0c
    Lid: 1750 —- Remote Context End —-
    Lid: 1047 StoreEc: 0x454
    bei Microsoft.Mapi.MapiExceptionHelper.InternalThrowIfErrorOrWarning(String message, Int32 hresult, Boolean allowWarnings, Int32 ec, DiagnosticContext diagCtx, Exception innerException)
    bei Microsoft.Mapi.MapiExceptionHelper.ThrowIfError(String message, Int32 hresult, IExInterface iUnknown, Exception innerException)
    bei Microsoft.Mapi.ExRpcAdmin.MountDatabase(Guid guidStorageGroup, Guid guidMdb, Int32 ulFlags)
    bei Microsoft.Exchange.Cluster.Replay.StoreRpcController.c__DisplayClass19_0.b__0()
    bei Microsoft.Exchange.Cluster.Shared.SafeRefCountedTimeoutWrapper.c__DisplayClass21_0.b__0()
    bei Microsoft.Exchange.Data.HA.InvokeWithTimeout.Invoke(Action invokableAction, Action foregroundAction, TimeSpan invokeTimeout, Boolean sendWatsonReportNoThrow, Object cancelEvent)
    bei Microsoft.Exchange.Cluster.Shared.SafeRefCountedTimeoutWrapper.ProtectedCallWithTimeout(String operationName, TimeSpan timeout, Action operation)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmStoreHelper.Mount(Guid mdbGuid, MountFlags flags)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.ActiveManagerCore.c__DisplayClass45_1.b__4()
    bei Microsoft.Exchange.Cluster.Replay.FailoverPerformanceTrackerBase`1.RunTimedOperation(TOpCode opCode, Action operation)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.ActiveManagerCore.MountDatabaseDirect(Guid mdbGuid, MountFlags storeFlags, AmMountFlags amMountFlags, AmDbActionCode actionCode)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmRpcServer.c__DisplayClass19_0.b__0()
    bei Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.RunRpcServerOperation(String databaseName, RpcServerOperation rpcOperation)
    — Ende der internen Ausnahmestapelüberwachung —
    bei Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.ClientRethrowIfFailed(String databaseName, String serverName, RpcErrorExceptionInfo errorInfo)
    bei Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.RunRpcOperationWithAuth(AmRpcOperationHint rpcOperationHint, String serverName, String databaseName, NetworkCredential networkCredential, Nullable`1 timeoutMs, InternalRpcOperation rpcOperation)
    bei Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.MountDatabaseDirectEx(String serverToRpc, Guid dbGuid, AmMountArg mountArg)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmRpcClientWrapper.MountDatabaseDirectEx(String serverToRpc, Guid dbGuid, AmMountArg mountArg)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmDbAction.MountDatabaseDirect(AmServerName serverName, AmServerName lastMountedServerName, Guid dbGuid, MountFlags storeFlags, AmMountFlags amFlags, AmDbActionCode actionCode)
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmDbStandaloneAction.c__DisplayClass1_0.b__0(Object , EventArgs )
    bei Microsoft.Exchange.Cluster.ActiveManagerServer.AmHelper.HandleKnownExceptions(EventHandler ev)
    — Ende der internen Ausnahmestapelüberwachung —
    bei Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.ClientRethrowIfFailed(String databaseName, String serverName, RpcErrorExceptionInfo errorInfo)
    bei Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.RunDatabaseRpcWithReferral(AmRpcOperationHint rpcOperationHint, IADDatabase database, String targetServer, InternalRpcOperation rpcOperation)
    bei Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.RequestMount(MountFlags storeMountFlags)
    bei Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.InternalProcessRecord()
    — Ende der internen Ausnahmestapelüberwachung —
    bei Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
    bei Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)
    bei Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.InternalProcessRecord()
    bei Microsoft.Exchange.Configuration.Tasks.Task.b__91_1()
    bei Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)“.

  3. Hallo Jörg, hast du dich daran gehalten?

    Important: To avoid a setup failure, it is necessary to install the Visual C++ 2012 runtime before installing Cumulative Update 11 or later for the first time on an existing server. The setup pre-requisite rule works as expected when using Cumulative Update 11 or later to install a new server using the Cumulative Update 11 or later package.

  4. Ne, Mist, ich hoffe, ich kann es nachinstallieren und dann das Setup fortsetzen.
    Ich werde Euch informieren. Das Setup hätte aber auch darauf hinweisen können …..

    Gruss

    Jörg

  5. Ich hab das Update im Homelab noch „schnell“ gemacht. Lief sauber durch aber dauerte viel länger als frühere Updates. Gut über ne Stunde obwohl kein Defender etc. aktiv war. Das lief schon mal schneller durch bei gleichen Ressourcen.

  6. Bevor ich das nochmal teste: Mit welchen Rechten muss ich das machen?
    IAls Domainadmin oder als Exchangeadmin?

    Gruss

    Jörg

  7. Hallo Frank,
    vielen Dank für die Einführung. Ich habe es in meiner Testumgebung (DAG mit vier Servern) installiert und alle möglichen Tests gemacht, Alles sieht gut aus. Bis auf eins: der Installer hat diesmal auf allen vier Servern den ausstehenden Neustart angemahnt, obwohl ich sicher war, dass keiner aussteht. Vielleicht machen die das jetzt als vorbeugende Maßnahme einfach immer.
    Viele Grüße,
    Michael

  8. Guten Morgen zusammen!

    Ich wollte mal kurz nachfragen, ob das die einzigen Probleme sind, die zu erwarten sind,
    oder ob es da möglicherweise noch mehr gibt?

    Hat Microsoft ggf. neue Updates herausgebracht?

    Vielen Dank und viele Grüße

    Marcus

  9. Seit der Einführung hat Microsoft die Art und Weise, wie Benutzer aktualisieren können, stark verbessert. Danke für diese Informationen. Ich hoffe, ich lese mehr von deinen Blogs.

Schreibe einen Kommentar

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