Shromažďování diagnostických dat pro clustery

Platí pro: Azure Stack HCI verze 22H2 a 21H2; Windows Server 2022, Windows Server 2019 Windows Server 2016

V Prostory úložiště s přímým přístupem existují různé diagnostické nástroje, které můžete použít ke shromažďování dat potřebných k řešení potíží s Azure Stack HCI a clustery Windows Serveru. V tomto článku se zaměříme na instalaci a používání diagnostických nástrojů SDDC ke shromáždění relevantních informací, které vám pomůžou diagnostikovat cluster.

Vzhledem k tomu, že protokoly a další informace jsou zhuštěné, informace uvedené v tomto článku jsou užitečné při řešení pokročilých problémů, které byly eskalovány a které mohou vyžadovat odeslání dat do Microsoftu k posouzení.

Instalace a používání diagnostických nástrojů s Windows Admin Center

Windows Admin Center (verze 1812 a novější) můžete použít k:

  • Instalace diagnostických nástrojů SDDC a jejich aktualizace
  • Plánování denních diagnostických spuštění (mají malý dopad na systém, obvykle trvá méně než pět minut, než se spustí na pozadí, a v clusteru nebudou zabírat více než 500 MB)
  • Zobrazení dříve shromážděných diagnostických informací, pokud je potřebujete poskytnout podpoře nebo je sami analyzovat

Pokud chcete nainstalovat diagnostické nástroje SDDC a začít shromažďovat data, postupujte takto:

  1. Spusťte Windows Admin Center a vyberte Diagnostika nástrojů>. Pokud diagnostické nástroje ještě nejsou nainstalované, klikněte na tlačítko Nainstalovat .

    Kliknutím na Nainstalovat nainstalujte diagnostické nástroje SDDC.

  2. Pokud chcete začít shromažďovat diagnostická data, klikněte na Shromáždit. Měla by se zobrazit zpráva "Shromažďování diagnostických informací. Může to trvat několik minut." Pokud chcete po počátečním shromažďování dat automaticky shromažďovat data každých 24 hodin, změňte posuvník na Zapnuto.

    Kliknutím na Shromáždit můžete shromažďovat diagnostická data.

  3. Shromažďování dat není dokončeno, dokud se nezobrazí snímek obrazovky níže. Pokud chcete zobrazit shromážděné diagnostické informace, zvolte nástroj Stáhnout (.zip) nebo Otevřít v souborech.

    Pokud chcete zobrazit diagnostické informace, můžete si buď stáhnout .zip soubor, nebo ho otevřít v nástroji Soubory.

Instalace Get-SDDCDiagnosticInfo pomocí PowerShellu

Pomocí rutiny PowerShellu (označované Test-StorageHealthtaké jako Get-PCStorageDiagnosticInfo) můžete Get-SDDCDiagnosticInfo shromáždit protokoly clusteringu s podporou převzetí služeb při selhání (cluster, prostředky, sítě, uzly), Prostory úložiště (fyzické disky, skříně, virtuální disky), sdílené svazky clusteru, sdílené složky SMB a odstranění duplicitních dat.

Skript můžete nainstalovat dvěma způsoby: Galerie prostředí PowerShell a GitHub. Oba jsou uvedené níže.

Galerie prostředí PowerShell je snímek úložiště GitHub. Všimněte si, že instalace položek z Galerie prostředí PowerShell vyžaduje nejnovější verzi modulu PowerShellGet, která je k dispozici v Windows 10, v Windows Management Framework (WMF) 5.0 nebo v instalačním programu založeném na MSI (pro PowerShell 3 a 4).

Během tohoto procesu také nainstalujeme nejnovější verzi diagnostických nástrojů microsoftu pro sítě , protože Get-SDDCDiagnosticInfo se na to spoléhá. Tento modul manifestu obsahuje nástroj pro diagnostiku sítě a řešení potíží, který spravuje produktová skupina Microsoft Core Networking v Microsoftu.

Modul můžete nainstalovat spuštěním následujícího příkazu v PowerShellu jako správce:

Install-PackageProvider NuGet -Force
Install-Module PrivateCloud.DiagnosticInfo -Force
Import-Module PrivateCloud.DiagnosticInfo -Force
Install-Module -Name MSFT.Network.Diag

Pokud chcete modul aktualizovat, spusťte v PowerShellu následující příkaz:

Update-Module PrivateCloud.DiagnosticInfo

GitHubu

Úložiště GitHub je nejaktuálnější verzí modulu, protože tady neustále iterujeme. Pokud chcete nainstalovat modul z GitHubu, stáhněte si nejnovější modul z archivu a extrahujte adresář PrivateCloud.DiagnosticInfo do správné cesty k modulům PowerShellu, na kterou ukazuje. $env:PSModulePath

# Allowing Tls12 and Tls11 -- e.g. github now requires Tls12
# If this is not set, the Invoke-WebRequest fails with "The request was aborted: Could not create SSL/TLS secure channel."
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$module = 'PrivateCloud.DiagnosticInfo'
Invoke-WebRequest -Uri https://github.com/PowerShell/$module/archive/master.zip -OutFile $env:TEMP\master.zip
Expand-Archive -Path $env:TEMP\master.zip -DestinationPath $env:TEMP -Force
if (Test-Path $env:SystemRoot\System32\WindowsPowerShell\v1.0\Modules\$module) {
    rm -Recurse $env:SystemRoot\System32\WindowsPowerShell\v1.0\Modules\$module -ErrorAction Stop
    Remove-Module $module -ErrorAction SilentlyContinue
} else {
    Import-Module $module -ErrorAction SilentlyContinue
}
if (-not ($m = Get-Module $module -ErrorAction SilentlyContinue)) {
    $md = "$env:ProgramFiles\WindowsPowerShell\Modules"
} else {
    $md = (gi $m.ModuleBase -ErrorAction SilentlyContinue).PsParentPath
    Remove-Module $module -ErrorAction SilentlyContinue
    rm -Recurse $m.ModuleBase -ErrorAction Stop
}
cp -Recurse $env:TEMP\$module-master\$module $md -Force -ErrorAction Stop
rm -Recurse $env:TEMP\$module-master,$env:TEMP\master.zip
Import-Module $module -Force

Pokud potřebujete získat tento modul na offline clusteru, stáhněte si soubor ZIP, přesuňte ho do cílového uzlu serveru a nainstalujte ho.

Shromažďování protokolů pomocí PowerShellu

Po povolení kanálů událostí a dokončení procesu instalace můžete pomocí Get-SDDCDiagnosticInfo rutiny PowerShellu v modulu získat:

  • Sestavy o stavu úložiště a podrobnosti o komponentách, které nejsou v pořádku
  • Sestavy kapacity úložiště podle fondu, svazku a svazku s odstraněnými duplicitami
  • Protokoly událostí ze všech uzlů clusteru a souhrnná zpráva o chybách

Předpokládejme, že váš cluster úložiště má název "CLUS01".

Spuštění ve vzdáleném úložném clusteru:

Get-SDDCDiagnosticInfo -ClusterName CLUS01

Místní spuštění v clusteru v uzlu úložiště:

Get-SDDCDiagnosticInfo

Uložení výsledků do zadané složky:

Get-SDDCDiagnosticInfo -WriteToPath D:\Folder

Tady je příklad, jak to vypadá na skutečném clusteru:

New-Item -Name SDDCDiagTemp -Path d:\ -ItemType Directory -Force
Get-SddcDiagnosticInfo -ClusterName S2D-Cluster -WriteToPath d:\SDDCDiagTemp

Jak vidíte, skript také ověří aktuální stav clusteru:

Snímek obrazovky PowerShellu pro shromažďování dat

Všechna data se zapisují do složky SDDCDiagTemp:

Data v Průzkumník souborů snímku obrazovky

Po dokončení skriptu se v uživatelském adresáři vytvoří soubor ZIP:

Snímek obrazovky zipu dat v PowerShellu

Pojďme vygenerovat sestavu do textového souboru:

#find the latest diagnostic zip in UserProfile
    $DiagZip=(get-childitem $env:USERPROFILE | where Name -like HealthTest*.zip)
    $LatestDiagPath=($DiagZip | sort lastwritetime | select -First 1).FullName
#expand to temp directory
    New-Item -Name SDDCDiagTemp -Path d:\ -ItemType Directory -Force
    Expand-Archive -Path $LatestDiagPath -DestinationPath D:\SDDCDiagTemp -Force
#generate report and save to text file
    $report=Show-SddcDiagnosticReport -Path D:\SDDCDiagTemp
    $report | out-file d:\SDDCReport.txt

Tady je odkaz na ukázkovou sestavu a ukázkový zip.

výstup Get-SDDCDiagnosticInfo

Následující soubory jsou zahrnuté ve výstupu komprimovaného souboru Get-SDDCDiagnosticInfo.

Sestava souhrnu stavu

Souhrnná sestava stavu se uloží jako:

  • 0_CloudHealthSummary.log

Tento soubor se vygeneruje po analýze všech shromážděných dat a slouží k rychlému shrnutí vašeho systému. Obsahuje následující:

  • Systémové informace
  • Přehled stavu úložiště (počet uzlů nahoru, prostředky online, sdílené svazky clusteru online, komponenty, které nejsou v pořádku atd.)
  • Podrobnosti o komponentách, které nejsou v pořádku (prostředky clusteru, které jsou offline, selhaly nebo čekají na vyřízení online)
  • Informace o firmwaru a ovladači
  • Podrobnosti o fondu, fyzickém disku a svazku
  • Výkon úložiště (shromažďují se čítače výkonu)

Tato sestava se průběžně aktualizuje, aby obsahovala užitečnější informace. Nejnovější informace najdete v souboru README na GitHubu.

Protokoly a soubory XML

Skript spouští různé skripty shromažďování protokolů a ukládá výstup jako soubory XML. Shromažďujeme protokoly clusteru a stavu, systémové informace (MSInfo32), nefiltrované protokoly událostí (clustering s podporou převzetí služeb při selhání, diagnostika dis, Hyper-V, prostory úložiště a další) a diagnostické informace o úložišti (provozní protokoly). Nejnovější informace o tom, jaké informace se shromažďují, najdete v souboru README na GitHubu (co shromažďujeme).

Jak využívat soubory XML z Get-SDDCDiagnosticInfo

Můžete využívat data ze souborů XML poskytovaných v datech shromážděných rutinou Get-SDDCDiagnosticInfo . Tyto soubory obsahují informace o virtuálních discích, fyzických discích, základní informace o clusteru a další výstupy související s PowerShellem.

Pokud chcete zobrazit výsledky těchto výstupů, otevřete okno PowerShellu a spusťte následující kroky.

ipmo storage
$d = import-clixml <filename>
$d

Další kroky

Pošlete nám zpětnou vazbu k tomu, co byste chtěli vidět, a to tak, že tady zadáte problémy. Nebojte se také přispět k užitečným změnám skriptu odesláním žádosti o přijetí změn.