PowerFlex: GET_INFO - Utilidad de recopilación de paquetes de soporte

Résumé: get_info.sh: Recopile información de diagnóstico desde un host de PowerFlex y empáquela en un paquete de soporte.

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 [OPCIONES]


DESCRIPCIÓN

get_info.sh es una utilidad de diagnóstico que recopila información de depuración de un host de PowerFlex (anteriormente ScaleIO) y la archiva en un paquete comprimido para que el personal de soporte la analice.

La utilidad recopila datos de varias fuentes, entre las que se incluyen:

  • Archivos de seguimiento, configuración y registros de componentes de PowerFlex
  • Salidas de consultas de MDM/SCLI y volcado de depuración interno
  • Diagnósticos internos de componentes de PowerFlex
  • Configuración del sistema operativo, registros y estado de tiempo de ejecución
  • Inventario de hardware (controladoras de almacenamiento, dispositivos de red, NVMe, NVDIMM, etc.)
  • Volcados de núcleo (existentes y generados opcionalmente según demanda)
  • Recopilador de datos de diagnóstico (diag_coll) estadísticas

El paquete resultante es un único archivo comprimido (tar/gz de manera predeterminada) que se puede transferir al soporte de PowerFlex para un análisis más detallado.

Solo una instancia de get_info.sh Puede ejecutarse en un host en un momento determinado. Si no hay suficiente espacio libre para su salida, se niega a ejecutarse (a menos que la comprobación de espacio se omita explícitamente).

OPCIONES

Opciones generales

  • -a--all

    Recolecte todos los datos. Esto equivale a especificar --mdm-repository--collect-cores--max-cores=2--valgrind-cores--analyse-diag-coll.

  • -A--analyse-diag-coll

    Analizar recopilador de datos de diagnóstico (diag coll) datos

  • -b[COMPONENTS], --collect-cores[=COMPONENTS]

    Recopile los volcados de núcleo existentes para la lista separada por espacios de las áreas de usuario. COMPONENTS. Predeterminado (cuando COMPONENTS se omite): Todos los componentes del terreno del usuario
     

Nota: No debe haber espacio entre -b y COMPONENTES. Para la forma larga, sepárela con =

 

Ejemplo

-b'mdm sds'
--collect-cores='mdm sds'
  • -d OUT_DIR--output-dir=OUT_DIR

    Almacene el paquete resultante en el directorio OUT_DIR. Default: <WORK_DIR>/scaleio-getinfo (véase --work-dir).

  • -f--skip-mdm-login

    Omita la consulta de las credenciales de inicio de sesión MDM de PowerFlex. Es útil cuando el usuario ya inició sesión manualmente.

  • -h--help

    Muestre el mensaje de ayuda y salga. Cuando se combina con --tech, también muestra las opciones del técnico.

  • -J--xz

    Uso tar/xz Formato para el paquete recopilado en lugar del formato predeterminado tar/gz. Se ignora si el atributo tar(1) No es compatible --use-compress-program o xz(1) no se encuentra.

  • -k NUM--max-cores=NUM

    Recopile hasta NUM archivos principales de cada componente. Predeterminado: Todos los archivos principales, implica --collect-cores

  • -l--light

    Genere un paquete de luces. Solo se recolecta la generación más reciente de archivos de registro numerados y los archivos ejecutables o bibliotecas de componentes no se incluyen cuando se recolectan núcleos. El uso de esta opción reduce la capacidad de soporte y no se recomienda su uso.

  • -m NUM--max-traces=NUM

    Recopile hasta NUM Archivos de seguimiento de PowerFlex de cada componente. Predeterminado: Todos los archivos

  • -N--skip-space-check

    Omita la verificación del espacio libre en disco antes de la recolección de datos.

  • -P PATH--collect-path=PATH

    Recolecte la ruta adicional PATH. Solo se aceptan rutas absolutas. Acepta comodines; Los comodines deben estar entre comillas. Esta opción se puede especificar varias veces para recolectar varias rutas.

  • -q--quiet--silent

    Suprimir mensajes en la salida estándar.

  • -r--mdm-repository

    Recopile archivos de repositorio de MDM.

  • -s--skip-sdbg

    Omite la recopilación de la salida de SDBG (depurador de diagnóstico).

  • -S--pause-core-generation

    Ponga en pausa la generación de núcleos de los componentes de PowerFlex durante la recolección de datos. La configuración original se restaura después de que se completa la recopilación.

  • -w WORK_DIR--work-dir=WORK_DIR

    Usar directorio WORK_DIR para archivos temporales. Predeterminado: /tmp.

  • -x FILE--output-file=FILE

    Almacene el paquete recopilado como el archivo denominado FILE. El sufijo del nombre de archivo correspondiente (.tgz.zipy así sucesivamente) se agrega automáticamente. Si la solicitud en FILE es (guión), escriba el paquete en la salida estándar (implica --quiet). Cuando se escribe un paquete en la salida estándar, no se crea ningún archivo de paquete en el disco. Predeterminado: getInfoDump.

  • -z--zip

    Uso zip Formato para el paquete recopilado en lugar del formato predeterminado tar/gz. Se ignora si zip(1) no se encuentra en el sistema.

  • --mdm-port=PORT

    Conéctese al MDM mediante el puerto PORT para comandos de SCLI. Predeterminado: scli default behavior.

  • --overwrite-output-file

    Sobrescriba el archivo de salida si ya existe. Cuando se especifica explícitamente un archivo o directorio de salida (mediante -x o -d), el comportamiento predeterminado es negarse a sobrescribir; Esta opción reemplaza eso.

  • --tech

    Incluya las opciones del técnico en el mensaje de ayuda.

Opciones de inicio de sesión de MDM

Las siguientes opciones se transfieren a la SCLI --login comando. Su comportamiento y valores predeterminados se rigen por la SCLI.

  • -n--use-nonsecure-communication

    Conéctese al MDM en modo no seguro.

  • -p PASSWORD--password=PASSWORD

    Uso PASSWORD para iniciar sesión en MDM de PowerFlex. Predeterminado: Comportamiento predeterminado de la SCLI

  • -u USERNAME--username=USERNAME

    Uso USERNAME para iniciar sesión en MDM de PowerFlex. Predeterminado: Comportamiento predeterminado de la SCLI

  • --ldap-authentication

    Inicie sesión en la MDM de PowerFlex mediante la autenticación basada en LDAP.

  • --management-system-ip=ADDRESS

    Conéctese a SSO/M&O at ADDRESS para iniciar sesión en PowerFlex. Predeterminado: Comportamiento predeterminado de la SCLI

  • --p12-password=PASSWORD

    Cifrar el inicio de sesión de PowerFlex PKCS#12 archivo usando PASSWORD. Predeterminado: Comportamiento predeterminado de la SCLI

  • --p12-path=FILE

    Almacenar el inicio de sesión de PowerFlex PKCS#12 Archivo como FILE. Predeterminado: Comportamiento predeterminado de la SCLI

Opciones del técnico

Las siguientes opciones están destinadas a los técnicos de soporte y se muestran en el mensaje de ayuda solo cuando --tech se especifica.

  • -c[COMPONENTS], --generate-cores[=COMPONENTS]

Genere archivos principales (mediante gcore(1)) para la ejecución de los procesos de la lista separada por espacios del espacio de usuario COMPONENTS. Predeterminado: todos los componentes de la zona de usuario implican --collect-executablesy requiere gdb y gcore.

 
Nota: No debe haber espacio entre -c y COMPONENTS. Para la forma larga, sepárela con =
 

Ejemplos:

-c'mdm sds'
--generate-cores='mdm sds'
  • -C CORE_FILE--reference-core-file=CORE_FILE

    Recopile registros y núcleos de productos en relación con la hora de la última modificación (mtime) de CORE_FILE, en lugar de la hora de inicio de la ejecución. Implica --collect-cores

  • -E REF_TIME--event-time=REF_TIME

    Recopile registros y núcleos de productos en relación con REF_TIME, en lugar de la hora de inicio de la ejecución. Acepta cualquier formato que entienda date(1). Implica --collect-cores.

  • -g[COMPONENTS], --valgrind-cores[=COMPONENTS]

Recolectar valgrind Volcados principales para el espacio de usuario especificado COMPONENTS. Valor predeterminado: todos los componentes del área de usuario. Implica --collect-executables.

 
Nota: No debe haber espacio entre -b y COMPONENTS. Para la forma larga, sepárela con =
 

Ejemplos:

-g'mdm sds'
--valgrind-cores='mdm sds'
  • -t MIN--minutes-before-event=MIN

    Recopile los registros y núcleos de productos generados hasta un MIN minutos antes de la hora de referencia. Predeterminado: 15

  • -T MIN--minutes-after-event=MIN

    Recopile los registros y núcleos de productos generados hasta un MIN minutos después de la hora de referencia. Predeterminado: 5

  • -X[COMPONENTS], --collect-executables[=COMPONENTS]

    Recopile los ejecutables de los componentes y sus bibliotecas compartidas para el espacio de usuario especificado COMPONENTS. Predeterminado: Todos los componentes del terreno del usuario

 
Nota: No debe haber espacio entre -b y COMPONENTS. Para la forma larga, sepárela con =
 

Ejemplos:

-X'mdm sds'
--collect-executables='mdm sds'
  • --keep-work-dir

    Conserve el directorio de trabajo temporal generado después de la creación del paquete (se limpia automáticamente).

ESTRUCTURA DEL PAQUETE

El paquete de salida es un único archivo comprimido.

  • El directorio de nivel superior del paquete es el nombre de host del sistema recolectado.
  • Las salidas de comandos generales del host van a un server/ subdirectorio.
    El nombre de archivo es <command> + <arguments> + sufijo (.txt por defecto). Espacios reemplazados por _, caracteres no alfanuméricos despojados
    Ejemplo: server/ip_-s_addr.txt – output of ip -s addr
  • Las salidas de comandos del producto van al subdirectorio del componente. mdm/ para sclisdc/ para drv_cfgy así sucesivamente.
    Nombre del comando (sclidrv_cfgy así sucesivamente) se elimina. El primer argumento significativo se convierte en el nombre de archivo. Los archivos se asignan como el sufijo correspondiente, .txt de manera predeterminada.

Ejemplos: 

    • mdm/query_cluster.txt - Salida de scli --query_cluster
    • mdm/tgt_dump.txt - Salida de scli --debug_action --tgt_dump
    • sdc/query_mdms.txt - Salida de drv_cfg --query_mdms
    • sds/sdbg.txt - Salida de SDBG dumpallscreens para SDS
  • Archivos de componentes del producto (a diferencia de las salidas de comandos), <component>/cfg<component>/logsy así sucesivamente
    Copiado del directorio del componente con el prefijo eliminado.

Ejemplos: 

    • mdm/cfg/conf.txt - Copia de /opt/emc/scaleio/mdm/cfg/conf.txt
    • sds/logs/trc.0 - Copia de /opt/emc/scaleio/sds/logs/trc.0
  • Los archivos del sistema de archivos del host se colocan en su ruta del sistema de archivos en relación con la raíz del paquete.

Ejemplos:

    • etc/os-release - Copia de /etc/os-release
    • var/log/messages - Copia de /var/log/messages
    • proc/cpuinfo - Copia de /proc/cpuinfo
  • Los archivos del recopilador de diagnósticos (diag_coll) se copian con el /opt prefijo pelado, conservando la estructura interna.
    Ejemplo: diag_coll/logs/sar.0 - Copia de /opt/diag_coll/logs/sar.0
  • Los archivos ocultos (con prefijo de punto) se "ocultan" mediante la eliminación del punto inicial.
  • Registro de ejecución de utilidades, get_info_run.log, colocado directamente bajo el nombre> de <host/raíz

Estructura de árbol del directorio del paquete:

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

FILTRADO DE ARCHIVOS PRINCIPALES Y REGISTRO DEL PRODUCTO

Las opciones descritas en esta sección controlan cómo los archivos de registro de productos (también llamados archivos de seguimiento, por ejemplo) trc.0trc.1exp.0) y los archivos de volcado de memoria se seleccionan para su inclusión en el paquete recopilado. Para ello, definen un tiempo de referencia, una ventana de tiempo en torno a él y límites de conteo.

Cuando no se especifican opciones de filtrado, se recopilan todos los archivos de registro de productos y (si la recopilación de núcleos está habilitada) todos los archivos de volcado de memoria. Las opciones de filtrado reducen progresivamente esta selección, como se describe a continuación.

Tiempo de referencia

Se puede establecer una hora de referencia utilizando cualquiera de las siguientes opciones: -E/--event-time o -C/--reference-core-file.

Si ninguno de los dos --event-time ni tampoco --reference-core-file no se realiza ningún filtrado de ventana de tiempo: la hora de referencia se configura de forma predeterminada en la hora actual y se utiliza solo para el orden basado en la proximidad cuando un límite de recuento (-m o -k) está en vigor (consulte Límites de conteo a continuación).

Si ambos -E y -C , el último elemento de la línea de comandos surte efecto.

Ventana de tiempo

Cuando se establece una hora de referencia (mediante --event-time o --reference-core-file), se establece una ventana de tiempo a su alrededor. El alcance de la ventana de tiempo se puede configurar mediante: -t/--minutes-before-event y/o -T/--minutes-after-event, que se configuran de manera predeterminada en 15 y 5 minutos, respectivamente. Solo los archivos cuyo contenido se superpone con esta ventana son elegibles para la recopilación.

Por ejemplo: -E "2020-03-20 14:30" -t 10 -T 3 Recopila archivos que abarcan el período comprendido entre las 14:20:00 y las 14:33:00.

--minutes-before-event y --minutes-after-event se ignoran cuando ninguno de los dos --event-time ni tampoco --reference-core-file se especifica.

Límites de conteo

Se puede establecer un límite de conteo de archivos mediante lo siguiente: -m/--max-traces y -k/--max-cores, para los archivos de registro y los archivos principales, respectivamente. El límite se mide por componente.

Cuando hay más archivos NUM dentro de la ventana de tiempo (o están disponibles, si no hay ninguna ventana activa), se recopilan los archivos NUM más cercanos al tiempo de referencia.

Cuando se utiliza un límite de conteo sin --event-time o --reference-core-file, todos los archivos son candidatos (sin ventana de tiempo) y se seleccionan los archivos NUM más recientes.

Lógica de filtrado

El filtrado de archivos se aplica primero a la ventana de tiempo y, a continuación, al límite de conteo:

  1. Establecer candidatos. Se enumeran todos los archivos de registro de productos o los archivos de volcado de memoria de un componente.
  2. Derivar el contenido, punto. El contenido de los archivos de registro de productos representa un período. Se considera que el período de contenido comienza en el momento de la última modificación de su predecesor (mtime), o la época UNIX, cuando no existe ningún predecesor; Termina en el propio archivo mtime. Los archivos de volcado de memoria representan un punto en el tiempo, en el mtime.
  3. Aplicar ventana de tiempo (si -E o -C especificado). Los archivos cuyo contenido queda completamente fuera de la ventana se descartan de la selección. Para los archivos de registro de productos, si no hay ningún archivo dentro de la ventana, se conserva el archivo más cercano a la ventana, de modo que el paquete nunca esté vacío para un componente. Para los archivos de volcado principal, no se aplica tal reserva.
  4. Aplicar límite de conteo (si -m y/o -k especificado). Entre los archivos restantes, como máximo NUM están seleccionados, prefiriendo los más cercanos al tiempo de referencia. Los archivos anteriores y posteriores a la hora de referencia compiten por igual por la selección.

AUTENTICACIÓN

La utilidad intenta iniciar sesión en el MDM local si se detecta un proceso del MDM principal que escucha en el puerto esperado (predeterminado: 6611)

Las opciones de inicio de sesión de MDM se transfieren a la SCLI --login y son procesados por él.

Si el inicio de sesión falla, la utilidad finaliza con un error.

Cuando se omite el inicio de sesión, aún se intentan ejecutar comandos de SCLI (para admitir situaciones en las que el usuario inició sesión manualmente de antemano). Después de tres fallas de SCLI, se muestra una advertencia y se omiten todos los comandos adicionales de la SCLI.

El inicio de sesión se omite cuando:

  • No se encontró ningún proceso de MDM principal en el host local.
  • La variable --skip-mdm-login se especifica la opción.

El inicio de sesión falla cuando:

  • El propietario del proceso de MDM no está en la lista de usuarios autorizados (valor predeterminado: root) y el inicio de sesión seguro está habilitado.
  • La SCLI --login devuelve un error (por ejemplo, credenciales incorrectas).

ESPACIO DE DISCO

Los requisitos de espacio en disco para los archivos temporales y el paquete resultante pueden variar considerablemente.

La utilidad intenta minimizar el uso temporal del espacio; Se limita a salidas de comandos y copias de sistemas de archivos virtuales recopilados (/proc y /sys) archivos.

El paquete se puede transmitir desde un host remoto con --output-file=- para minimizar el uso del espacio de disco en el host de PowerFlex. El archivo de paquete se escribe directamente en la salida estándar (stdout) cuando se transmite; No se crea en el disco.

La utilidad calcula el espacio en disco necesario tanto para el directorio de trabajo temporal como para el paquete de salida antes de recopilar datos.

Si el espacio necesario estimado supera el espacio disponible en los sistemas de archivos pertinentes, la utilidad finaliza con un error. Esta comprobación se puede omitir con --skip-space-check.

El directorio de trabajo y el directorio de salida pueden residir en sistemas de archivos diferentes; Cada uno se comprueba de forma independiente.

Los requisitos de espacio estimados se escriben en el archivo de registro de la utilidad, get_info_run.log.

ESTADO DE SALIDA

0 Finalización correcta
1 Error (argumentos no válidos, espacio insuficiente, falla de inicio de sesión, otra instancia ya en ejecución, falla en la generación del paquete, señal detectada, etc.)

ARCHIVOS

<WORK_DIR>/get_info_run.log Registro de ejecución (también en el paquete)
<WORK_DIR>/scaleio-getinfo-tmp/ Directorio de trabajo temporal (limpiado cuando se realiza correctamente)
/tmp/scaleio-getinfo/getInfoDump.tgz Ubicación predeterminada del paquete de salida
<WORK_DIR>/scaleio-getinfo-extra/
/tmp/scaleio-getinfo-extra/
Directorios de datos de diagnóstico adicionales opcionales
/tmp/scaleio-getinfo-backup/ Respaldos temporales de archivos de configuración modificados (creados automáticamente)
/opt/emc/scaleio/ Directorio de instalación de PowerFlex

ENTORNO

Requisitos previos

  • La utilidad se debe ejecutar como root (o un usuario con privilegios suficientes para leer archivos de componentes, ejecutar comandos de diagnóstico y acceder a /proc/sysy así sucesivamente).
  • Utilidades estándar: targzipstatfindawksedgetopt(1) (mejorado), nice.
  • Opcional: zip (para --zip), xz (para --xz), gdb/gcore (para --generate-cores).

Simultaneidad

Solo una instancia de get_info.sh puede ejecutarse a la vez. La utilidad comprueba si existe una instancia en ejecución mediante pidof(1) y termina si se encuentra una instancia.

Manejo de señales

Las trampas de utilidad INTEXITTERM señales durante la recopilación de datos. Al recibir una señal, hace lo siguiente:

  1. Restaura los archivos de configuración respaldados (por ejemplo, los ajustes de generación del núcleo).
  2. Limpia directorios temporales
  3. Sale con el estado 1

El registro de ejecución se conserva y su ruta se imprime en error estándar.

Ejemplos

Recopile un paquete de soporte estándar:

get_info.sh

Transmita un paquete a través de una conexión SSH, sin crear un archivo de paquete en el host de PowerFlex remoto:

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

Use un directorio de trabajo diferente para evitar llenarlo /tmp:

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

Incluya rutas personalizadas en el paquete:

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

Recopile el volcado de memoria más reciente solo para los componentes de SDS y MDM:

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

Recopile datos centrados en torno a la hora de modificación de un archivo principal, con una ventana de tiempo personalizada:

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: 21 May 2026
Version:  3
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.