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

Platí pro: Azure Stack HCI, verze 21H2 a 20H2; 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 clustery Azure Stack HCI a Windows Serveru. V tomto článku se zaměříme na instalaci a použití diagnostických nástrojů SDDC ke shromáždění relevantních informací, které vám pomůžou s diagnostikou clusteru.

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

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

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

  • Instalace diagnostických nástrojů SDDC a jejich udržování v aktualizovaném stavu
  • Plánování denních diagnostických spuštění (to má malý dopad na systém, obvykle trvá méně než pět minut, než se spustí na pozadí, a v clusteru to nebude trvat déle než 500 MB).
  • Zobrazení dříve shromážděných diagnostických informací, pokud je potřebujete poskytnout podpoře nebo analýze sami

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 Instalovat .

    Click Install to install SDDC diagnostic tools.

  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 data automaticky shromažďovat každých 24 hodin po počáteční kolekci dat, změňte posuvník na Zapnuto.

    Click Collect to being collecting diagnostic data.

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

    To view diagnostic information, you can either download a .zip file or open in Files tool.

Instalace Get-SDDCDiagnosticInfo pomocí PowerShellu

Pomocí rutiny PowerShellu (označované také jako Get-PCStorageDiagnosticInfo, dříve označované jako Test-StorageHealth) můžete Get-SDDCDiagnosticInfo shromažďovat protokoly pro clustering 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.

Existují dvě metody instalace skriptu: Galerie prostředí PowerShell a GitHub. Obě jsou popsány 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 nainstalujeme nejnovější verzi nástrojů Microsoft Networking Diagnostics , protože Get-SDDCDiagnosticInfo na to spoléháme. Tento modul manifestu obsahuje nástroj pro diagnostiku sítě a řešení potíží, který spravuje skupina produktů 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 modul nainstalovat z GitHub, stáhněte si nejnovější modul z archivu a extrahujte adresář PrivateCloud.DiagnosticInfo do správné cesty modulů PowerShellu, kterou odkazuje$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 tento modul získat v offline clusteru, stáhněte soubor ZIP, přesuňte ho do uzlu cílového serveru a nainstalujte modul.

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

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

  • 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 duplicitními daty
  • 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í v clusteru vzdáleného úložiště:

Get-SDDCDiagnosticInfo -ClusterName CLUS01

Spuštění místně na uzlu clusterovaného ú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é provede ověření aktuálního stavu clusteru:

data collection powershell screenshot

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

data in file explorer screenshot

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

data zip in powershell screenshot

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.

Get-SDDCDiagnosticInfo výstup

Následují soubory zahrnuté do zazipovaného výstupu Get-SDDCDiagnosticInfosouboru .

Sestava souhrnu stavu

Souhrnná sestava stavu se uloží takto:

  • 0_CloudHealthSummary.log

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

  • Systémové informace
  • přehled stavu Storage (počet uzlů, online prostředky, 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 online zpracování)
  • Informace o firmwaru a ovladači
  • Podrobnosti o fondu, fyzickém disku a svazku
  • výkon Storage (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 GITHUB README.

Protokoly a soubory XML

Skript spustí různé skripty shromažďování protokolů a uloží 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, Prostory úložiště a další) a diagnostické informace o úložišti (provozní protokoly). Nejnovější informace o shromažďovaných informacích najdete v souboru GITHUB README (co shromažďujeme).

Jak využívat soubory XML z Get-PCStorageDiagnosticInfo

Můžete využívat data ze souborů XML poskytovaných v datech shromážděných rutinou Get-PCStorageDiagnosticInfo . Tyto soubory obsahují informace o virtuálních discích, fyzických discích, základních informacích o clusteru a dalších výstupech souvisejících 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

Uveďte zpětnou vazbu k tomu, co byste chtěli vidět, a to tak, že tady zadáte problémy. Můžete také přispět užitečnými změnami skriptu odesláním žádosti o přijetí změn.