PowerFlex: PFMP_SUPPORT - Support Bundle Collection Utility

Résumé: pfmp_support - PowerFlex Manager 진단 데이터를 수집하여 지원 번들에 압축

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 [옵션]

 

설명

pfmp_support는 PowerFlex Manager 또는 PowerFlex Manager 설치 프로그램 호스트에서 디버그 정보를 수집하고 지원 담당자가 분석할 수 있도록 압축 번들에 보관하는 진단 유틸리티입니다.

이 유틸리티는 다음과 같은 여러 소스에서 데이터를 수집합니다.

  • Kubernetes 진단 데이터, 구성 및 로그
  • Helm 릴리스 정보
  • Docker 및 컨테이너 런타임 데이터
  • PowerFlex Manager 설치 프로그램 로그
  • 운영 체제 구성, 로그 및 런타임 상태
  • 하드웨어 인벤토리

여러 Kubernetes 클러스터 노드에서 데이터를 수집할 때 하나 이상의 노드에서 표준 번들(--skip-kubernetes-shared not specified)을 수집해야 합니다. kubectl 및 helm 사용할 수 있으며 Kubernetes 컨트롤 플레인에 액세스할 수 있습니다. 후속 노드에서 --skip-kubernetes-shared 수집된 데이터의 크기를 줄이는 데 사용할 수 있습니다.

결과 번들은 추가 분석을 위해 PowerFlex 지원으로 전송할 수 있는 단일 압축 아카이브(기본적으로 tar/gz)입니다.

한 번에 하나의 pfmp_support 인스턴스만 호스트에서 실행할 수 있습니다. 출력을 위한 여유 공간이 충분하지 않으면 실행을 거부합니다(공간 검사를 명시적으로 건너뛰지 않는 한).

 

옵션

일반 옵션

  • -DIR, --installer-root-path=DIR 

    DIR을 PowerFlex Manager 설치 프로그램의 기본 디렉토리로 사용합니다. PowerFlex 설치 프로그램 데이터 및 설치 프로그램 컨테이너(atlantic_installer)가 실행되고 있지 않습니다. 기본값: 자동 감지 또는 /var.

  • -d OUT_DIR, --출력 디렉토리=OUT_DIR

    결과 번들을 디렉토리 OUT_DIR 아래에 저장합니다. 기본: <WORK_DIR>/powerflex-pfmpsupport ( --work-dir 참조).

  • -h, --도움

    도움말 메시지를 표시하고 종료합니다. --tech와 함께 사용하면 기술 지원 담당자 옵션도 표시됩니다.

  • -J, --xz

    수집된 번들에 기본 tar/gz 대신 tar/xz 형식을 사용합니다. 시스템의 tar(1) 지원하지 않음 --use-compress-program 또는 xz(1) 은(는) 찾을 수 없습니다.

  • -n 네임스페이스, --namespace=네임스페이스

    애플리케이션별 Kubernetes 네임스페이스 NAMESPACE에서 추가 데이터를 수집합니다. 기본: powerflex.

  • -N, --스킵 스페이스 체크

    데이터를 수집하기 전에 사용 가능한 디스크 공간 확인을 건너뜁니다.

  • -P 경로, --수집 경로=경로

    추가 경로 PATH를 수집합니다. 절대 경로만 허용됩니다. 와일드카드를 사용할 수 있습니다. 와일드카드는 따옴표로 묶어야 합니다. 이 옵션은 여러 경로를 수집하기 위해 여러 번 지정할 수 있습니다.

  • -q, --조용한, --조용한

    표준 출력에서 메시지를 표시하지 않습니다.

  • -s, --skip-kubernetes-공유

    공유(클러스터 전체) Kubernetes 데이터의 수집을 건너뜁니다. 노드당 Kubernetes 데이터 및 호스트 데이터는 계속 수집됩니다. 다중 노드 컬렉션에서 크기를 줄이는 데 유용합니다. 클러스터 데이터는 하나 이상의 노드에서 수집해야 합니다.

  • -w WORK_DIR, --작업 디렉토리=WORK_DIR

    임시 파일에 디렉토리 WORK_DIR 사용합니다. 기본: /tmp.

  • -x 파일, --출력 파일=파일

    수집된 번들을 FILE이라는 파일로 저장합니다. 해당 파일 이름 접미사(.tgz.zip등) 자동으로 추가됩니다. FILE이 - (대시), 번들을 표준 출력에 씁니다 ( --quiet 를 의미). 번들이 표준 출력에 기록되면 디스크에 번들 파일이 생성되지 않습니다. 기본: pfmpSupport.

  • -z, --지퍼

    수집된 번들에 기본 tar/gz 대신 zip 형식을 사용합니다. 다음과 같은 경우 무시됩니다. zip(1) 시스템에서 찾을 수 없습니다.

  • --덮어쓰기 출력 파일

    출력 파일이 이미 있는 경우 덮어씁니다. 출력 파일 또는 디렉토리가 명시적으로 지정되면(-x 또는 -d를 통해) 기본 동작은 덮어쓰기를 거부하는 것입니다. 이 옵션은 이를 재정의합니다.

  • --기술

    도움말 메시지 출력에 기술 지원 담당자 옵션을 포함합니다.

기술 지원 담당자 옵션

다음 옵션은 기술 지원 담당자용이며 --tech가 지정된 경우에만 도움말 메시지에 표시됩니다.

  • --작업 디렉토리 유지

    번들 생성 후 생성된 임시 작업 디렉토리를 유지합니다(일반적으로 자동으로 정리됨).

  • --오래된 포드 로그

    로컬 rsyslog 스토리지에서 이전 Kubernetes 포드 로그를 수집합니다. 생략하면 전류(kubectl logs) 및 이전(kubectl logs --previous) 컨테이너 로그는 여전히 수집됩니다.

 

번들 구조

출력 번들은 압축된 단일 아카이브입니다.

  • 번들 최상위 디렉토리는 수집된 시스템의 호스트 이름입니다.
  • 일반 호스트 명령 출력은 server/ 하위 디렉터리. 파일 이름: <command> + <arguments> + 접미사(.txt 기본적으로). 다음으로 대체된 공백 _, 영숫자가 아닌 문자는 제거됩니다.
    예제: 
    server/ip_-s_addr.txt - output of ip -s addr
  • kubectl, helmdocker 명령 출력은 해당 하위 디렉터리로 이동합니다. 범위별로 추가로 구성됩니다. <namespace>/<pod>/<container>, 해당되는 경우.
    명령 이름, 범위 및 출력 형식 관련 인수는 제거됩니다. 파일 이름: <subcommand> + <arguments> + 접미사(.txt 기본적으로). 다음으로 대체된 공백 _, 영숫자가 아닌 문자는 제거됩니다.
    kubectl exec 명령 출력은 exec/ Pod의 하위 디렉터리에 있습니다.
    예제:
    • kubectl/version.txt - 의 출력 kubectl version
    • kubectl/all-namespaces/get_pods.yaml -- 출력의 kubectl -o=yaml get --all-namespaces pods
    • kubectl/powerflex/asmui-7d6944dcb8-zqqtk/asmui/logs_--previous.txt - 의 출력 kubectl logs -n powerflex --container asmui --previous asmui-7d6944dcb8-zqqtk
    • kubectl/powerflex/nats-server-box-6d685b4b7d-cf278/nats-box/exec/nats_stream_report.txt - 의 출력 kubectl exec -n powerflex --container nats-box nats-server-box-6d685b4b7d-cf278 -- nats stream report
    • helm/powerflex/get_all_asmmanager.txt - 의 출력 helm get -n powerflex all asmmanager
    • docker/ps_-a.txt - 의 출력 docker ps -a
  • Pod 컨테이너에서 추출된 파일은 컨테이너 내 파일 시스템 경로에서 컨테이너의 디렉터리 아래에 배치됩니다.
    예제: kubectl/powerflex/thin-deployer-5657659bc7-gzbq4/thin-deployer/opt/Dell/ASM/deployments/8aaa809298a9efe10198aa58c8874f35/deployment.log - 사본 /opt/Dell/ASM/deployments/8aaa809298a9efe10198aa58c8874f35/deployment.log 내부 에서 추출 thin-deployer 의 컨테이너 thin-deployer-5657659bc7-gzbq4 포드
  • 호스트 파일 시스템 파일은 번들 루트를 기준으로 해당 파일 시스템 경로에 배치됩니다.
    예제:
    • 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
  • 숨김 파일(점 접두사)은 선행 점을 제거하여 "숨김 해제"됩니다.
  • 유틸리티 실행 로그, pfmp_support.log, hostname>/root 바로 아래에 배치됩니다<.

번들 디렉토리 트리 구조:

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

디스크 공간

임시 파일 및 결과 번들에 대한 디스크 공간 요구 사항은 상당히 다를 수 있습니다.

유틸리티는 임시 공간 사용을 최소화하려고 시도합니다. 수집된 가상 파일 시스템의 명령 출력 및 복제본(/proc 및 /sys) 파일.

PowerFlex Manager 호스트의 디스크 공간 사용량을 최소화하기 위해 --output-file=-을 사용하여 원격 호스트에서 번들을 스트리밍할 수 있습니다. 스트리밍할 때 번들 파일은 표준 출력(stdout)에 직접 기록됩니다. 디스크에 생성되지 않습니다.

유틸리티는 데이터를 수집하기 전에 임시 작업 디렉토리와 출력 번들 모두에 필요한 디스크 공간을 추정합니다.

예상되는 필수 공간이 관련 파일 시스템의 사용 가능한 공간을 초과하면 유틸리티가 오류와 함께 종료됩니다. 이 검사는 --skip-space-check로 우회할 수 있습니다.

작업 디렉토리와 출력 디렉토리는 서로 다른 파일 시스템에 상주할 수 있습니다. 각각은 독립적으로 확인됩니다.

예상 공간 요구 사항은 유틸리티의 로그 파일에 기록됩니다. pfmp_support.log.

종료 상태

0 성공적인 완료
1 오류(잘못된 인수, 공간 부족, 이미 실행 중인 다른 인스턴스, 번들 생성 실패, 신호 포착 등)

파일

<WORK_DIR>/pfmp_support.log 실행 로그(번들에도 포함됨)
<WORK_DIR>/powerflex-pfmpsupport-tmp/ 임시 작업 디렉터리(성공 시 정리됨)
/tmp/powerflex-pfmpsupport/pfmpSupport.tgz 기본 출력 번들 위치
<WORK_DIR>/powerflex-pfmpsupport-extra/
/tmp/powerflex-pfmpsupport-extra/
선택적 추가 진단 데이터 디렉터리
/tmp/powerflex-pfmpsupport-backup/ 수정된 구성 파일의 임시 백업(자동 생성됨)

환경

필수 구성 요소

  • 이 유틸리티는 루트(또는 시스템 파일을 읽고, 진단 명령을 실행하고, Kubernetes 클러스터와 상호 작용하고, /proc/sys, 등).
  • 표준 유틸리티: targzipstatfindawksedgetopt(1) (향상됨), nice.
  • *선택 사항: zip ( --zip), xz ( --xz)를 제공해야 합니다.

동시성

한 번에 하나의 pfmp_support 인스턴스만 실행할 수 있습니다. 이 유틸리티는 다음을 통해 실행 중인 기존 인스턴스를 확인합니다. pidof(1) 발견되면 종료됩니다.

신호 처리

유틸리티 트랩 INTEXIT및 TERM 데이터 수집 중 신호. 신호를 수신하면 다음과 같습니다.

  1. 백업된 모든 구성 파일을 복원합니다.
  2. 임시 디렉토리를 정리합니다.
  3. 상태 1로 종료합니다.

실행 로그가 보존되고 해당 경로가 표준 오류로 인쇄됩니다.

 

예제

표준 지원 번들을 수집합니다.

pfmp_support

Kubernetes 클러스터의 여러 노드에서 번들을 수집합니다.

  • 노드 1개에 kubectl 및 helm 액세스하고 모든 Kubernetes 데이터를 수집합니다.
    pfmp_support
    
    
  • 후속 노드에서 공유된 Kubernetes 데이터를 건너뜁니다.
    pfmp_support --skip-kubernetes-shared
    
    

원격 PowerFlex Manager 호스트에서 번들 파일을 생성하지 않고 SSH 연결을 통해 번들을 스트리밍합니다.

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

다른 작업 디렉터리를 사용하여 채우지 않도록 합니다 /tmp파일로 교체합니다.

pfmp_support --work-dir=/var/tmp

번들에 사용자 지정 경로를 포함합니다.

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 avr. 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.