PowerFlex: GET_INFO – nástroj pro balíček podpory

Summary: Nástroj get_info.sh shromažďuje diagnostické informace z hostitele PowerFlex a vytváří komprimovaný balíček podpory.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

"get_info.sh" [MOŽNOSTI]

POPIS

get_info.sh je diagnostický nástroj, který shromažďuje informace o ladění z hostitele PowerFlex (dříve ScaleIO). Archivuje shromážděná data do komprimovaného balíčku pro analýzu pracovníky podpory.

Nástroj shromažďuje data z více zdrojů, včetně:

  • Protokoly, konfigurace a trasovací soubory komponent PowerFlex
  • Výstupy dotazů MDM/SCLI a interní výpis výpisu ladění
  • Interní diagnostika komponent PowerFlex
  • Konfigurace operačního systému, protokoly a stav modulu runtime
  • Inventarizace hardwaru (řadiče úložiště, síťová zařízení, NVMe, NVDIMM atd.)
  • Výpisy paměti jádra (existující a volitelně generované na vyžádání)
  • Statistika shromažďování diagnostických dat ("diag_coll")

Výsledný balíček je jeden komprimovaný archiv (ve výchozím nastavení tar/gz), který lze přenést do podpory PowerFlex k další analýze.

V daném okamžiku může být na hostiteli spuštěna pouze jedna instance "get_info.sh". Pokud není dostatek volného místa pro jeho výstup, odmítne se spustit (pokud není kontrola místa explicitně přeskočena).

MOŽNOSTI

Obecné možnosti

  • -a, --all
    Shromážděte všechna data. To odpovídá zadání "--mdm-repository", "--collect-cores", "--max-cores=2", "--valgrind-cores" a "--analyse-diag-coll".

  • -A, --analyse-diag-coll
    Analýza dat kolektoru diagnostických dat ("diag coll")

  • -b[COMPONENTS], --collect-cores[=COMPONENTS]
    Shromážděte existující výpisy jádra pro prostorově oddělený seznam "KOMPONENT" území uživatele. Výchozí (když je "COMPONENTS" vynecháno): Všechny komponenty uživatelské půdy

    Poznámka: Mezi "-b" a "COMPONENTS" nesmí být mezera. Dlouhou formu oddělte znakem =

    Příklad

    -b'mdm sds'
    --collect-cores='mdm sds'
  • -d OUT_DIR, --output-dir=OUT_DIR
    Uložte výsledný balíček do adresáře "OUT_DIR. " Výchozí: "<WORK_DIR>/scaleio-getinfo" (viz "--work-dir").

  • -f, --skip-mdm-login
    Přeskočte dotaz na přihlašovací údaje PowerFlex MDM. Užitečné, pokud se uživatel již přihlásil ručně.

  • -h, --help
    Zobrazte zprávu nápovědy a ukončete operaci. V kombinaci s "--tech" zobrazí také možnosti technika.

  • -J, --xz
    Pro shromážděný balíček použijte formát "tar/xz" namísto výchozího formátu "tar/gz". Ignoruje se, pokud systémový "tar(1)" nepodporuje "--use-compress-program" nebo "xz(1)" není nalezen.

  • -k NUM, --max-cores=NUM
    Shromážděte až "NUM" soubory jádra z každé komponenty. Výchozí: Všechny soubory jádra, implikuje "--collect-cores"

  • -l, --light
    Vygenerujte lehký svazek. Shromažďuje se pouze nejnovější generace očíslovaných souborů protokolu a spustitelné soubory nebo knihovny komponent nejsou součástí shromažďování jader. Použití této možnosti snižuje možnosti podpory a její použití se nedoporučuje.

  • -m NUM, --max-traces=NUM
    Shromážděte až "NUM" trasovacích souborů PowerFlex z každé komponenty. Výchozí: Všechny soubory

  • -N, --skip-space-check
    Přeskočí ověření volného místa na disku před sběrem dat.

  • -P PATH, --collect-path=PATH
    Shromážděte další cestu "PATH". Přípustné jsou pouze absolutní cesty. Přijímá zástupné znaky; Zástupné znaky by měly být v uvozovkách. Tuto možnost lze zadat vícekrát, chcete-li shromáždit více cest.

  • -q, --quiet, --silent
    Potlačí zprávy na standardním výstupu.

  • -r, --mdm-repository
    Shromážděte soubory úložiště MDM.

  • -s, --skip-sdbg
    Přeskočit sběr výstupu SDBG (diagnostický debugger).

  • -S, --pause-core-generation
    Pozastavení generování jádra komponent PowerFlex během sběru dat. Po dokončení shromažďování se obnoví původní konfigurace.

  • -w WORK_DIR, --work-dir=WORK_DIR
    Pro dočasné soubory použijte adresář "WORK_DIR". Výchozí hodnota: /tmp.

  • -x FILE, --output-file=FILE
    Uložte shromážděný balíček jako soubor s názvem "FILE". Příslušná přípona názvu souboru (".tgz", ".zip" atd.) se přidá automaticky. Pokud je "FILE" "-" (pomlčka), zapište balíček na standardní výstup (implikuje "--quiet"). Když balíček zapíšete na standardní výstup, nevytvoří se na disku žádný soubor balíčku. Výchozí: getInfoDump.

  • -z, --zip
    Pro shromážděný balíček použijte formát "zip" namísto výchozího formátu "tar/gz". Ignoruje se, pokud "zip(1)" není v systému nalezen.

  • --mdm-port=PORT
    Připojte se k MDM pomocí portu "PORT" pro příkazy SCLI. Výchozí hodnota: výchozí chování scli.

  • --overwrite-output-file
    Přepište výstupní soubor, pokud již existuje. Pokud je výstupní soubor nebo adresář explicitně zadán (pomocí "-x" nebo "-d"), výchozím chováním je odmítnutí přepsání; Tato možnost to přepíše.

  • --tech
    Do výstupu zprávy nápovědy zahrňte možnosti technika.

Volby přihlášení do MDM

Příkazu SCLI "--login" jsou předány následující možnosti. Jejich chování a výchozí hodnoty se řídí SCLI.

  • -n, --use-nonsecure-communication
    Připojte se ke službě MDM v nezabezpečeném režimu.

  • -p PASSWORD, --password=PASSWORD
    Pro přihlášení do PowerFlex MDM použijte "PASSWORD". Výchozí: Výchozí chování SCLI

  • -u USERNAME, --username=USERNAME
    Pro přihlášení do PowerFlex MDM použijte "USERNAME". Výchozí: Výchozí chování SCLI

  • --ldap-authentication
    Přihlaste se do PowerFlex MDM pomocí ověřování založeného na protokolu LDAP.

  • --management-system-ip=ADDRESS
    Pro přihlášení do systému PowerFlex se připojte k "SSO/M&O" na adrese "ADDRESS". Výchozí: Výchozí chování SCLI

  • --p12-password=PASSWORD
    Zašifrujte přihlašovací soubor "PKCS#12" systému PowerFlex pomocí "PASSWORD". Výchozí: Výchozí chování SCLI

  • --p12-path=FILE
    Uložte přihlašovací soubor "PKCS#12" do systému PowerFlex jako "FILE". Výchozí: Výchozí chování SCLI

Možnosti technika

Následující možnosti jsou určeny pro techniky podpory a jsou zobrazeny ve zprávě nápovědy pouze v případě, že je zadán "--tech".

  • -c[COMPONENTS], --generate-cores[=COMPONENTS]
    Vygenerujte soubory jádra (pomocí "gcore(1)") pro běžící procesy seznamu "KOMPONENT" oddělených mezerami. Výchozí: všechny komponenty user-land, implikuje "--collect-executables" a vyžaduje "gdb" a "gcore".

    Poznámka: Mezi "-c" a "COMPONENTS" nesmí být mezera. Dlouhou formu oddělte znakem "=".

    Příklady:

    -c'mdm sds'
    --generate-cores='mdm sds'
  • -C CORE_FILE, --reference-core-file=CORE_FILE
    Shromažďujte protokoly a jádra produktů vzhledem k času poslední změny ("mtime") "CORE_FILE" namísto času zahájení. Implikuje "--collect-cores"

  • -E REF_TIME, --event-time=REF_TIME
    Shromažďujte protokoly a jádra produktů vzhledem k "REF_TIME" namísto času spuštění. Přijímá libovolný formát srozumitelný pomocí "date(1)". Implikuje "--collect-cores".

  • -g[COMPONENTS], --valgrind-cores[=COMPONENTS]
    Shromážděte výpisy jádra "valgrind" pro zadané "COMPONENTS" území uživatele. Výchozí: všechny komponenty uživatelské krajiny. Implikuje "--collect-executables".

     

    Poznámka: Mezi "-b" a "COMPONENTS" nesmí být mezera. Dlouhou formu oddělte znakem "="

    Příklady:

    -g'mdm sds'
    --valgrind-cores='mdm sds'
  • -t MIN, --minutes-before-event=MIN
    Shromažďujte protokoly produktů a jádra vygenerovaná až do "MIN" minut před referenčním časem. Výchozí hodnota: 15

  • -T MIN, --minutes-after-event=MIN
    Shromažďujte protokoly produktů a jádra vygenerovaná do "MIN" minut po referenčním čase. Výchozí hodnota: 5

  • -X[COMPONENTS], --collect-executables[=COMPONENTS]
    Shromážděte spustitelné soubory komponent a jejich sdílené knihovny pro zadanou zemi uživatele "COMPONENTS". Výchozí: Všechny komponenty uživatelské krajiny

    Poznámka: Mezi "-b" a "COMPONENTS" nesmí být mezera. Dlouhou formu oddělte znakem "="

    Příklady:

    -X'mdm sds'
    --collect-executables='mdm sds'
  • --keep-work-dir
    Po vytvoření sady se zachová vygenerovaný dočasný pracovní adresář (automaticky se vyčistí).

STRUKTURA SVAZKU

Výstupní balíček je jeden komprimovaný archiv.

  • Adresář nejvyšší úrovně balíčku je název hostitele shromážděného systému.
  • Obecné výstupy hostitelských příkazů směřují do podadresáře
    "server/".Název souboru je "<příkaz> + <argumenty> + přípona (ve výchozím nastavení .txt). " Mezery nahrazeny znakem "_", nealfanumerické znaky jsou odstraněny
    Příklad: server/ip_-s_addr.txt - výstup "ip -s addr"
  • Výstupy příkazů produktu přecházejí do podadresáře komponenty. "mdm/" pro "scli", "sdc/" pro "drv_cfg" atd.
    Název příkazu ("scli", "drv_cfg" atd.) je odstraněn. Prvním smysluplným argumentem se stane název souboru. Soubory jsou ve výchozím nastavení přiřazeny jako příslušná přípona ".txt".
    Příklady:
    • mdm/query_cluster.txt - výstup příkazu "scli --query_cluster"
    • mdm/tgt_dump.txt - výstup příkazu "scli --debug_action --tgt_dump"
    • sdc/query_mdms.txt - výstup příkazu "drv_cfg --query_mdms"
    • sds/sdbg.txt - výstup SDBG "dumpallscreens" pro SDS
  • Soubory komponent produktu (na rozdíl od výstupů příkazů), "<component>/cfg", "<component>/logs" atd
    . Zkopírováno z adresáře komponenty s odstraněnou předponou.
    Příklady:
    • mdm/cfg/conf.txt - Kopie příkazu "/opt/emc/scaleio/mdm/cfg/conf.txt"
    • sds/logs/trc.0 Kopie příkazu "/opt/emc/scaleio/sds/logs/trc.0"
  • Hostitelské soubory systému souborů jsou umístěny v cestě systému souborů vzhledem ke kořenovému adresáři balíčku.
    Příklady:
    • etc/os-release - kopie souboru "/etc/os-release"
    • var/log/messages - kopie souboru "/var/log/messages"
    • proc/cpuinfo - Kopie příkazu "/proc/cpuinfo"
  • Soubory kolektoru diagnostiky (diag_coll) jsou zkopírovány s odstraněnou předponou "/opt", čímž se zachová vnitřní struktura.
    Příklad: diag_coll/logs/sar.0 - kopie příkazu "/opt/diag_coll/logs/sar.0"
  • Skryté soubory (s tečkovou předponou) jsou "neskryté" odstraněním úvodní tečky.
  • Protokol spuštění nástroje, get_info_run.log, umístěné přímo pod názvem> hostitele nebo kořenovým adresářem <

Stromová struktura adresáře balíčku:

<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)

FILTROVÁNÍ PROTOKOLŮ PRODUKTŮ A ZÁKLADNÍCH SOUBORŮ

Možnosti popsané v této části určují, jakým způsobem jsou soubory protokolu produktu (označované také jako soubory trasování, například "trc.0", "trc.1", "exp.0") a soubory výpisu jádra vybrány pro zahrnutí do shromážděné sady. Dělají to tak, že definují referenční čas, časové okno kolem něj a limity počtu.

Pokud nejsou zadány žádné možnosti filtrování, shromáždí se všechny soubory protokolu produktu a (pokud je shromažďování jádra povoleno) všechny soubory výpisu jádra. Možnosti filtrování tento výběr postupně zužují, jak je popsáno níže.

Referenční čas
Referenční čas lze nastavit pomocí "-E/--event-time" nebo "-C/--reference-core-file".

Pokud není zadáno ani "--event-time" ani "--reference-core-file", neprovede se žádné filtrování časového intervalu: referenční čas je ve výchozím nastavení aktuální čas a používá se pouze pro řazení na základě blízkosti, pokud platí limit počtu ("-m" nebo "-k") (viz Limity počtu níže).

Pokud se zobrazí "-E" i "-C", projeví se poslední položka v příkazovém řádku.

Časové okno
Když je nastaven referenční čas (pomocí "--event-time" nebo "--reference-core-file"), vytvoří se kolem něj časové okno. Rozsah časového intervalu je možné nastavit pomocí "-t/--minutes-before-event" a nebo "-T/--minutes-after-event", což je výchozí hodnota 15 a 5 minut. Kolekce je možná pouze u souborů, jejichž obsah se překrývá s tímto oknem.

Například "-E "2020-03-20 14:30" -t 10 -T 3" shromažďuje soubory pokrývající období 14:20:00 až 14:33:00.

Hodnoty "--minutes-before-event" a "--minutes-after-event" jsou ignorovány, pokud není zadán parametr "--event-time" ani "--reference-core-file".

Limity
počtuLimit počtu souborů lze nastavit pomocí "-m/--max-traces" a "-k/--max-cores" pro soubory protokolu a soubory jádra. Mezní hodnota se měří na každou součást.

Pokud do časového intervalu spadá více souborů než NUM (nebo jsou k dispozici, pokud není aktivní žádné okno), shromáždí se soubory NUM , které jsou nejblíže referenčnímu času.

Při použití limitu počtu bez "--event-time" nebo "--reference-core-file" jsou kandidáty všechny soubory (bez časového intervalu) a vyberou se nejnovější soubory NUM .

Logika
filtrováníFiltrování souborů se nejprve vztahuje na časové období a pak na limit počtu:

  1. Stanovte kandidáty. Jsou uvedeny všechny soubory protokolu produktu nebo soubory výpisu jádra pro komponentu.
  2. Odvodit období obsahu. Obsah souborů protokolu produktu představuje období. Má se za to, že období obsahu začíná v čase poslední změny předchůdce ("mtime") nebo v epoše systému UNIX, kdy žádný předchůdce neexistuje; Končí na vlastním "mtime" souboru. Soubory výpisu jádra představují bod v čase "mtime" souboru.
  3. Použijte časový interval (pokud je zadáno "-E" nebo "-C"). Soubory, jejichž obsah spadá zcela mimo okno, jsou z výběru vypuštěny. U souborů protokolu produktu platí, že pokud do okna nespadá žádný soubor, zachová se jediný soubor, který je oknu nejblíže, takže sada není pro komponentu nikdy prázdná. U souborů výpisu jádra se žádná taková záloha nepoužije.
  4. Použije limit počtu (pokud je zadáno "-m" nebo "-k"). Mezi zbývajícími soubory jsou vybrány maximálně "NUM", přičemž se upřednostňují ty, které jsou nejblíže referenčnímu času. Soubory před a po referenčním čase soutěží o výběr rovnoměrně.

OVĚŘOVÁNÍ

Nástroj se pokusí přihlásit k místnímu uzlu MDM, pokud je zjištěn primární proces MDM naslouchající na očekávaném portu (výchozí: 6611)

Možnosti přihlášení do MDM jsou předány příkazu SCLI "--login" a jsou jím zpracovány.

Pokud se přihlášení nezdaří, nástroj se ukončí s chybou.

I když dojde k přeskočení přihlášení, stále se konají pokusy o příkazy SCLI (kvůli podpoře scénářů, kdy se uživatel předtím přihlásil ručně). Po třech selháních SCLI se zobrazí varování a všechny další příkazy SCLI se přeskočí.

Přihlášení je přeskočeno , když:

  • Na místním hostiteli nebyl nalezen žádný primární proces MDM.
  • Zadá se možnost "--skip-mdm-login".

Přihlášení se nezdaří v následujících případech:

  • Vlastník procesu MDM není v seznamu autorizovaných uživatelů (výchozí: "root") a je povoleno zabezpečené přihlášení.
  • Příkaz SCLI "--login" vrátí chybu (například nesprávné přihlašovací údaje).

MÍSTO NA DISKU

Požadavky na místo na disku pro dočasné soubory a výsledný balíček se mohou značně lišit.

Nástroj se pokouší minimalizovat dočasné využití místa; Je omezen na výstupy příkazů a kopie shromážděných souborů systému souborů "/proc" a "/sys").

Balíček lze streamovat ze vzdáleného hostitele pomocí příkazu "--output-file=-", aby se minimalizovalo využití místa na disku v hostiteli PowerFlex. Soubor balíčku se při streamování zapisuje přímo do standardního výstupu ("stdout"); Není vytvořen na disku.

Nástroj před shromážděním dat odhadne požadované místo na disku pro dočasný pracovní adresář i výstupní balíček.

Pokud odhadované požadované místo překročí dostupné místo v příslušných systémech souborů, nástroj se ukončí s chybou. Tuto kontrolu lze obejít příkazem "--skip-space-check".

Pracovní adresář a výstupní adresář mohou být umístěny v různých souborových systémech; Každý z nich je kontrolován nezávisle.

Odhadované požadavky na místo se zapíšou do souboru protokolu "get_info_run.log".

STAV UKONČENÍ

0 Úspěšné dokončení
1 Chyba (neplatné argumenty, nedostatek místa, selhání přihlášení, již spuštěná jiná instance, selhání generování balíčku, zachycený signál atd.)

SOUBORY

<WORK_DIR>/get_info_run.log Protokol spuštění (také v balíčku)
<WORK_DIR>/scaleio-getinfo-tmp/ Dočasný pracovní adresář (vyčištěn při úspěchu)
/tmp/scaleio-getinfo/getInfoDump.tgz Výchozí umístění výstupního balíčku
<WORK_DIR>/scaleio-getinfo-extra/
/tmp/scaleio-getinfo-extra/
Volitelné dodatečné adresáře diagnostických dat
/tmp/scaleio-getinfo-backup/ Dočasné zálohy upravených konfiguračních souborů (automaticky vytvořené)
/opt/emc/scaleio/ Instalační adresář PowerFlex

PROSTŘEDÍ

Požadavky

  • Nástroj je nutné spustit jako uživatel "root" (nebo uživatel s dostatečnými oprávněními ke čtení dílčích souborů, diagnostickým příkazům a přístupu k adresářům "/proc", "/sys" atd.).
  • Standardní nástroje: tar, gzip, stat, find, awk, sed, getopt(1) (vylepšeno), nice.
  • Volitelné: zip (pro "--zip"), xz (pro "--xz"), gdb/gcore (pro "--generate-cores")

Souběžnost
V jednom okamžiku může být spuštěna pouze jedna instance "get_info.sh". Nástroj zkontroluje existující spuštěnou instanci pomocí "pidof(1)" a ukončí se, pokud je instance nalezena.

Manipulace se signálem
Nástroj během sběru dat zachytí signály "INT", "EXIT" a "TERM". Po přijetí signálu:

  1. Obnoví všechny zálohované konfigurační soubory (například nastavení generování jádra).
  2. Vyčistí dočasné adresáře.
  3. Ukončení se stavem 1

Protokol spuštění je zachován a jeho cesta je vytištěna na standardní chybu.

Příklady
Shromážděte standardní balíček podpory:

get_info.sh

Streamování balíčku přes připojení SSH bez vytvoření souboru balíčku na vzdáleném hostiteli PowerFlex:

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

Použijte jiný pracovní adresář, abyste se vyhnuli zaplnění "/tmp":

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

Zahrnutí vlastních cest do balíčku:

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

Shromážděte nejnovější výpis jádra pouze pro komponenty SDS a MDM:

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

Shromažďujte data soustředěná kolem času úprav základního souboru s vlastním časovým intervalem:

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

 

Affected Products

PowerFlex rack, ScaleIO
Article Properties
Article Number: 000455324
Article Type: How To
Last Modified: 15 Sept 2026
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.