U kunt een SQL Server-cluster niet bijwerken wanneer het installatieprogramma de Cluster_IsOnlineIfClustered regel controleert

Dit artikel helpt u bij het oplossen van het probleem dat optreedt wanneer het installatieprogramma de Cluster_IsOnlineIfClustered regel controleert.

Originele productversie: SQL Server 2012 en latere versies Oorspronkelijk KB-nummer: 2817733

Symptomen

Bekijk het volgende scenario:

  • In een clusteromgeving installeert u een exemplaar van Microsoft SQL Server.

  • U probeert SQL Server-servicepacks of cumulatieve updates te installeren op de server die dit exemplaar bevat.

In dit geval mislukt de installatiebewerking vroeg in het proces. De bewerking mislukt met name wanneer het installatieprogramma de Cluster_IsOnlineIfClustered regel controleert. Daarnaast wordt een bericht dat lijkt op het volgende bericht in het Detail.txt-bestand vastgelegd:

<Time Stamp> Slp: Init rule target object: Microsoft.SqlServer.Configuration.Cluster.Rules.ClusterServiceFacet
<Time Stamp> Slp: The given key was not present in the dictionary.
<Time Stamp> Slp: at Microsoft.SqlServer.Chainer.Infrastructure.ServiceContainer.GetService(Type serviceType)

at Microsoft.SqlServer.Chainer.Infrastructure.ServiceContainer.GetService[T]()

at Microsoft.SqlServer.Chainer.Infrastructure.ServiceContainer.get_Cluster()

at Microsoft.SqlServer.Configuration.Cluster.Rules.ClusterServiceFacet.Microsoft.SqlServer.Configuration.RulesEngineExtension.IRuleInitialize.Init(String ruleId)

at Microsoft.SqlServer.Configuration.RulesEngineExtension.RulesEngine.Execute(Boolean stopOnFailure)

<Time Stamp> Slp: Rule initialization failed - hence the rule result is assigned as Failed

Notitie

Het bestand Detail.txt bevindt zich op %ProgramFiles%\Microsoft SQL Server\110\Setup Bootstrap\Log\<YYYYMMDD_HHMM>.

Oorzaak

Dit probleem treedt op vanwege een ongeldige MSCluster-naamruimte in WMI (Windows Management Instrumentation).

Oplossing

Volg deze stappen om dit probleem op te lossen:

  1. Typ bij een beheeropdrachtprompt cd %systemroot%\system32\wbemen druk op Enter.

  2. Typ de opdracht regsvr32 cluswmi.dllen druk op Enter.

  3. Typ de opdracht mofcomp.exe ClusWMI.mofen druk op Enter.

  4. Voer de installatie van de servicepacks of cumulatieve updates op de server opnieuw uit.

Meer informatie

Voer de volgende stappen uit om te achterhalen dat dit probleem wordt veroorzaakt door de WMI-naamruimte voor het cluster:

  1. Meld u aan als het account dat beheerder is van het cluster en voert SQL Server Setup uit.

  2. Voer de opdracht wbemtest uit bij een beheeropdrachtprompt.

  3. Selecteer Verbinding maken...in het venster Windows Management Instrumentation Tester.

  4. Typ root\MSCluster in naamruimte en selecteer vervolgens de knop Verbinding maken . In deze situatie krijgt u mogelijk een foutbericht dat lijkt op de volgende:

    Getal: 0x8004100e
    Faciliteit: WMI
    Beschrijving: Ongeldige naamruimte

    Notitie

    Als extra test kunt u de volgende query uitvoeren in Windows PowerShell:

       SELECT name FROM <MSCluster_Cluster>
    

    Als het probleem niet wordt veroorzaakt door een ongeldige MSCluster-naamruimte, is het verwachte resultaat dat de naam van het clusternetwerk wordt geretourneerd.