VxRail: Fejlfinding af problemer med VxVerify forud for en VxRail-opgradering
Summary: Løsninger på almindelige problemer, der kan opstå under kørsel af VxVerify for at forhåndskontrollere en Dell VxRail-opgradering.
Symptoms
Denne KB-artikel omhandler fejlfinding af problemer, der forhindrer VxVerify i at køre korrekt.
Der henvises til denne videnartikel fra test, hvor der ikke er en artikel, der er målrettet deres relevante svar (f.eks. Advarsel, Fejl og Kritisk). Et eksempel på dette kunne være en forespørgsel, der returnerer et uventet svar fra en forespørgsel.
VxVerify er designet til at registrere problemer, der kan forårsage komplikationer eller fejl under VxRail-opgraderinger. VxVerify opretter Python-programmer, der kaldes Minions, som sendes til VxRail-noderne. Nedenfor er de typiske testresultater, der kan forventes i vxverify_tests.json:
| Testresultat | Resultatkode | Foreslået handling |
|---|---|---|
| Bestået | 0 | Alle test, der er bestået for denne tilstandstjekkategori:
Der kræves ingen handlinger. |
| Advarsel | 1 | Tilstandstjekket fandt et problem, der bør tages højde for, før opgraderingen påbegyndes.
Følg den relaterede Knowledge Base-artikel for at adressere advarslen (artikelnummeret er angivet som en del af advarslen). |
| Fiasko | 2 | Skal afhjælpes før enhver opgradering.
Gennemse den meddelelse, der er returneret fra denne hændelse, og gennemse derefter vxv.log- og minion-loggen. |
| Kritisk | 3 | Kritisk fejl har forhindret VxVerify i at udføre en relevant test.
Dette kan forhindre yderligere tests i at køre. Gennemse den meddelelse, der er returneret fra denne hændelse, og gennemse derefter vxv.log- og minion-loggen. Se eksemplet i afsnittet Yderligere oplysninger nedenfor. |
| Py_Crash | 3 eller 9 | Denne hændelse opstår, når der er opstået en uhåndteret Python-fejl under udførelse af en test.
Gennemse den meddelelse, der blev returneret fra denne hændelse, og gennemse derefter vxv.log- og minionloggen (se note 1). |
Hvis der opdages et falsk positivt testresultat, skal du indsamle VxVerify-logfilerne og kontakte Dell Support for at åbne en Jira VXV-billet hos VxRail Engineering.
Cause
Der er flere årsager, der kan forhindre VxVerify i at køre korrekt.
- Den mest almindelige årsag til fejl er, at Python-scriptet er udløbet. Hver VxVerify-version er indstillet til kun at vare i to uger fra den dato, hvor den blev udgivet. Dette gælder ikke, når VxVerify køres som et plug-in til VxRail-tilstandskontrolstrukturen (som ændrer VxVerify-funktionaliteten).
- Andre årsager kan være problemer med tilladelser i VxRail Manager eller kommunikationsproblemer med værterne.
- Hvis årsagen til hændelsen er uklar, skal du kontakte Dell Support for at åbne en VXV-billet hos VxRail Engineering.
Resolution
Nedenstående afsnit indeholder instruktioner om, hvordan du indsamler logfiler og foretager fejlfinding, hvis VxVerify ikke kører korrekt.
Logindsamling til supportengagement
Når du engagerer support med VxVerify-relaterede problemer, skal du uploade hele det arkiverede vxv mappe til analyse eller vxverify Log .zip Fil. Aktuelle enkeltstående VxVerify-versioner gemmer en arkiveret fil i /tmp, som har alle de nødvendige resultater og logfiler til analyse.
For eksempel: /tmp/vxverify-c9.zip
Ud over dette .zip fil fra den seneste kørsel af VxVerify, kan op til fem sæt af tidligere logfiler også være til stede i /tmp Mappe. Navnene har det dato- og klokkeslæt, hvor disse blev kørt i filattributterne:
vxv_previous_01.zip
Alternativt kan du køre nedenstående kommando for at arkivere alle relevante filer:
tar cvzf vxverify-2020-12-31.tgz /tmp/vxv/
Fejlfinding
Typiske fejlfindingstrin for at køre VxVerify 2 (til VxRail 4.5, 4.7 og 7.0.000)
- VxVerify har brug for Python for at køre, og kommandolinjen til at køre den er som følger:
python /tmp/vxv/vxverify.pyc
- Hvis der opstår en magisk talfejl , betyder det normalt, at den forkerte version af VxVerify bruges til Python-versionen på VxRM. For eksempel opstår nedenstående fejl, hvis du kører VxVerify 2 på 7.0.320.
RuntimeError: Bad magic number in .pyc file
- For at kontrollere, at den korrekte version af VxVerify anvendes, skal du se artiklen (link nedenfor kræver godkendelse til Dells supportportal):
- VxRail: Sådan køres VxRail Verify-værktøjet (afsnittet VxVerify Releases )
- VxVerify opretter programmer, der kaldes håndlangere, som sendes, køres og hentes ved hjælp af
SSH. HvisSSHkan bruges, selvom det ikke allerede er aktiveret, VxVerify tændesSSHfor hver vært for kommandoerne, der skal køres. Hvis værterne er låst, hvorSSHkan ikke køre, håndlangerne kan ikke køre, og værtstestene returnerer en resultatkode: 2 (Fejl) eller 3 (Kritisk). Hvis dette sker, skal du diskutereSSHtilladelser med administratoren. - VxVerify2 er designet til at køre på Python 2.7, som burde være til stede på VxRM VM og normalt er den eneste tilgængelige Python-version. Hvis der er flere Python-versioner, skal du køre følgende for at teste det (dette har
-hmulighed, som er--help):
python2.7 vxverify.pyc -h
VxVerify skriver logfiler og outputfiler til /tmp/vxv/. Hvis den ikke har tilstrækkelige tilladelser, kan den ikke køre. Kontroller mappetilladelserne med følgende kommandoer. Hvis der ikke er nogen læse-/skrivetilladelser for alle brugere, kan du tilføje disse med chmod (rodtilladelser kan være påkrævet):
$ ls -lad /tmp/vxv drwxrwxrwx 3 mystic users 4096 Oct 1 07:42 vxv
- Hvis der fortsat er fejl i tilladelserne med VxVerify (f.eks. "Tilladelse nægtet for sletning af tidligere logfiler"), kan du prøve at slette
vxvmappe med følgende kommando (root-adgangskoden er nødvendig forsudoadgang). Når du har kørt denne sletningskommando, skal VxVerify installeres igen udelukkende ved hjælp af mystiske tilladelser:
sudo rm -r -d /tmp/vxv
- En anden mulighed er at gemme VxVerify-outputfilerne i en ny mappe. VxVerify opretter træet, hvis det ikke findes, ved hjælp af
-leller--logefterfulgt af den sti, hvor logfilerne skal gemmes. For eksempel:
python vxverify.pyc -l /tmp/vx1
Fejlfinding Forskelle mellem VxVerify2 og VxVerify 3 (til VxRail 7.0.010+)
For VxRail 7.0.010 og nyere skal VxVerify 3 bruges på grund af grundlæggende ændringer i VxRM.
De samme fejlfindingstrin for VxVerify2 gælder også for VxVerify3, undtagen:
- Versionen af Python til VxVerify3 er 3.6.
- Placeringen af de webstedspakker, som VxVerify kræver, ændres, som placeres på en af nedenstående placeringer:
/mystic/telemetry/DCManager/venv/lib/python3.6/site-packages/mystic/radar/venv/lib/python3.6/site-packages
- Hvis begge disse mapper er utilgængelige for den mystiske bruger, giver VxVerify-programmet en fejlmeddelelse om webstedspakkerne og afslutningen.
- En løsning er at bruge root-brugeren.
Timeouts
Hvis minion tager længere tid end 20 minutter at gennemføre, skal VxVerify angive en timeouthændelse i oversigtstabellen.
| Node-name |Critical 66460| minion: Maximum run time for minion exceeded
- Den tilsvarende
vxv.logTilmeldinger til dette er:
2022-10-06 06:42:51-WARNING Creating a fault json for missing minion 2022-10-06 06:42:51-WARNING [fail_minion] Producing result file for lab-esx22, due to: Maximum run time for minion exceeded. See minion logs in /tmp/vxv
- Dette skal kontrolleres ved at se på minionloggen for den pågældende vært for at se, om minionen stødte på en fejl, der fik den til at stoppe, eller om testen fortsatte langsomt, og den løb tør for tid til at fuldføre.
- Hvis en minion fuldføres korrekt, skal følgende være de sidste linjer i loggen:
2022-10-06 06:39:30 INFO Writing to JSON: /tmp/xc882-61f1f3b9-7cb2-130a-35b0-minion.json 2022-10-06 06:39:30 INFO JSON save: os.stat_result(st_mode=33206, st_ino=47144, st_dev=1, st_nlink=1, st_uid=0, st_gid=0, st_size=499562, st_atime=1665038370, st_mtime=1665038370, st_ctime=1665038370) 2022-10-06 06:39:30 DEBUG ESXi minion's work is done.
JSON-filoverførsel fungerer ikke
Hvis værtsminionresultaterne ikke kan overføres ved hjælp af SCP eller SFTP tilbage til VxRM, kan følgende ses på outputtabellen:
| Node-name |Critical 66460| minion: No JSON downloaded from node via SSH
- Den tilsvarende
vxv.logTilmeldinger til dette er:
2022-10-06 06:42:51-WARNING Creating a fault json for missing minion 2022-10-06 06:42:51-WARNING [fail_minion] Producing result file for lab-esx22, due to: No JSON downloaded from node via SSH. See minion logs in /tmp/vxv
- Dette skal kontrolleres ved at se på minionloggen for den pågældende vært for at se, om minionen stødte på en fejl, der fik den til at stoppe, eller om en JSON-fil blev produceret, men ikke kunne tilgås ved hjælp af
SSH. - Hvis en minion fuldføres korrekt, bør følgende være de sidste linjer i loggen, som viser, at en JSON blev gemt i
/tmpMappe på noden:
2022-10-06 06:39:30 INFO Writing to JSON: /tmp/xc882-61f1f3b9-7cb2-130a-35b0-minion.json 2022-10-06 06:39:30 INFO JSON save: os.stat_result(st_mode=33206, st_ino=47144, st_dev=1, st_nlink=1, st_uid=0, st_gid=0, st_size=499562, st_atime=1665038370, st_mtime=1665038370, st_ctime=1665038370) 2022-10-06 06:39:30 DEBUG ESXi minion's work is done.
De anbefalede trin til fejlfinding af ovenstående ville være:
- Hvis du bruger VxVerify3, kan du prøve at køre med
--fixflag, som bruger et alternativSSHMekanisme. Dette kan undgå nogleSSHProblemer med tilladelser. - Angiv en ny sti ved hjælp af
-1(mappen behøver ikke at blive oprettet først), hvilket kan hjælpe, hvis VxRM-tilladelsesfejl forhindrer filoverførslen: - Eksempel:
> python vxv2.pyc -l \tmp\vxv0 - Hvis ovenstående stadig ikke virker, skal du tage et øjebliksbillede af VxRM, før du rydder op i unødvendige filer og mapper i
/tmpog/home/mystic, som dem, der tidligere blev brugt af VxVerify. - Genstart VxRM (VxRail Manager).
Hvis VxVerify støder på en fejl, der ikke kan rettes med ovenstående trin, skal du gemme vxv-logpakken som beskrevet ovenfor og eskalere problemet med Dell Support.
Login- og legitimationsfejl i VxVerify2 og VxVerify3
- VxVerify kræver ingen loginoplysninger for at køre test på VxRM (VxRail Manager) og VxRail-noderne. VxVerify kan få adgang til de krypterede legitimationsoplysninger direkte fra VxRM-databasen og dekrypterer disse, før de bruges. Nogle gange kan der ikke opnås adgang til VC-administrationslegitimationsoplysningerne, og i så fald kan disse legitimationsoplysninger angives i VxVerify-kommandolinjen:
python vxverify.py --verbose -u vxrailmgmt@localos -p ChangeMe1!
- Brugen af nogle specialtegn, der er tilladt af vCenter, kan forårsage problemer for VxRail Manager (især for alle kommandoer, der bruger Linux Shell). Kontroller, at ingen af følgende tegn bruges i adgangskoderne til vCenter eller ESXi-værter:
` $ % / \
- Hvis du er i tvivl om, hvilket brugernavn der bruges til ledelsen, skal du kontakte
vxv.log. For eksempel:
... - DEBUG Users from runtime & settings records: vxrailmgmt@localos & vxrailmgmt@localos
- Test til vCenter ved hjælp af SSH kræver et rodbrugernavn og en adgangskode, som kan angives med
-rog-wmuligheder henholdsvis. vCenter-testene køres kun, hvis disse er angivet (selvom hvis rodbrugerenroot, som er standard, skal kun root-adgangskoden angives). For eksempel:
python vxverify.py --verbose -w R00tPassword!
Additional Information
Eksempler på kritiske testfejl
Disse kan være resultatet af alvorlige fejl, som forhindrer yderligere tests i at blive kørt. Hvis vCenter-administrationsbrugernavnet og -adgangskoden, der er gemt i VxRM, f.eks. ikke er aktuel, mislykkes alle forespørgsler til VC API'en, og der kan ikke køres yderligere test. Eksempler på dette omfatter:
#========================#======#=========#====================================================================#==============# | Hostname / Category |Status Dell_KB | Warnings or Failures, unless tests Passed | Product S.N. | #========================#======#=========#====================================================================#==============# | VxRM | Critical 66460 | vc_external: VC MOB API connection failed .| <- Stored vCenter password rejected | VxRail | Critical 66460 | vxtii_err: Internal DO host query failed. See vxv.log for details in /tmp/vxv .| <- ESXi node data cannot be retrieved from the VxRM config service | _cluster | Critical 66460 | esx_vers: No valid ESXi test results found .| <- No ESXi tests could be run
VxVerify-filer
VxVerify opretter følgende filer i /tmp/vxv/ eller /var/log/mystic/vxv/ (medmindre der er angivet en anden logføringsmappe ved hjælp af -l argument). Disse filer gemmes alle i en enkelt arkivfil i /tmpSåsom /tmp/vxverify-569ae010.zip eller /tmp/vxv_previous_01.zip.
Hvis du kontrollerer disse filer manuelt, kan det hjælpe med at finde problemer på klyngen, selvom VxVerify-scriptet ikke fuldføres helt:
-
vxv.log- (logfil til VxVerify-scriptet) -
minion_hostname.log- (fjernlog for minion-scriptet, der kører på hver vært) -
minion_hostname.txt- (ekstern tekstudgang for hver minion, der viser, hvilket testnummer der er i gang) -
/json/host_uid.json- (fil produceret af hver minion med testresultaterne, som senere flettes sammen med andre værtsdata og derefter slettes) -
vxverify_tests.json- (kombineret output for alle tests, som kan kontrolleres manuelt for at se hvert testresultat) -
vxtii.json- (kombinerede svar fra værter for forespørgsler såsom iDRAC Hardware Inventory) -
vxtii.txt- (rapport, der opsummerer iDRAC- og ESXi-oplysninger for hver node) -
vxverify.txt- (oversigtstabellen, som også vises på skærmen, hvis VxVerify ikke køres uden brugerinput) -
vxverify.html- (kombinerede VxVerify- og VxTii-rapporter i HTML-format) (kun til stede, når du kører VxVerify direkte, i stedet for integreret i tilstandstjek af VxRail Manager)