Az Azure Stack Hub diagnosztikai naplóinak küldése a kiemelt végpont (PEP) használatával

Az Get-AzureStackLog integrált rendszeren való futtatásához hozzáféréssel kell rendelkeznie a kiemelt végponthoz (PEP). Íme egy példaszkript, amely a PEP használatával futtatható a naplók gyűjtéséhez. Ha egy futó naplógyűjteményt megszakít egy új naplógyűjtemény elindításához, várjon 5 percet, mielőtt elindítaná az új naplógyűjteményt, és írja be a következőt Remove-PSSession -Session $session:

$ipAddress = "<IP ADDRESS OF THE PEP VM>" # You can also use the machine name instead of IP here.

$password = ConvertTo-SecureString "<CLOUD ADMIN PASSWORD>" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential ("<DOMAIN NAME>\CloudAdmin", $password)

$shareCred = Get-Credential

$session = New-PSSession -ComputerName $ipAddress -ConfigurationName PrivilegedEndpoint -Credential $cred -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)

$fromDate = (Get-Date).AddHours(-8)
$toDate = (Get-Date).AddHours(-2) # Provide the time that includes the period for your issue

Invoke-Command -Session $session { Get-AzureStackLog -OutputSharePath "<EXTERNAL SHARE ADDRESS>" -OutputShareCredential $using:shareCred -FilterByRole Storage -FromDate $using:fromDate -ToDate $using:toDate}

if ($session) {
    Remove-PSSession -Session $session
}

Példák

  • Gyűjtse össze az összes szerepkör naplóit:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred
    
  • Naplók gyűjtése VirtualMachines- és BareMetal-szerepkörökből:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred -FilterByRole VirtualMachines,BareMetal
    
  • Gyűjtsön naplókat a VirtualMachines és a BareMetal szerepkörökből a naplófájlok dátumszűrésével az elmúlt 8 órában:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred -FilterByRole VirtualMachines,BareMetal -FromDate (Get-Date).AddHours(-8)
    
  • Gyűjtsön naplókat a VirtualMachines és a BareMetal szerepkörökből a naplófájlok dátumszűrésével a 8 órával ezelőtt és 2 órával ezelőtt közötti időszakra vonatkozóan:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred -FilterByRole VirtualMachines,BareMetal -FromDate (Get-Date).AddHours(-8) -ToDate (Get-Date).AddHours(-2)
    
  • Naplók gyűjtése önkiszolgáló Kubernetes-fürtöket (AKS-motort) futtató bérlői üzemelő példányokból az Azure Stacken. A Kubernetes-naplókat bérlői tárfiókban kell tárolni olyan formátumban, amely lehetővé teszi a gyűjtemény időtartományának alkalmazását is.

    Get-AzureStackLog -OutputPath <Path> -InputSasUri "<Blob Service Sas URI>" -FromDate "<Beginning of the time range>" -ToDate "<End of the time range>"
    

    Például:

    Get-AzureStackLog -OutputPath C:\KubernetesLogs -InputSasUri "https://<storageAccountName>.blob.core.windows.net/<ContainerName><SAS token>" -FromDate (Get-Date).AddHours(-8) -ToDate (Get-Date).AddHours(-2) 
    
  • Gyűjtsön naplókat az érték hozzáadása kérelemegységekhez. Az általános szintaxis a következő:

    Get-AzureStackLog -FilterByResourceProvider <<value-add RP name>>
    

    Naplók gyűjtése SQL RP-hez:

    Get-AzureStackLog -FilterByResourceProvider SQLAdapter
    

    Naplók gyűjtése a MySQL RP-hez:

    Get-AzureStackLog -FilterByResourceProvider MySQLAdapter
    

    Az Event Hubs naplóinak gyűjtése:

    Get-AzureStackLog -FilterByResourceProvider eventhub
    

    Naplók gyűjtése az Azure Stack Edge-hez:

    Get-AzureStackLog -FilterByResourceProvide databoxedge
    
  • Gyűjtse össze a naplókat, és tárolja őket a megadott Azure Storage blobtárolóban. A művelet általános szintaxisa a következő:

    Get-AzureStackLog -OutputSasUri "<Blob service SAS Uri>"
    

    Például:

    Get-AzureStackLog -OutputSasUri "https://<storageAccountName>.blob.core.windows.net/<ContainerName><SAS token>"
    

    Megjegyzés

    Ez az eljárás naplók feltöltéséhez hasznos. Még ha nem is rendelkezik SMB-megosztással vagy internet-hozzáféréssel, létrehozhat egy Blob Storage-fiókot az Azure Stack Hubon a naplók átviteléhez, majd az ügyfél használatával lekérheti ezeket a naplókat.

    A tárfiók SAS-jogkivonatának létrehozásához a következő engedélyek szükségesek:

    • Hozzáférés a Blob Storage szolgáltatáshoz.
    • Hozzáférés a tároló erőforrástípusához.

    A paraméterhez használandó SAS URI-érték létrehozásához kövesse az -OutputSasUri alábbi lépéseket:

    1. Hozzon létre egy tárfiókot a cikk lépéseit követve.
    2. Nyissa meg a Azure Storage Explorer egy példányát.
    3. Csatlakozás az 1. lépésben létrehozott tárfiókra.
    4. Lépjen a blobtárolókhoz a Storage Servicesben.
    5. Válassza az Új tároló létrehozása lehetőséget.
    6. Kattintson a jobb gombbal az új tárolóra, majd kattintson a Közös hozzáférésű jogosultságkód lekérése parancsra.
    7. Válasszon érvényes kezdési ésbefejezési időpontot a követelményeknek megfelelően.
    8. A szükséges engedélyekhez válassza az Olvasás, az Írás és a Lista lehetőséget.
    9. Válassza a Létrehozás lehetőséget.
    10. Kap egy közös hozzáférésű jogosultságkódot. Másolja ki az URL-címet, és adja meg a -OutputSasUri paraméternek.

Paraméterekkel kapcsolatos szempontok

  • Az OutputSharePath és az OutputShareCredential paraméterek a naplók felhasználó által megadott helyen való tárolására szolgálnak.

  • A FromDate és a ToDate paraméterekkel naplókat gyűjthet egy adott időszakra vonatkozóan. Ha ezek a paraméterek nincsenek megadva, a rendszer alapértelmezés szerint az elmúlt négy órára gyűjti a naplókat.

  • Használja a FilterByNode paramétert a naplók számítógépnév szerinti szűréséhez. Például:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred -FilterByNode azs-xrp01
    
  • A FilterByLogType paraméter használatával típus szerint szűrheti a naplókat. Választhat, hogy fájl, megosztás vagy WindowsEvent alapján szűr. Például:

    Get-AzureStackLog -OutputSharePath "<path>" -OutputShareCredential $cred -FilterByLogType File
    
  • A TimeOutInMinutes paraméter használatával beállíthatja a naplógyűjtés időtúllépését. Alapértelmezés szerint 150 (2,5 óra) értékre van állítva.

  • A memóriaképfájl naplógyűjteménye alapértelmezés szerint le van tiltva. Ennek engedélyezéséhez használja az IncludeDumpFile kapcsolóparamétert.

  • Jelenleg a FilterByRole paraméter használatával szűrheti a naplógyűjteményt a következő szerepkörök szerint:

ACS

ACSBlob

ACSDownloadService

ACSFabric

ACSFrontEnd

ACSMetrics

ACSMigrationService

ACSMonitoringService

ACSSettingsService

ACSTableMaster

ACSTableServer

ACSWac

ADFS

ApplicationController

ASAppGateway

AzureBridge

AzureMonitor

BareMetal

BRP

CA

CacheService

Compute

CPI

CRP

DeploymentMachine

DiskRP

Domain

ECE

EventAdminRP

EventRP

ExternalDNS

Hálók

FabricRingServices

FirstTierAggregationService

FRP

Átjáró

HealthMonitoring

HintingServiceV2

HRP

IBC

InfraServiceController

KeyVaultAdminResourceProvider

KeyVaultControlPlane

KeyVaultDataPlane

KeyVaultInternalControlPlane

KeyVaultInternalDataPlane

KeyVaultNamingService

MDM

MetricsAdminRP

MetricsRP

MetricsServer

MetricsStoreService

MonAdminRP

MonRP

NC

NonPrivilegedAppGateway

NRP

OboService

OEM

OnboardRP

PXE

QueryServiceCoordinator

QueryServiceWorker

Magvetés

SeedRingServices

SLB

SQL

SRP

Tárolás

StorageController

URP

SupportBridgeController

Támogatás támogatására

SupportRingServices

SupportBridgeRP

UsageBridge

VirtualMachines

VOLT

WASPUBLIC

A diagnosztikai naplókkal kapcsolatos további szempontok

  • A parancs futtatása eltarthat egy ideig attól függően, hogy a naplók milyen szerepkör(ek)et gyűjtenek. A közreműködő tényezők közé tartozik a naplógyűjtéshez megadott időtartam és az Azure Stack Hub-környezetben található csomópontok száma is.

  • A naplógyűjtemény futtatásakor ellenőrizze a parancsban megadott OutputSharePath paraméterben létrehozott új mappát.

  • Minden szerepkör naplói külön zip-fájlokban találhatók. Az összegyűjtött naplók méretétől függően előfordulhat, hogy egy szerepkör naplói több zip-fájlra vannak osztva. Ilyen szerepkör esetén, ha az összes naplófájlt egyetlen mappába szeretné csomagolni, használjon olyan eszközt, amely tömegesen kibontható. Jelölje ki a szerepkörhöz tartozó összes tömörített fájlt, és válassza a kinyerés elemet. A szerepkör összes naplófájlja egyetlen egyesített mappába lesz csomagolva.

  • A tömörített naplófájlokat tartalmazó mappában létrejön egy Get-AzureStackLog_Output.log nevű fájl is. Ez a fájl a parancs kimenetének naplója, amely a naplógyűjtés során felmerülő problémák elhárítására használható. Előfordulhat, hogy a naplófájl olyan bejegyzéseket is tartalmaz PS>TerminatingError , amelyek nyugodtan figyelmen kívül hagyhatók, kivéve, ha a várt naplófájlok hiányoznak a naplógyűjtés futtatása után.

  • Egy adott hiba kivizsgálásához több összetevő naplóira is szükség lehet.

    • Az infrastruktúra virtuális gépeinek rendszer- és eseménynaplói a VirtualMachines szerepkörben lesznek összegyűjtve.
    • Az összes gazdagép rendszer- és eseménynaplói a BareMetal szerepkörben lesznek összegyűjtve.
    • A feladatátvevő fürt és a Hyper-V eseménynaplói a Storage szerepkörben lesznek összegyűjtve.
    • Az ACS-naplók a Storage és az ACS-szerepkörökben lesznek összegyűjtve.

Megjegyzés

A méret- és korhatárokat a rendszer az összegyűjtött naplókon érvényesíti, mivel elengedhetetlen a tárhely hatékony kihasználtságának biztosítása és a naplók elárasztásának elkerülése érdekében. A probléma diagnosztizálásakor azonban néha olyan naplókra van szükség, amelyek már nem léteznek ezen korlátok miatt. Ezért erősen ajánlott , hogy a naplókat 8–12 óránként egy külső tárolóhelyre (egy Azure-beli tárfiókra, egy további helyszíni tárolóeszközre stb.) töltse ki, és a követelményektől függően 1–3 hónapig tartsa ott. Győződjön meg arról is, hogy ez a tárolóhely titkosítva van.

Invoke-AzureStackOnDemandLog

Az Invoke-AzureStackOnDemandLog parancsmaggal igény szerinti naplókat hozhat létre bizonyos szerepkörökhöz (lásd a szakasz végén található listát). A parancsmag által létrehozott naplók alapértelmezés szerint nem szerepelnek a Get-AzureStackLog parancsmag végrehajtásakor kapott naplócsomagban. Azt is javasoljuk, hogy ezeket a naplókat csak akkor gyűjtse össze, ha a Microsoft támogatási csapata kéri.

Jelenleg a paraméter használatával szűrheti a -FilterByRole naplógyűjteményt a következő szerepkörök szerint:

  • OEM
  • NC
  • SLB
  • Átjáró

Példa igény szerinti diagnosztikai naplók gyűjtésére

$ipAddress = "<IP ADDRESS OF THE PEP VM>" # You can also use the machine name instead of IP here.

$password = ConvertTo-SecureString "<CLOUD ADMIN PASSWORD>" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential ("<DOMAIN NAME>\CloudAdmin", $password)

$shareCred = Get-Credential

$session = New-PSSession -ComputerName $ipAddress -ConfigurationName PrivilegedEndpoint -Credential $cred -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)

$fromDate = (Get-Date).AddHours(-8)
$toDate = (Get-Date).AddHours(-2) # Provide the time that includes the period for your issue

Invoke-Command -Session $session {
   Invoke-AzureStackOnDemandLog -Generate -FilterByRole "<on-demand role name>" # Provide the supported on-demand role name e.g. OEM, NC, SLB, Gateway
   Get-AzureStackLog -OutputSharePath "<external share address>" -OutputShareCredential $using:shareCred -FilterByRole Storage -FromDate $using:fromDate -ToDate $using:toDate
}

if ($session) {
   Remove-PSSession -Session $session
}

A diagnosztikai naplógyűjtés működése a PEP használatával

Az Azure Stack Hub diagnosztikai eszközei megkönnyítik és hatékonyabbá teszik a naplógyűjtést. Az alábbi ábrán a diagnosztikai eszközök működése látható:

Azure Stack Hub diagnostic tools workflow diagram

Nyomkövetési gyűjtő

A Nyomkövetési gyűjtő alapértelmezés szerint engedélyezve van, és folyamatosan fut a háttérben, hogy összegyűjtse Windows (ETW) naplóinak összes eseménykövetését az Azure Stack Hub összetevőszolgáltatásaiból. Az ETW-naplókat egy közös helyi megosztás tárolja ötnapos korhatárral. A korlát elérése után a rendszer az új fájlok létrehozásakor törli a legrégebbi fájlokat. Az egyes fájlok alapértelmezett maximális mérete 200 MB. A méretellenőrzés 2 percenként történik, és ha az aktuális fájl >= 200 MB, akkor a rendszer menti, és új fájl jön létre. Az esemény-munkamenetenként generált teljes fájlméretre 8 GB-os korlát vonatkozik.

Get-AzureStackLog

A PowerShell-parancsmag Get-AzureStackLog segítségével naplókat gyűjthet egy Azure Stack Hub-környezetben lévő összes összetevőről. Zip-fájlokba menti őket egy felhasználó által megadott helyre. Ha az Azure Stack Hub műszaki támogatási csapatának szüksége van a naplókra a probléma elhárításához, megkérhetik, hogy futtassa a Get-AzureStackLogot.

Figyelemfelhívás

Ezek a naplófájlok személyazonosításra alkalmas adatokat (PII) tartalmazhatnak. Ezt vegye figyelembe a naplófájlok nyilvános közzététele előtt.

Az alábbiakban néhány példa naplótípust gyűjtünk:

  • Az Azure Stack Hub üzembehelyezési naplói
  • Windows-eseménynaplók
  • Párducnaplók
  • Fürtnaplók
  • diagnosztikai naplók Storage
  • ETW-naplók

Ezeket a fájlokat a Trace Collector gyűjti és menti egy megosztásba. Get-AzureStackLog ezután szükség esetén összegyűjthetők.