Vytváření, úpravy nebo odstranění konferencí pro některé koncové body aplikace v Lyncu nebo Skype pro firmy

Příznaky

Zvažte následující příklad:

  • Máte místní fond microsoftových Server Skypu pro firmy 2015 nebo Lync Serveru 2013 enterprise.
  • Máte jednu nebo více aplikací třetích stran, které používají koncové body důvěryhodných aplikací, které vytvářejí velký počet konferencí.
  • U jednoho nebo více serverů Server Skypu pro firmy 2015 nebo Lync Serveru 2013 dojde k výpadku nebo odpojení Front-End sítě.

V tomto scénáři zjistíte, že některá část koncových bodů používaných aplikacemi nemůže vytvářet, upravovat ani odstraňovat konference. Koncový bod obdrží chybu "503 syncReplicationFailed" nebo "400 conferenceAlreadyExists" pro každou konferenci, která se pokusí vytvořit, upravit nebo odstranit.

Příčina

Replikace stavových dat z primárního Front-End serveru na oba jeho sekundární servery Front-End selhání při pokusu o vytvoření, úpravu nebo odstranění konference.

Během výpadku nebo odpojení jednoho nebo více serverů Front-End mohou aktuálně aktivní servery Front-End převzít vlastnictví určitých sad uživatelů a v tomto procesu vyžadovat vytvoření nových sekundárních replik pro tyto uživatele.

Pokud aplikace třetí strany vytváří v průběhu času mnoho konferencí, může se tabulka Trvalých dat služby (PSD) zvětšovat na velikost, při které replikace na nové sekundární repliky trvá příliš dlouho. Tento prodloužený proces způsobí, že se fronty na serveru zaplní déle, než se čekalo, a aktivuje selhání replikace během operací konference.

Řešení

Chcete-li tomuto problému zabránit, PurgeAppEndpointUserDataFromPSD.ps1 nástroj Skype pro firmy 2015 Resource Kit:

https://gallery.technet.microsoft.com/How-to-purge-application-eb80d022

Tento nástroj vyhledá všechny položky související s konferencemi, které byly vytvořené koncovými body aplikace, ale které byly od té doby odstraněny. Také tyto položky vyšetruje z tabulky PersistedServiceData.

Poznámka

Pokud vás tento problém před spuštěním tohoto nástroje aktivně ovlivnil, můžete si všimnout, že koncové body aplikace, kterých se to týká, se během operací konference i po spuštění nástroje dál nedaří. Tento problém může přetrvávat, dokud se nedokončí proces sekundární replikace.

Pomocí příkazu Get-CsPoolUpgradeReadinessState PowerShellu můžete určit, jestli se dokončily všechny sekundární procesy replikace. Pokud je stav Zaneprázdněn, stále probíhají sekundární úlohy replikace, a proto může být vliv na některé části koncových bodů aplikace. Po přechodu stavu na Připravený by měly být dokončeny všechny sekundární úlohy replikace a všechny koncové body aplikace by teď měly být schopné dokončit operace konference.

U každého ovlivněného fondu postupujte takto:

  1. Volitelné: Spusťte následující SQL dotaz na instanci RTCLocal SQL serverů Front-End, abyste zjistili aktuální počet položek v tabulce PersistedServiceData. Vrácená hodnota se může lišit mezi jednotlivými Front-End servery v určitém fondu.

    select count(*) from [rtc].[dbo].[PersistedServiceData] psd with (nolock)
    inner join [rtc].[dbo].[Document] d with (nolock) on psd.DocId = d.DocId
    
  2. Spusťte následující příkaz:

    PurgeAppEndpointUserDataFromPSD.ps1 -PoolName <pool name> -Command select
    
  3. Otevřete výstupní soubory a vizuálně potvrďte, že je bezpečné jejich data odstranit.

  4. Spusťte následující příkaz:

    PurgeAppEndpointUserDataFromPSD.ps1 -PoolName <pool name> -Command delete
    
  5. Volitelné: Při spuštění nástroje můžete spustit dotaz SQL kroku 1 a ověřit, že se počet sníží. Po spuštění skriptu můžete dotaz SQL spustit ještě jednou a určit konečný počet položek v tabulce PersistedServiceData na každém Front-End serveru. Toto číslo by mělo být menší než počet, který je vidět v kroku 1.

Ve výchozím nastavení tento skript zpracuje koncové body aplikací, které jsou aktuálně v určitém fondu. Pokud byly koncové body aplikace přesunuty do jiného fondu, můžete pomocí volitelného přepínače AllPoolEndpoints označit, že chcete zahrnout koncové body aplikace, které jsou v libovolném fondu, takto:

PurgeAppEndpointUserDataFromPSD.ps1 - PoolName <Pool name> -Command delete -AllPoolEndpoints

Průběžná údržba

Tento nástroj vyšetruje všechny relevantní položky, které jsou aktuálně v tabulce PersistedServiceData, ale protože všechny aplikace třetích stran, které používají konference, dál vytvářejí nové konference, bude velikost tabulky dál růst. Proto doporučujeme, abyste nástroj PurgeAppEndpointUserDataFromPSD.ps1 pravidelně spouštěli, aby se velikost tabulky PersistedServiceData nezvětšuje do bodu, kde k tomuto problému dojde znovu.

Četnost spuštění tohoto nástroje závisí na rychlosti vytváření konferencí v těchto aplikacích třetích stran. Pomocí dotazu SQL kroku 1 v části Řešení můžete sledovat velikost tabulky a určit, jak rychle roste. To vám pomůže určit vhodný plán pro vaše prostředí.

Další informace

Stále potřebujete pomoc? Přejděte na web Microsoft Community.