PowerFlex: GET_INFO – Support Bundle Collection Utility
Yhteenveto: get_info.sh - Kerää diagnostiikkatiedot PowerFlex-isännästä ja pakkaa ne tukipakettiin
Ohjeet
get_info.sh [VAIHTOEHDOT]
KUVAUS
get_info.sh on diagnostiikka-apuohjelma, joka kerää virheenkorjaustietoja PowerFlex-isännästä (aiemmin ScaleIO) ja arkistoi ne pakattuun pakettiin tukihenkilöstön analysoitavaksi.
Apuohjelma kerää tietoja useista lähteistä, mukaan lukien:
- PowerFlexin osalokit, kokoonpano- ja jäljitystiedostot
- MDM-/SCLI-kyselyjen tulokset ja sisäiset virheenkorjausvedokset
- PowerFlex-komponentin sisäinen diagnostiikka
- Käyttöjärjestelmän kokoonpano, lokit ja suorituksenaikainen tila
- Laitteistoinventaario (tallennusohjaimet, verkkolaitteet, NVMe, NVDIMM jne.)
- Ydindumpit (olemassa olevat ja valinnaisesti tarpeen mukaan luotavat)
- Diagnostisten tietojen kerääjätilastot (diag_coll)
Tuloksena oleva paketti on yksi pakattu arkisto (oletusarvoisesti tar/gz), joka voidaan siirtää PowerFlex-tukeen lisäanalyysia varten.
Vain yksi get_info.sh esiintymä voi toimia isännässä tiettynä ajankohtana. Jos sen tulosteelle ei ole tarpeeksi vapaata tilaa, se kieltäytyy suorittamasta (ellei välilyöntitarkistusta nimenomaisesti ohiteta).
VAIHTOEHTOJA
Yleiset asetukset
-
-a, --kaikki
Kerää kaikki tiedot. Tämä vastaa määrityksiä --mdm-repository, --collect-cores, --max-cores=2, --valgrind-cores ja --analyse-diag-coll.
-
-A, --analyse-diag-coll
Diagnostiikkatietojen kerääjän (diag coll) tietojen analysointi.
-
-b[KOMPONENTIT], --keräilyytimet[=KOMPONENTIT]
Kerää olemassa olevat ydinkaatopaikat avaruudesta eroteltuun käyttäjämaakomponenttien luetteloon. Oletus (kun COMPONENTS jätetään pois): kaikki käyttäjän maakomponentit.
Huomautus: välissä ei saa olla välilyöntiä-bja KOMPONENTIT. Pitkää muotoa varten erota=Esimerkkejä:
-b'mdm sds'--collect-cores='mdm sds' -
-d OUT_DIR, --output-dir=OUT_DIR
Tallenna saatu paketti hakemistoon OUT_DIR. Default:
<WORK_DIR>/scaleio-getinfo(katso --work-dir). -
-f, --skip-mdm-login
Ohita PowerFlex MDM -kirjautumistietojen kysely. Tästä on hyötyä, kun käyttäjä on jo kirjautunut sisään manuaalisesti.
-
-h, --apua
Näytä ohjeviesti ja poistu. Kun tämä yhdistetään --tech-kenttään, näytä myös teknikon asetukset.
-
-J, --xz
Käytä kerätylle paketille tar/xz-muotoa oletusarvoisen tar/gz-muodon sijaan. Ohitetaan, jos järjestelmä
tar(1)Ei tue--use-compress-programtaixz(1)ei löydy. -
-kNUM, --max-cores=NUM
Kerää kustakin komponentista enintään NUM-ydintiedostoja. Oletus: kaikki ydintiedostot. Viittaa --collect-cores.
-
-l, --valo
Luo kevyt paketti. Vain uusimman sukupolven numeroidut lokitiedostot kerätään, eivätkä suoritettavat komponenttitiedostot/kirjastot sisälly ytimien keräämiseen. Tämän vaihtoehdon käyttö vähentää tuettavuutta, ja siksi sen käyttöä ei suositella.
-
-mNUM, --max-traces=NUM
Kerää kustakin osasta jopa NUM PowerFlex -jäljitystiedostoja. Oletus: kaikki tiedostot.
-
-N, --ohita-välilyönti tarkista
Ohita vapaan levytilan tarkistus ennen tietojen keräämistä.
-
-P-POLKU ,--collect-path=PATH
Kerää lisäpolun POLKU. Vain absoluuttiset polut hyväksytään. Hyväksyy yleismerkit; Jokerimerkit on mainittava. Tämä vaihtoehto voidaan määrittää useita kertoja useiden polkujen keräämiseksi.
-
-q, --hiljainen, --hiljaa
Estää viestit vakiotulosteessa.
-
-r, --mdm-arkisto
Kerää MDM-säilötiedostoja.
-
-s, --ohita-sdbg
Ohita SDBG-tulosten (diagnostic debugger) kerääminen.
-
-S, --pause-core-generation
Keskeytä PowerFlex-komponenttien ydinluonti tiedonkeruun aikana. Alkuperäinen kokoonpano palautetaan kokoonpanon jälkeen.
-
-w WORK_DIR, --work-dir=WORK_DIR
Käytä hakemisto-WORK_DIR tilapäistiedostoille. Default:
/tmp. -
- x TIEDOSTO,--output-file=TIEDOSTO
Tallenna kerätty nippu tiedostona, jonka nimi on FILE. Asianmukainen tiedostonimen pääte (
.tgz,.zipjne.) lisätään automaattisesti. Jos TIEDOSTO on-(viiva), kirjoita nippu vakiolähtöön (tarkoittaa --quiet). Kun paketti kirjoitetaan vakiotulosteeseen, levylle ei luoda pakettitiedostoa. Default:getInfoDump. -
-z, --zip
Käytä kerätylle paketille zip-muotoa oletusarvoisen tar/gz-tiedoston sijaan. Ohitetaan, jos
zip(1)ei löydy järjestelmästä. -
--mdm-portti=PORTTI
Muodosta yhteys MDM:ään käyttämällä porttia PORTTI SCLI-komentoja varten. Oletus: scli default behavior.
-
--overwrite-output-file
Korvaa tulostiedosto, jos se on jo olemassa. Kun tulostiedosto tai hakemisto on eksplisiittisesti määritetty (kautta -x tai -d), oletustoiminta on kieltäytyä korvaamasta; Tämä vaihtoehto ohittaa sen.
-
--Tech
Sisällytä teknikon asetukset ohjeviestin tulokseen.
MDM-kirjautumisvaihtoehdot
Seuraavat vaihtoehdot välitetään SCLI:lle --login Komento. Niiden käyttäytymistä ja oletusarvoja säätelee SCLI.
-
-n, --use-suojaamaton-viestintä
Muodosta yhteys MDM:ään suojaamattomassa tilassa.
-
-p SALASANA, --password=PASSWORD
Käytä PowerFlexin MDM-kirjautumiseen salasanaa. Default: SCLI:n oletustoiminta.
-
-u KÄYTTÄJÄTUNNUS, --username=USERNAME
Käytä PowerFlexin MDM-kirjautumisessa USERNAME-komentoa. Oletus: scli default behavior.
-
--LDAP-todennus
Kirjaudu PowerFlex MDM:ään LDAP-pohjaisella todennuksella.
-
--management-system-ip=OSOITE
Muodosta kertakirjautuminen osoitteessa SSO/M&O. Oletus: scli default behavior.
-
--p12-password=SALASANA
Salaa PowerFlex-kirjautumistiedosto PKCS#12 salasanalla. Oletus: scli default behavior.
-
--p12-polku=TIEDOSTO
Tallenna PowerFlex-kirjautumisen PKCS#12-tiedosto tiedostona. Oletus: scli default behavior.
Teknikon vaihtoehdot
Seuraavat asetukset on tarkoitettu tukiteknikoiden käyttöön, ja ne näkyvät ohjesanomassa vain, kun --tech on määritetty.
-c[KOMPONENTIT], --generoida-ytimet[=KOMPONENTIT]
Luo ydintiedostot ( gcore(1)) mukaisesti avaruudessa erotetun käyttäjäkomponenttien luettelon käynnissä olevia prosesseja varten. Oletus: kaikki käyttäjän maakomponentit. Viittaa --collect-executables. Edellyttää gdb ja gcore.
-c ja KOMPONENTIT. Pitkää muotoa varten erota =.
Esimerkkejä:
-c'mdm sds'
--generate-cores='mdm sds'
-
-C CORE_FILE, --reference-core-file=CORE_FILE
Kerää tuotelokit ja -ytimet suhteessa CORE_FILE:n viimeiseen muokkausaikaan (mtime) suorituksen alkamisajan sijaan. Viittaa --collect-cores.
-
-E REF_TIME, --tapahtuma-aika=REF_TIME
Kerää tuotelokit ja -ytimet suhteessa REF_TIME suorituksen alkamisajan sijasta. Hyväksyy minkä tahansa muodon, jonka ymmärtää
date(1). Viittaa --collect-cores. - -g[KOMPONENTIT], --valgrind-ytimet[=KOMPONENTIT]
Kerää Valgrindin ydinkaatopaikat määritetyille käyttäjämaakomponenteille. Oletus: kaikki käyttäjän maakomponentit. Viittaa --collect-executables.
Huomautus: välissä ei saa olla välilyöntiä -b ja KOMPONENTIT. Pitkää muotoa varten erota =
Esimerkkejä:
-g'mdm sds'
--valgrind-cores='mdm sds'
-
-t MIN, --minuuttia-ennen-tapahtumaa=MIN
Kerää tuotelokit ja -ytimet, jotka on luotu enintään minuuttia ennen viiteaikaa. Default: 15.
-
-T MIN, --minuutit-tapahtuman jälkeen = MIN
Kerää tuotelokit ja -ytimet, jotka on luotu enintään minuuttia viiteajan jälkeen. Default: 5.
-
-X[KOMPONENTIT], --collect-suoritettavat[=KOMPONENTIT]
Komponenttien suoritettavien tiedostojen ja niiden jaettujen kirjastojen kerääminen määritetyille USER-LAND-KOMPONENTEILLE. Oletus: kaikki käyttäjän maakomponentit.
Huomautus: välissä ei saa olla välilyöntiä
-bja KOMPONENTIT. Pitkää muotoa varten erota=Esimerkkejä:
-X'mdm sds' --collect-executables='mdm sds' -
--keep-work-dir
Säilytä luotu tilapäinen työhakemisto nipun luonnin jälkeen (yleensä tyhjennetään automaattisesti).
PAKETIN RAKENNE
Tulospaketti on yksi pakattu arkisto.
- Paketin ylimmän tason hakemisto on kerätyn järjestelmän isäntänimi.
- Yleiset isännän komentojen tulokset menevät
server/Alihakemistoon.
Tiedostonimi on<command>+<arguments>+ jälkiliite (.txtoletuksena). Välilyönnit korvattu_, muut kuin aakkosnumeeriset merkit poistettuina.
Esimerkki:server/ip_-s_addr.txt– tuotosip -s addr - Tuotteen komentojen tulokset siirtyvät komponentin alihakemistoon.
mdm/vartenscli,sdc/vartendrv_cfgJne.
Komennon nimi (scli,drv_cfgjne.) on riisuttu. Ensimmäisestä merkityksellisestä argumentista tulee tiedostonimi. Tiedostoille annetaan asianmukainen pääte,.txtoletuksena.
Esimerkkejä:mdm/query_cluster.txt– tuotosscli --query_clustermdm/tgt_dump.txt– tuotosscli --debug_action --tgt_dumpsdc/query_mdms.txt– tuotosdrv_cfg --query_mdmssds/sdbg.txt– SDBG:n tuotosdumpallscreenskäyttöturvallisuustiedotteelle
- Tuotteen komponenttitiedostot (toisin kuin komentojen tulosteet),
<component>/cfg,<component>/logsJne.
Kopioitu komponentin hakemistosta etuliite poistettuna.
Esimerkkejä:mdm/cfg/conf.txt– kopio/opt/emc/scaleio/mdm/cfg/conf.txtsds/logs/trc.0– kopio/opt/emc/scaleio/sds/logs/trc.0
- Isäntätiedostojärjestelmätiedostot sijoitetaan tiedostojärjestelmäpolkuunsa suhteessa nipun juureen.
Esimerkkejä:etc/os-release– kopio/etc/os-releasevar/log/messages– kopio/var/log/messagesproc/cpuinfo– kopio/proc/cpuinfo
- Diagnostic Collector (diag_coll) -tiedostot kopioidaan
/optetuliite riisuttu, säilyttäen sisäisen rakenteen.
Esimerkki:diag_coll/logs/sar.0– kopio/opt/diag_coll/logs/sar.0 - Piilotetut tiedostot (pisteen etuliite) "piilotetaan" poistamalla alussa oleva piste.
- Apuohjelman suoritusloki,
get_info_run.log, sijoitettu suoraan isäntänimen>/juuren <alle.
Nipun hakemiston puurakenne:
<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)
TUOTELOKI JA YDINTIEDOSTOJEN SUODATUS
Tässä osassa kuvatut asetukset määrittävät, miten tuotteen lokitiedostot (joita kutsutaan myös jäljitystiedostoiksi, esim. trc.0, trc.1, exp.0) ja Core-vedostiedostot valitaan sisällytettäviksi kerättyyn nippuun. He tekevät sen määrittämällä viiteajan, aikaikkunan sen ympärille ja laskemalla rajat.
Jos suodatusasetuksia ei ole määritetty, kerätään kaikki tuotteen lokitiedostot ja (jos ydinkokoelma on käytössä) kaikki Core-vedostiedostot. Suodatusasetukset kaventavat tätä valintaa asteittain alla kuvatulla tavalla.
Viiteaika
Viiteaika voidaan asettaa jommallakummalla -E/--event-time tai -C/--reference-core-file.
Jos ei kumpaakaan --event-time Eikä --reference-core-file on annettu, aikaikkunan suodatusta ei suoriteta: viiteaika on oletusarvoisesti nykyinen aika ja sitä käytetään vain läheisyyteen perustuvassa järjestyksessä, kun määräraja (-m tai -k) on voimassa (katso laskentarajat alla).
Jos molemmat -E ja -C näkyvä, komentorivin viimeinen tulee voimaan.
Aikaikkuna
Kun viiteaika on asetettu (käyttämällä --event-time tai --reference-core-file), sen ympärille muodostuu aikaikkuna. Aikaikkunan laajuus voidaan asettaa seuraavasti: -t/--minutes-before-event Tai -T/--minutes-after-event, joiden oletusarvo on vastaavasti 15 ja 5 minuuttia. Vain tiedostot, joiden sisältö on päällekkäinen tämän ikkunan kanssa, ovat kelvollisia kokoelmaan.
Esimerkki: -E "2020-03-20 14:30" -t 10 -T 3 Kerää tiedostot ajalta 14:20:00 – 14:33:00.
--minutes-before-event ja --minutes-after-event jätetään huomiotta, kun kumpikaan ei --event-time Eikä --reference-core-file on määritetty.
Lukumäärän rajat
Tiedostomäärärajoituksen voi asettaa seuraavasti: -m/--max-traces ja -k/--max-cores, lokitiedostoille ja ydintiedostoille. Raja mitataan komponenttikohtaisesti.
Kun aikaikkunaan mahtuu enemmän tiedostoja kuin NUM, (tai ne ovat käytettävissä, jos mikään ikkuna ei ole aktiivinen), viiteaikaa lähinnä olevat NUM-tiedostot kerätään.
Kun määrärajaa käytetään ilman --event-time tai --reference-core-file, kaikki tiedostot ovat ehdokkaita (ei aikaikkunaa) ja NUM: n uusimmat tiedostot valitaan.
Suodatuslogiikka
Tiedostojen suodatus käyttää ensin aikaikkunaa ja sitten määrärajaa:
- Määritä ehdokkaat. Kaikki osan tuotteen lokitiedostot ja/tai Core-vedostiedostot luetteloidaan.
- Johda sisältöjakso. Tuotteen lokitiedostojen sisältö edustaa ajanjaksoa. Sisältöjakson katsotaan alkavan edeltäjänsä viimeisestä muokkausajasta (mtime) tai UNIX-aikakaudesta, jolloin edeltäjää ei ole; Se päättyy tiedoston omaan mtimeen. Core-vedostiedostot edustavat ajankohtaa tiedoston mtime-pisteessä.
- Käytä aikaikkunaa (jos
-Etai-Cmääritetty). Tiedostot, joiden sisältö on kokonaan ikkunan ulkopuolella, hylätään valinnasta. Jos tuotteen lokitiedostoissa ei ole mitään tiedostoa, ikkunaa lähinnä oleva tiedosto säilytetään, jotta osan nippu ei ole koskaan tyhjä. Core-vedostiedostoihin ei sovelleta tällaista varajärjestelmää. - Käytä määrärajaa (jos
-mTai-kmääritetty). Jäljellä olevista tiedostoista valitaan enintään NUM, mieluummin ne, jotka ovat lähinnä viiteaikaa. Tiedostot ennen viiteaikaa ja sen jälkeen kilpailevat tasapuolisesti valinnasta.
TODENNUS
Apuohjelma yrittää kirjautua paikalliseen MDM:ään, jos ensisijainen MDM-prosessi havaitaan odotetun portin kuuntelussa (oletus: 6611).
MDM-kirjautumisvaihtoehdot välitetään SCLI:lle --login komento ja se käsittelee niitä.
Jos kirjautuminen epäonnistuu, apuohjelma päättyy virheeseen.
Kun kirjautuminen ohitetaan, SCLI-komentoja yritetään edelleen (tukemaan tilanteita, joissa käyttäjä on kirjautunut sisään manuaalisesti etukäteen). Kolmen SCLI-virheen jälkeen näyttöön tulee varoitus ja kaikki muut SCLI-komennot ohitetaan.
Kirjautuminen ohitetaan, kun:
- Paikallisesta isännästä ei löydy ensisijaista MDM-prosessia.
- --skip-mdm-login -vaihtoehto on määritetty.
Kirjautuminen epäonnistuu, kun:
- MDM-prosessin omistaja ei ole valtuutettujen käyttäjien luettelossa (oletus:
root) ja suojattu kirjautuminen on käytössä. - The SCLI
--loginKomento palauttaa virheen (esim. väärät tunnistetiedot).
LEVYTILAA
Tilapäistiedostojen ja niistä saatavan paketin levytilavaatimukset voivat vaihdella huomattavasti.
Apuohjelma pyrkii minimoimaan väliaikaisen tilankäytön; Se rajoittuu kerättyjen näennäistiedostojärjestelmien komentojen tuloksiin ja kopioihin (/proc ja /sys) tiedostoja.
PowerFlex-isännän levytilan käytön minimoimiseksi paketti voidaan suoratoistaa etäisännästä komennolla --output-file=-. Suoratoiston aikana nipputiedosto kirjoitetaan suoraan vakiolähtöön (stdout); Sitä ei luoda levylle.
Ennen tietojen keräämistä apuohjelma arvioi tarvittavan levytilan sekä tilapäiselle työhakemistolle että tulostuspaketille.
Jos arvioitu tarvittava tila ylittää asiaankuuluvan tiedostojärjestelmän käytettävissä olevan tilan, apuohjelma päättyy virheeseen. Tämä tarkistus voidaan ohittaa komennolla --skip-space-check.
Työhakemisto ja tulostushakemisto voivat sijaita eri tiedostojärjestelmissä; Jokainen tarkistetaan itsenäisesti.
Arvioidut tilantarpeet kirjoitetaan laitoksen lokitiedostoon, get_info_run.log.
SULJE TILA
| 0 | Onnistuneen |
| 1 | Virhe (virheelliset argumentit, riittämätön tila, kirjautumisvirhe, toinen esiintymä jo käynnissä, nipun luontivirhe, signaali kiinni jne.) |
TIEDOSTOT
<WORK_DIR>/get_info_run.log |
Suoritusloki (sisältyy myös pakettiin) |
<WORK_DIR>/scaleio-getinfo-tmp/ |
Väliaikainen työhakemisto (siivottu menestyksestä) |
/tmp/scaleio-getinfo/getInfoDump.tgz |
Tulostuspaketin oletussijainti |
<WORK_DIR>/scaleio-getinfo-extra/
/tmp/scaleio-getinfo-extra/ |
Valinnaiset diagnostiikkatietojen lisähakemistot |
/tmp/scaleio-getinfo-backup/ |
Muokattujen kokoonpanotiedostojen tilapäiset varmuuskopiot (luodaan automaattisesti) |
/opt/emc/scaleio/ |
PowerFlex-asennushakemisto |
YMPÄRISTÖ
Edellytykset
- Apuohjelma on suoritettava pääkäyttäjänä (tai käyttäjänä, jolla on riittävät oikeudet lukea komponenttitiedostoja, suorittaa diagnostiikkakomentoja ja käyttää
/proc,/sysjne.). - Tavalliset apuohjelmat:
tar,gzip,stat,find,awk,sed,getopt(1)(parannettu),nice. - Valinnainen:
zip(varten--zip),xz(varten--xz),gdb/gcore(varten--generate-cores).
Samanaikaisuuden
Vain yksi get_info.sh esiintymä voi olla käynnissä kerrallaan. Apuohjelma tarkistaa olemassa olevan käynnissä olevan esiintymän seuraavasti: pidof(1) ja päättyy, jos sellainen löytyy.
Signaalin käsittely
Apuohjelman keskeytykset INT, EXITja TERM signaalit tiedonkeruun aikana. Vastaanotettuaan signaalin se:
- Palauttaa varmuuskopioidut kokoonpanotiedostot (kuten ydinasetukset).
- Puhdistaa väliaikaiset hakemistot.
- Poistuu tilasta 1.
Suoritusloki säilytetään ja sen polku tulostetaan keskivirheeseen.
ESIMERKKEJÄ
Kerää vakiomuotoinen tukipaketti:
get_info.sh
Suoratoista paketti SSH-yhteyden kautta luomatta pakettitiedostoa PowerFlex-etäisäntään:
ssh <host> 'get_info.sh --output-file=-' > getInfoDump-<host>.tgz
Käytä toista työhakemistoa välttääksesi täyttymisen /tmp:
get_info.sh --work-dir=/var/tmp
Sisällytä pakettiin mukautettuja polkuja:
get_info.sh --collect-path=/opt/custom/app/logs --collect-path='/var/log/app*'
Kerää uusin ydinvedos vain SDS- ja MDM-komponenteista:
get_info.sh --collect-cores='mdm sds' --max-cores=1
Kerää tietoja, jotka keskittyvät ydintiedoston muokkausaikaan, mukautetun aikaikkunan avulla:
get_info.sh --reference-core-file=/opt/emc/scaleio/sds/bin/core.1000 \
--minutes-before-event=10 \
--minutes-after-event=2