PowerFlex: PFMP_SUPPORT - Utilità di raccolta dei pacchetti di supporto

Résumé: pfmp_support - raccogliere i dati di diagnostica di PowerFlex Manager e inserirli in un pacchetto di supporto

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

pfmp_support [OPZIONI]

 

DESCRIZIONE

pfmp_support tratta di un'utilità di diagnostica che raccoglie le informazioni di debug da un host del programma di installazione di PowerFlex Manager o PowerFlex Manager e le archivia in un pacchetto compresso per l'analisi da parte del personale di supporto.

L'utilità raccoglie dati da più fonti, tra cui:

  • Dati, configurazione e registri di diagnostica Kubernetes
  • Informazioni sulla versione di Helm
  • Dati di runtime di Docker e container
  • Registri del programma di installazione di PowerFlex Manager
  • Configurazione, registri e stato di runtime del sistema operativo
  • Inventario hardware

Quando si raccolgono dati da più nodi del cluster Kubernetes, è necessario raccogliere un pacchetto standard (--skip-kubernetes-shared not specified) da almeno un nodo, dove kubectl e helm disponibili e con accesso al piano di controllo Kubernetes. Nei nodi successivi --skip-kubernetes-shared possono essere utilizzati per ridurre le dimensioni dei dati raccolti.

Il bundle risultante è un singolo archivio compresso (tar/gz per impostazione predefinita) che può essere trasferito al supporto PowerFlex per ulteriori analisi.

Su un host è possibile eseguire una sola istanza di pfmp_support alla volta. Se non c'è abbastanza spazio libero per il suo output, si rifiuterà di eseguirlo (a meno che il controllo dello spazio non venga esplicitamente ignorato).

 

OPZIONI

Opzioni generali

  • -A DIR, --percorso-radice-installatore=DIR

    Utilizzare DIR come directory di base del programma di installazione di PowerFlex Manager. Utile quando si raccolgono i dati del programma di installazione di PowerFlex e il relativo contenitore (atlantic_installer) non è in esecuzione. Impostazione predefinita: rilevato automaticamente o /var.

  • -dOUT_DIR, --output-dir=OUT_DIR 

    Conservare il pacchetto risultante nella directory OUT_DIR. Default: <WORK_DIR>/powerflex-pfmpsupport (vedere --dir-lavoro).

  • -h, --aiuto

    Mostrare il messaggio di aiuto ed uscire. In combinazione con --tech, visualizza anche le opzioni per i tecnici.

  • -J, --xz

    Utilizzare il formato tar/xz per il pacchetto raccolto anziché il formato tar/gz predefinito. Ignorato se il sistema tar(1) non supporta --use-compress-program oppure xz(1) non è stato trovato.

  • -n NAMESPACE,--namespace=NAMESPACE

    Raccogliere dati aggiuntivi dal namespace Kubernetes specifico dell'applicazione NAMESPACE. Default: powerflex.

  • -N, --salta il controllo dello spazio

    Ignorare la verifica dello spazio libero su disco prima della data collection.

  • -P PERCORSO,--collect-path=PERCORSO

    Raccogliere il percorso aggiuntivo PATH. Sono accettati solo percorsi assoluti. Accetta caratteri jolly; I caratteri jolly devono essere racchiusi tra virgolette. Questa opzione può essere specificata più volte per raccogliere più percorsi.

  • -q, --silenzioso, --silenzioso

    Soppressione dei messaggi sull'output standard.

  • -s, --skip-kubernetes-condiviso

    Ignorare la raccolta di dati Kubernetes condivisi (a livello di cluster). I dati Kubernetes per nodo e i dati dell host vengono ancora raccolti. Utile per le raccolte a più nodi per ridurre le dimensioni; I dati del cluster devono essere raccolti da almeno un nodo.

  • -wWORK_DIR, --dir-lavoro=WORK_DIR 

    Utilizzare WORK_DIR di directory per i file temporanei. Default: /tmp.

  • -x FILE, --output-file=FILE

    Conservare il pacchetto raccolto come file denominato FILE. Il suffisso appropriato del nome file (.tgz.zip, ecc.) viene aggiunto automaticamente. Se FILE è - (trattino), scrive il pacchetto nell'output standard (implica --quiet). Quando il pacchetto viene scritto nell'output standard, non viene creato alcun file del pacchetto sul disco. Default: pfmpSupport.

  • -z, --zip

    Utilizzare il formato zip per il pacchetto raccolto anziché il tar/gz predefinito. Ignorato se zip(1) non viene trovato nel sistema.

  • --sovrascrivi-file-di-output

    Sovrascrivere il file di output, se già esistente. Quando un file o una directory di output è specificato in modo esplicito (tramite -x o -d), il comportamento predefinito è quello di rifiutare la sovrascrittura; Questa opzione ha la precedenza su questo.

  • --Tech

    Includere le opzioni del tecnico nell'output del messaggio della guida.

Opzioni per il tecnico

Le seguenti opzioni sono destinate all'utilizzo da parte dei tecnici del supporto e vengono visualizzate nel messaggio di aiuto solo quando è specificato --tech.

  • --mantenere-dir-lavoro

    Conservare la directory di lavoro temporanea generata dopo la creazione del pacchetto (normalmente pulita automaticamente).

  • --vecchi-registri-pod-

    Raccogliere i registri pod Kubernetes meno recenti dallo storage rsyslog locale. Se omesso, la corrente (kubectl logs) e precedenti (kubectl logs --previous) i log del contenitore vengono ancora raccolti.

 

STRUTTURA DEL FASCIO

Il bundle di output è un singolo archivio compresso.

  • La directory di primo livello del pacchetto è il nome host del sistema raccolto.
  • Gli output generali dei comandi host vanno in un server/ Sottodirectory. Il nome del file è <command> + <arguments> + suffisso (.txt per impostazione predefinita). Spazi sostituiti con _, caratteri non alfanumerici rimossi.
    Esempio: 
    server/ip_-s_addr.txt - output of ip -s addr
  • Gli output dei comandi kubectl, helm e docker vanno nelle rispettive sottodirectory. Sono ulteriormente organizzati per ambito, <namespace>/<pod>/<container>, se del caso.
    Gli argomenti correlati al nome del comando, all'ambito e al formato di output vengono rimossi. Il nome del file è <subcommand> + <arguments> + suffisso (.txt per impostazione predefinita). Spazi sostituiti con _, caratteri non alfanumerici rimossi.
    Gli output del comando Kubectl Exec vengono archiviati in exec/ della sottodirectory del pod.
    Esempi:
    • kubectl/version.txt - Output di kubectl version
    • kubectl/all-namespaces/get_pods.yaml -- uscita di kubectl -o=yaml get --all-namespaces pods
    • kubectl/powerflex/asmui-7d6944dcb8-zqqtk/asmui/logs_--previous.txt - Output di kubectl logs -n powerflex --container asmui --previous asmui-7d6944dcb8-zqqtk
    • kubectl/powerflex/nats-server-box-6d685b4b7d-cf278/nats-box/exec/nats_stream_report.txt - Output di kubectl exec -n powerflex --container nats-box nats-server-box-6d685b4b7d-cf278 -- nats stream report
    • helm/powerflex/get_all_asmmanager.txt - Output di helm get -n powerflex all asmmanager
    • docker/ps_-a.txt - Output di docker ps -a
  • I file estratti dai container pod vengono posizionati nella directory del container nel percorso del file system in-container.
    Esempio: kubectl/powerflex/thin-deployer-5657659bc7-gzbq4/thin-deployer/opt/Dell/ASM/deployments/8aaa809298a9efe10198aa58c8874f35/deployment.log - copia di /opt/Dell/ASM/deployments/8aaa809298a9efe10198aa58c8874f35/deployment.log estratte dall'interno del thin-deployer contenitore del thin-deployer-5657659bc7-gzbq4 Pod
  • I file del file system host vengono posizionati nel percorso del file system relativo alla root del pacchetto.
    Esempi:
    • etc/os-release - copy of /etc/os-release
    • var/log/messages - copy of /var/log/messages
    • proc/cpuinfo - copy of /proc/cpuinfo
    • var/lib/rancher/rke2/agent/logs/kubelet.log - copy of /var/lib/rancher/rke2/agent/logs/kubelet.log
  • I file nascosti (con prefisso punto) vengono "nascosti" rimuovendo il punto iniziale.
  • Registro di esecuzione dell'utilità, pfmp_support.log, posizionato direttamente sotto il <nome> host/root.

Struttura ad albero delle directory del pacchetto:

<hostname>/
|-- pfmp_support.log                   Utility execution log
|-- server/                            General command output directory
|   |-- ip_-s_addr.txt
|   |-- uptime.txt
|   |-- uname_-a.txt
|   |-- ps_-elF.txt
|   |-- dmesg_-T.txt
|   +-- ...                            (one file per collected command)
|
|-- kubectl/                           kubectl command output directory
|   |-- version.txt                    Non-namespace-specific commands
|   |-- ...
|   |-- all-namespaces/                Cross-namespace commands
|   |   |-- get_pods.txt
|   |   |-- get_pods.yaml
|   |   +-- ...
|   +-- <namespace>/                   Per-namespace Kubernetes data
|       +-- <pod>/                     Per-pod data
|           +-- <container>/           Per-container data
|               |-- logs.txt           Current container logs
|               |-- exec/              Commands executed within container (if any)
|               |   +-- ...
|               |-- <dir>/             Files extracted from container (if any)
|               +-- ...
|-- helm/                              helm command output directory
|-- docker/                            docker command output directory
|
|-- etc/                               Host files
|   |-- os-release
|   |-- sysconfig/
|   |-- network/
|   +-- ...
|-- var/
|   |-- log/
|   |   |-- messages
|   |   +-- ...
|   |-- lib/rancher/rke2/
|   +-- ...
|-- proc/
|   |-- cpuinfo
|   |-- meminfo
|   +-- ...
|-- sys/
|-- ...
|
|-- powerflex-pfmpsupport-extra/       Extra diagnostic data (if present)
+-- powerflex-pfmpsupport-backup/      Backed-up configuration files (if any)

SPAZIO SU DISCO

I requisiti di spazio su disco per i file temporanei e il pacchetto risultante possono variare notevolmente.

L'utilità tenta di ridurre al minimo l'utilizzo temporaneo dello spazio; È limitato agli output dei comandi e alle copie del file system virtuale raccolto (/proc e /sys) file.

Per ridurre al minimo l'utilizzo dello spazio su disco sull host PowerFlex Manager, il pacchetto può essere trasmesso da un host remoto con --output-file=-. Durante lo streaming, il file del bundle viene scritto direttamente nell'output standard (stdout); Non viene creato su disco.

Prima di raccogliere i dati, l'utilità stima lo spazio su disco richiesto sia per la directory di lavoro temporanea che per il pacchetto di output.

Se lo spazio richiesto stimato supera lo spazio disponibile sui file system pertinenti, l'utilità viene terminata con un errore. Questo controllo può essere ignorato con --skip-space-check.

La directory di lavoro e la directory di output possono risiedere su file system diversi; Ognuno di essi viene controllato in modo indipendente.

I requisiti di spazio stimati vengono scritti nel file di log dell'utilità, pfmp_support.log.

STATO DI USCITA

0 Completamento
1 Errore (argomenti non validi, spazio insufficiente, un'altra istanza già in esecuzione, errore di generazione del pacchetto, segnale catturato, ecc.)

FILE

<WORK_DIR>/pfmp_support.log Registro di esecuzione (anch'esso incluso nel pacchetto)
<WORK_DIR>/powerflex-pfmpsupport-tmp/ Directory di lavoro temporanea (pulita in caso di esito positivo)
/tmp/powerflex-pfmpsupport/pfmpSupport.tgz Posizione predefinita del bundle di output
<WORK_DIR>/powerflex-pfmpsupport-extra/
/tmp/powerflex-pfmpsupport-extra/
Directory aggiuntive opzionali dei dati di diagnostica
/tmp/powerflex-pfmpsupport-backup/ Backup temporanei dei file di configurazione modificati (creati automaticamente)

AMBIENTE

Prerequisiti

  • L'utilità deve essere eseguita come root (o come utente con privilegi sufficienti per leggere i file di sistema, eseguire comandi di diagnostica, interagire con il cluster Kubernetes e accedere a /proc/sys, ecc.).
  • Utenze standard: targzipstatfindawksedgetopt(1) (migliorato), nice.
  • Opzionale: zip (ad esempio, --zip), xz (ad esempio, --xz).

Concorrenza

È possibile eseguire una sola istanza di pfmp_support alla volta. L'utilità verifica la presenza di un'istanza in esecuzione esistente tramite pidof(1) e termina se ne viene trovato uno.

Gestione del segnale

Le trap di utilità INTEXITTERM durante la raccolta dei dati. Alla ricezione di un segnale:

  1. Ripristina tutti i file di configurazione di cui è stato eseguito il backup.
  2. Pulisce le directory temporanee.
  3. Uscite con stato 1.

Il registro di esecuzione viene conservato e il relativo percorso viene stampato con l'errore standard.

 

ESEMPI

Raccolta di un pacchetto di supporto standard:

pfmp_support

Raccogliere bundle da più nodi in un cluster Kubernetes.

  • Su un nodo con kubectl e helm accedere e raccogliere tutti i dati Kubernetes:
    pfmp_support
    
    
  • Nei nodi successivi, ignorare i dati Kubernetes condivisi:
    pfmp_support --skip-kubernetes-shared
    
    

Eseguire lo streaming di un pacchetto tramite una connessione SSH, senza creare un file bundle sull host PowerFlex Manager remoto:

ssh <host> 'pfmp_support --output-file=-' > pfmpSupport-<host>.tgz

Utilizzare una directory di lavoro diversa per evitare di riempire /tmp:

pfmp_support --work-dir=/var/tmp

Includere percorsi personalizzati nel pacchetto:

pfmp_support --collect-path=/opt/custom/app/logs --collect-path='/var/log/app*'

Produits concernés

PowerFlex rack, ScaleIO
Propriétés de l’article
Numéro d’article: 000455318
Type d’article: How To
Dernière modification: 21 Apr 2026
Version:  1
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.