PowerFlex: GET_INFO – Supportpakkeindsamlingsværktøj

Résumé: "get_info.sh" indsamler diagnosticeringsoplysninger fra en PowerFlex-vært og opretter en komprimeret supportpakke.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

"get_info.sh" [VALGMULIGHEDER]

BESKRIVELSE

"get_info.sh" er et diagnosticeringsværktøj, der indsamler fejlfindingsoplysninger fra en PowerFlex-vært (tidligere ScaleIO). Det arkiverer de indsamlede data i et komprimeret bundt til analyse af supportpersonale.

Forsyningen indsamler data fra flere kilder, herunder:

  • Logfiler, konfiguration og sporing af PowerFlex-komponenter
  • MDM/SCLI-forespørgselsoutput og intern fejlfindingsdump
  • Intern diagnosticering af PowerFlex-komponent
  • Operativsystemkonfiguration, logge og driftstilstand
  • Hardwarelager (storagecontrollere, netværksenheder, NVMe, NVDIMM osv.)
  • Kernedumps (eksisterende og valgfrit genereret efter behov)
  • Diagnostisk dataindsamler ("diag_coll") statistik

Den resulterende pakke er et enkelt komprimeret arkiv (tar/gz som standard), der kan overføres til PowerFlex-support med henblik på yderligere analyse.

Kun én forekomst af "get_info.sh" kan køre på en vært ad gangen. Hvis der ikke er nok ledig plads til outputtet, nægter det at køre (medmindre pladskontrol udtrykkeligt springes over).

INDSTILLINGER

Generelle indstillinger

  • -a, --all
    Indsaml alle data. Dette svarer til at angive "--mdm-repository", "--collect-cores", "--max-cores=2", "--valgrind-cores" og "--analyse-diag-coll."

  • -A, --analyse-diag-coll
    Analysere diagnostiske dataindsamlerdata ("diag coll")

  • -b[COMPONENTS], --collect-cores[=COMPONENTS]
    Saml eksisterende kernedumps til den pladsseparerede liste over bruger-land "KOMPONENTER". Standard (når "COMPONENTS" udelades): Alle komponenter i brugerland

    Bemærk: Der må ikke være mellemrum mellem "-b" og "KOMPONENTER". For den lange form adskilles med =

    Eksempel

    -b'mdm sds'
    --collect-cores='mdm sds'
  • -d OUT_DIR, --output-dir=OUT_DIR
    Gem det resulterende bundt under mappen "OUT_DIR. " Standard: "<WORK_DIR>/scaleio-getinfo" (se "--work-dir").

  • -f, --skip-mdm-login
    Spring forespørgslen om loginoplysninger til PowerFlex MDM over. Nyttigt, når brugeren allerede har logget ind manuelt.

  • -h, --help
    Vis hjælpemeddelelsen, og afslut. Når det kombineres med "--tech", kan du også vise teknikermuligheder.

  • -J, --xz
    Brug formatet "tar/xz" til det indsamlede bundt i stedet for standardformatet "tar/gz". Ignoreres, hvis systemets "tar(1)" ikke understøtter "--use-compress-program" eller "xz(1)" ikke findes.

  • -k NUM, --max-cores=NUM
    Indsaml op til "NUM"-kernefiler fra hver komponent. Standard: Alle kernefiler, indebærer "--collect-cores"

  • -l, --light
    Generer et let bundt. Kun den nyeste generation af nummererede logfiler indsamles, og eksekverbare komponentfiler eller biblioteker medtages ikke ved indsamling af kerner. Brug af denne mulighed reducerer understøttelsen, og dens brug frarådes.

  • -m NUM, --max-traces=NUM
    Indsaml op til "NUM" PowerFlex-sporingsfiler fra hver komponent. Standard: Alle filer

  • -N, --skip-space-check
    Spring bekræftelse af ledig diskplads over før dataindsamling.

  • -P PATH, --collect-path=PATH
    Indsaml den ekstra sti "PATH". Kun absolutte stier accepteres. Accepterer jokertegn; Jokertegn skal angives. Denne indstilling kan angives flere gange for at indsamle flere stier.

  • -q, --quiet, --silent
    Undertryk meddelelser på standardoutput.

  • -r, --mdm-repository
    Indsaml MDM-arkivarkiver.

  • -s, --skip-sdbg
    Spring indsamling af SDBG-output (diagnostisk debugger) over.

  • -S, --pause-core-generation
    Sæt kernegenereringen af PowerFlex-komponenter på pause under dataindsamlingen. Den oprindelige konfiguration gendannes, når indsamlingen er fuldført.

  • -w WORK_DIR, --work-dir=WORK_DIR
    Brug mappen "WORK_DIR" til midlertidige filer. Standard: /tmp.

  • -x FILE, --output-file=FILE
    Opbevar det indsamlede bundt som fil med navnet "FILE". Det relevante filnavnsuffiks (".tgz", ".zip" osv.) tilføjes automatisk. Hvis "FILE" er "-" (bindestreg), skal du skrive bundtet til standardoutput (indebærer "--quiet"). Når et bundt skrives til standardoutput, oprettes der ingen bundtfil på disken. Standard: getInfoDump.

  • -z, --zip
    Brug formatet "zip" til det indsamlede bundt i stedet for standardformatet "tar/gz". Ignoreres, hvis "zip(1)" ikke findes på systemet.

  • --mdm-port=PORT
    Opret forbindelse til MDM ved hjælp af port "PORT" til SCLI-kommandoer. Standard: scli-standardadfærd.

  • --overwrite-output-file
    Overskriv outputfilen, hvis den allerede findes. Når en outputfil eller -mappe udtrykkeligt er angivet (ved hjælp af "-x" eller "-d"), er standardfunktionsmåden at nægte at overskrive. Denne indstilling tilsidesætter dette.

  • --tech
    Medtag teknikerindstillinger i outputtet af hjælpemeddelelsen.

Indstillinger for MDM-login

Følgende indstillinger overføres til SCLI-kommandoen "--login". Deres funktionsmåde og standardværdier styres af SCLI.

  • -n, --use-nonsecure-communication
    Opret forbindelse til MDM i usikker tilstand.

  • -p PASSWORD, --password=PASSWORD
    Brug "PASSWORD" til PowerFlex MDM-login. Standard: SCLI-standardfunktionsmåde

  • -u USERNAME, --username=USERNAME
    Brug "BRUGERNAVN" til PowerFlex MDM-login. Standard: SCLI-standardfunktionsmåde

  • --ldap-authentication
    Log ind på PowerFlex MDM med LDAP-baseret godkendelse.

  • --management-system-ip=ADDRESS
    Opret forbindelse til "SSO/M&O" på "ADDRESS" for at logge på PowerFlex. Standard: SCLI-standardfunktionsmåde

  • --p12-password=PASSWORD
    Krypter PowerFlex-loginfilen "PKCS#12" ved hjælp af "PASSWORD". Standard: SCLI-standardfunktionsmåde

  • --p12-path=FILE
    Gem PowerFlex-logonfilen "PKCS#12" som "FILE." Standard: SCLI-standardfunktionsmåde

Teknikermuligheder

Følgende indstillinger er beregnet til brug af supportteknikere og vises kun i hjælpemeddelelsen, når "--tech" er angivet.

  • -c[COMPONENTS], --generate-cores[=COMPONENTS]
    Generer kernefiler (ved hjælp af "gcore(1)") til de kørende processer på den mellemrumseparerede liste over brugerlandbaserede "KOMPONENTER". Standard: alle brugerjordkomponenter, indebærer "--collect-executables " og kræver "gdb" og "gcore".

    Bemærk: Der må ikke være mellemrum mellem "-c" og "COMPONENTS". For den lange form adskilles med "=."

    Eksempler:

    -c'mdm sds'
    --generate-cores='mdm sds'
  • -C CORE_FILE, --reference-core-file=CORE_FILE
    Indsaml produktlogfiler og -kerner i forhold til det seneste ændringstidspunkt ("mtime") på "CORE_FILE" i stedet for udførelsens starttid. Indebærer "--collect-cores"

  • -E REF_TIME, --event-time=REF_TIME
    Indsaml produktlogfiler og -kerner i forhold til "REF_TIME" i stedet for udførelsens starttidspunkt. Accepterer ethvert format, der forstås ved "dato(1)". Indebærer "--collect-cores."

  • -g[COMPONENTS], --valgrind-cores[=COMPONENTS]
    Saml "valgrind" kernedumps for de angivne brugerland "KOMPONENTER". Standard: alle brugerjordkomponenter. Indebærer "--collect-eksekverbare."

     

    Bemærk: Der må ikke være mellemrum mellem "-b" og "KOMPONENTER". For den lange form adskilles med "="

    Eksempler:

    -g'mdm sds'
    --valgrind-cores='mdm sds'
  • -t MIN, --minutes-before-event=MIN
    Indsaml produktlogfiler og -kerner, der er genereret op til "MIN" minutter før referencetidspunktet. Standard: 15

  • -T MIN, --minutes-after-event=MIN
    Indsaml produktlogfiler og -kerner, der er genereret op til "MIN" minutter efter referencetidspunktet. Standard: 5

  • -X[COMPONENTS], --collect-executables[=COMPONENTS]
    Indsaml eksekverbare komponentfiler og deres delte biblioteker for det angivne brugerland "KOMPONENTER". Standard: Alle komponenter i brugerland

    Bemærk: Der må ikke være mellemrum mellem "-b" og "KOMPONENTER". For den lange form adskilles med "="

    Eksempler:

    -X'mdm sds'
    --collect-executables='mdm sds'
  • --keep-work-dir
    Behold den genererede midlertidige arbejdsmappe efter oprettelse af pakken (ryddes op automatisk).

BUNDTSTRUKTUR

Outputbundtet er et enkelt komprimeret arkiv.

  • Bundtbiblioteket på øverste niveau er værtsnavnet for det indsamlede system.
  • Generelle værtskommandooutput går ind i en "server/" undermappe.
    Filnavnet er "<kommando> + <argumenter> + suffiks (.txt som standard). " Mellemrum erstattet med "_", ikke-alfanumeriske tegn fjernet
    Eksempel: server/ip_-s_addr.txt - output af "ip -s addr"
  • Produktkommandooutput går ind i komponentens undermappe. "mdm/" for "scli", "sdc/" for "drv_cfg" osv.
    Kommandonavnet ("scli", "drv_cfg" osv.) er fjernet. Det første meningsfulde argument bliver filnavnet. Filer tildeles som standard som det relevante suffiks, ".txt".
    Eksempler:
    • mdm/query_cluster.txt - output af "scli --query_cluster"
    • mdm/tgt_dump.txt - output af "scli --debug_action --tgt_dump"
    • sdc/query_mdms.txt - output af "drv_cfg --query_mdms"
    • sds/sdbg.txt - output af SDBG "dumpallscreens" til SDS
  • Produktkomponentfiler (i modsætning til kommandooutput), "<component>/cfg", "<component>/logs" osv
    . Kopieret fra komponentens mappe med præfikset fjernet.
    Eksempler:
    • mdm/cfg/conf.txt - kopi af "/opt/emc/scaleio/mdm/cfg/conf.txt"
    • sds/logs/trc.0 - kopi af "/opt/emc/scaleio/sds/logs/trc.0"
  • Værtsfilsystemfiler placeres på deres filsystemsti i forhold til bundtroden.
    Eksempler:
    • etc/os-release - kopi af "/etc/os-release"
    • var/log/messages - kopi af "/var/log/messages"
    • proc/cpuinfo - kopi af "/proc/cpuinfo"
  • Diagnostisk collector-filer (diag_coll) kopieres med præfikset "/opt" fjernet, så den interne struktur bevares.
    Eksempel: diag_coll/logs/sar.0 - kopi af "/opt/diag_coll/logs/sar.0"
  • Skjulte filer (punktum-præfiks) "skjules" ved at fjerne den førende prik.
  • Utility udførelse log, get_info_run.log, placeret direkte under værtsnavnet>/roden <

Bundtmappetræstruktur:

<hostname>/
|-- get_info_run.log                   Utility execution log
|-- server/                            General command output directory
|   |-- ip_-s_addr.txt
|   |-- uptime.txt
|   |-- uname_-a.txt
|   |-- ps_-elF.txt
|   |-- dmesg.txt
|   +-- ...                            (one file per collected command)
|
|-- mdm/                               PowerFlex component data (if installed)
|   |-- cfg/                           Configuration files (excl. PEM)
|   |-- logs/                          Trace and log files
|   |-- rep/                           Repository (if --mdm-repository)
|   |-- query_all.txt                  SCLI query outputs
|   |-- sdbg.txt                       SDBG screen dumps
|   +-- ...
|-- sds/
|-- pds/  
|-- dgwt/
|-- sdr/
|-- sdt/
|-- lia/
|-- sdc/
|-- gateway/
|
|-- diag_coll/                         Diagnostic data collector (if installed)
|   |-- logs/
|   |-- cfg/
|   +-- ...
|
|-- etc/                               Host files
|   |-- os-release
|   |-- sysconfig/
|   |-- network/
|   +-- ...
|-- var/
|   |-- log/
|   |   |-- messages
|   |   +-- ...
|   +-- ...
|-- proc/
|   |-- cpuinfo
|   |-- meminfo
|   +-- ...
|-- sys/
|-- ...
|
|-- scaleio-getinfo-extra/        Extra diagnostic data (if present)
+-- scaleio-getinfo-backup/       Backed-up configuration files (if any)

FILTRERING AF PRODUKTLOG OG KERNEFILER

De indstillinger, der er beskrevet i dette afsnit, styrer, hvordan produktlogfiler (også kaldet sporingsfiler, f.eks. "trc.0", "trc.1", "exp.0") og centrale dumpfiler vælges til medtagelse i den indsamlede pakke. De gør det ved at definere en referencetid, et tidsvindue omkring det og tællegrænser.

Når der ikke er angivet nogen filtreringsindstillinger, indsamles alle produktlogfiler og (hvis kerneindsamling er aktiveret) alle centrale dumpfiler. Filtreringsindstillingerne indsnævrer gradvist dette valg som beskrevet nedenfor.

Referencetidspunkt
Et referencetidspunkt kan indstilles ved hjælp af enten "-E/--event-time" eller "-C/--reference-core-file".

Hvis hverken "--event-time" eller "--reference-core-file" er angivet, udføres der ingen filtrering af tidsvinduet: referencetidspunktet er som standard det aktuelle tidspunkt og bruges kun til nærhedsbaseret rækkefølge, når en tællegrænse ("-m" eller "-k") er i kraft (se Tællegrænser nedenfor).

Hvis både "-E" og "-C" vises, træder det sidste element på kommandolinjen i kraft.

Tidsvindue
Når der indstilles et referencetidspunkt (ved hjælp af "--event-time" eller "--reference-core-file"), oprettes der et tidsvindue omkring det. Tidsvinduets omfang kan indstilles ved hjælp af "-t/--minutes-before-event" og eller "-T/--minutes-after-event", der som standard er henholdsvis 15 og 5 minutter. Kun filer, hvis indhold overlapper dette vindue, kan indsamles.

For eksempel indsamler "-E "2020-03-20 14:30" -t 10 -T 3" filer, der dækker perioden 14:20:00 til 14:33:00.

"--minutes-before-event" og "--minutes-after-event" ignoreres, når hverken "--event-time" eller "--reference-core-file" er angivet.

Grænser for
antalEn grænse for filantal kan indstilles ved hjælp af "-m/--max-traces" og "-k/--max-cores" for henholdsvis logfiler og kernefiler. Grænsen måles pr. komponent.

Når flere filer end NUM falder inden for tidsvinduet (eller er tilgængelige, hvis intet vindue er aktivt), indsamles de NUM-filer , der er tættest på referencetidspunktet.

Når der bruges en optællingsgrænse uden "--event-time" eller "--reference-core-file", er alle filer kandidater (intet tidsvindue), og de seneste NUM-filer vælges.

Filtreringslogik
Filfiltrering gælder først for tidsvinduet og derefter for tællegrænsen:

  1. Opret kandidater. Alle produktlogfiler og/eller kernedumpfiler for en komponent tælles.
  2. Udlede indholdsperiode. Produktlogfilernes indhold repræsenterer et punktum. Indholdsperioden anses for at starte ved forgængerens sidste ændringstid ("mtime") eller UNIX-epoken, når der ikke findes nogen forgænger; Det slutter ved filens egen "mtime". Kernedumpfiler repræsenterer et tidspunkt på filens "mtime".
  3. Anvend tidsvindue (hvis "-E" eller "-C" er angivet). Filer, hvis indhold falder helt uden for vinduet, kasseres fra markeringen. For produktlogfiler, hvis der ikke er nogen fil i vinduet, bevares den enkelte fil, der er tættest på vinduet, så bundtet aldrig er tomt for en komponent. For centrale dumpfiler gælder ingen sådan fallback.
  4. Anvend tællegrænse (hvis "-m" og eller "-k" er angivet). Blandt de resterende filer vælges højst "NUM", og foretrækker dem, der er tættest på referencetiden. Filer før og efter referencetidspunktet konkurrerer ligeligt om valg.

GODKENDELSE

Hjælpeprogrammet forsøger at logge ind på den lokale MDM, hvis der registreres en primær MDM-proces, der lytter på den forventede port (standard: 6611)

MDM-loginmuligheder overføres til SCLI-kommandoen "--login" og behandles af den.

Hvis login mislykkes, afsluttes værktøjet med en fejl.

Når login springes over, forsøges SCLI-kommandoer stadig (for at understøtte scenarier, hvor brugeren har logget på manuelt på forhånd). Efter tre SCLI-fejl vises en advarsel, og alle yderligere SCLI-kommandoer springes over.

Login springes over, når:

  • Der findes ingen primær MDM-proces på den lokale vært.
  • Indstillingen "--skip-mdm-login" er angivet.

Login mislykkes , når:

  • MDM-procesejeren er ikke på listen over autoriserede brugere (standard: "rod"), og sikker log ind er slået til.
  • Kommandoen SCLI "--login" returnerer en fejl (f.eks. forkerte legitimationsoplysninger).

DISKPLADS

Krav til diskplads til midlertidige filer og den resulterende pakke kan variere betydeligt.

Værktøjet forsøger at minimere midlertidigt pladsforbrug; Den er begrænset til kommandooutput og kopier af indsamlede Virtual File System-filer ("/proc" og "/sys").

Pakken kan streames fra en fjernvært med "--output-file=-" for at minimere diskpladsforbruget på PowerFlex-værten. Bundtfilen skrives direkte til standardoutput ("stdout") ved streaming; Den er ikke oprettet på disken.

Værktøjet estimerer den nødvendige diskplads til både den midlertidige arbejdsmappe og outputbundtet, før der indsamles data.

Hvis den estimerede krævede plads overstiger den ledige plads på de relevante filsystemer, afsluttes værktøjet med en fejl. Denne kontrol kan omgås med "--skip-space-check."

Arbejdsmappen og outputmappen kan være placeret på forskellige filsystemer; Hver kontrolleres uafhængigt.

De anslåede pladsbehov skrives til forsyningsselskabets logfil, "get_info_run.log."

STATUS FOR AFSLUTNING

0 Fuldført
1 Fejl (ugyldige argumenter, utilstrækkelig plads, loginfejl, en anden forekomst, der allerede kører, fejl ved generering af bundt, fanget signal osv.)

FILER

<WORK_DIR>/get_info_run.log Udførelseslog (også i bundtet)
<WORK_DIR>/scaleio-getinfo-tmp/ Midlertidig arbejdsmappe (ryddet op efter succes)
/tmp/scaleio-getinfo/getInfoDump.tgz Standardplacering for outputpakke
<WORK_DIR>/scaleio-getinfo-extra/
/tmp/scaleio-getinfo-extra/
Valgfri ekstra diagnostiske datamapper
/tmp/scaleio-getinfo-backup/ Midlertidige sikkerhedskopier af ændrede konfigurationsfiler (automatisk oprettet)
/opt/emc/scaleio/ PowerFlex – Installationsmappe

MILJØ

Forudsætninger

  • Hjælpeprogrammet skal køres som "root" (eller en bruger med tilstrækkelige rettigheder til at læse komponentfiler, køre diagnosticeringskommandoer og få adgang til "/proc", "/sys" osv.).
  • Standard hjælpeprogrammer: tar, gzip, stat, find, awk, sed, getopt(1) (udvidet) nice.
  • Valgfrit: zip (for "--zip") xz (for "--xz") gdb/gcore (for "--generate-cores")

Samtidighed
Kun én forekomst af "get_info.sh" må køre ad gangen. Hjælpeprogrammet søger efter en eksisterende kørende forekomst ved hjælp af "pidof(1)" og afsluttes, hvis der findes en forekomst.

Signalhåndtering
Hjælpeprogrammet fanger signalerne "INT", "EXIT" og "TERM" under dataindsamlingen. Ved modtagelse af et signal:

  1. Gendanner alle sikkerhedskopierede konfigurationsfiler (f.eks. indstillinger for kernegeneration).
  2. Rydder op i midlertidige mapper
  3. Afslut med status 1

Udførelsesloggen bevares, og dens sti udskrives til standardfejl.

Eksempler
Saml en standardsupportpakke:

get_info.sh

Stream et bundt via en SSH-forbindelse uden at oprette en pakkefil på den eksterne PowerFlex-vært:

ssh <host> 'get_info.sh --output-file=-' > getInfoDump-<host>.tgz

Brug en anden arbejdsmappe for at undgå at udfylde "/tmp":

get_info.sh --work-dir=/var/tmp

Medtag tilpassede stier i bundtet:

get_info.sh --collect-path=/opt/custom/app/logs --collect-path='/var/log/app*'

Indsaml kun den nyeste kernedump for SDS- og MDM-komponenterne:

get_info.sh --collect-cores='mdm sds' --max-cores=1

Indsaml data centreret omkring en kernefils ændringstid med et brugerdefineret tidsvindue:

get_info.sh --reference-core-file=/opt/emc/scaleio/sds/bin/core.1000 \
            --minutes-before-event=10 \  
            --minutes-after-event=2

 

Produits concernés

PowerFlex rack, ScaleIO
Propriétés de l’article
Numéro d’article: 000455324
Type d’article: How To
Dernière modification: 15 sept. 2026
Version:  4
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.