Utilice los comandos esxcli para agregar una regla de notificación de PSA de múltiples rutas al conjunto de reglas de notificación en el sistema. Para que la nueva regla de notificación sea activa, primero debe definir la regla y, a continuación, cargarla en el sistema.

A continuación se incluyen ejemplos de situaciones en las que se añade una regla de notificación de PSA:
  • Carga un MPP de terceros nuevo y debe definir las rutas de acceso que reclama este módulo.
  • Debe habilitar el complemento HPP nativo.
Advertencia: No puede crear reglas donde dos complementos diferentes reclamen rutas de acceso al mismo dispositivo. Al intentar crear este tipo de reglas de notificación, se produce un error con una advertencia en vmkernel.log.

Requisitos previos

Instale vCLI o implemente la máquina virtual de vSphere Management Assistant (vMA). Consulte Introducción a vSphere Command-Line Interface. Para solucionar problemas, ejecute los comandos de esxcli en ESXi Shell.

Procedimiento

  1. Para definir una nueva regla de notificación, utilice el comando siguiente:
    esxcli storage core claimrule add

    El comando admite las siguientes opciones:

    Opción Descripción
    -A|--adapter=<adapter> Adaptador de las rutas de acceso que se utilizará. Válido únicamente si --type es location.
    -u|--autoassign Agrega una regla de notificación en función de sus características. El número de regla no es necesario.
    -C|--channel=<channel> Canal de las rutas de acceso que se utilizará. Válido únicamente si --type es location.
    -c|--claimrule-class=<cl> Clase de regla de notificación que se utilizará en esta operación. Puede especificar MP (valor predeterminado), Filter o VAAI.

    A fin de configurar la aceleración de hardware para una nueva matriz, agregue dos reglas de notificación, una para el filtro VAAI y otra para el complemento VAAI. Consulte Agregar reglas de notificación de aceleración de hardware para obtener instrucciones detalladas.

    -d|--device=<device_uid> UID del dispositivo. Válido únicamente cuando --type es device.
    -D|--driver=<driver> Controlador para el HBA de las rutas de acceso que se utilizará. Válido únicamente si --type es driver.
    -f|--force Fuerce a las reglas de notificación a ignorar las comprobaciones de validez e instalar la regla de todas formas.
    --force-reserved Anule la protección de los rangos de identificadores de reglas reservadas.

    Las reglas de notificación reservadas son las reglas con un identificador inferior a 100. Puede utilizarlas para volver a asignar dispositivos locales a complementos específicos, por ejemplo, el dispositivo NVMe a HPP.

    --if-unset=<str> Ejecute este comando si esta variable de usuario avanzado no está establecida en 1.
    -i|--iqn=<iscsi_name> Nombre calificado de iSCSI para el destino. Válido únicamente cuando --type es target.
    -L|--lun=<lun_id> LUN de las rutas de acceso. Válido únicamente si --type es location.

    El identificador de LUN no debe ser mayor que el valor de la opción de configuración avanzada /Disk/MaxLUN.

    -M|--model=<model> Modelo de las rutas de acceso que se utilizará. Válido únicamente si --type es vendor.

    Los valores válidos son los valores de la cadena de modelo en la cadena de consulta de SCSI. Ejecute vicfg-scsidevs <conn_options> -l en cada dispositivo para ver los valores de cadena de modelo.

    -P|--plugin=<plugin> Complemento PSA que se utilizará. Los valores son NMP, MASK_PATH o HPP. Los terceros también pueden proporcionar sus propios complementos PSA. Requerido.
    -r|--rule=<rule_ID> Identificador de regla que se utilizará. El identificador de regla indica el orden en el que se evaluará la regla de notificación. Las reglas de notificación definidas por el usuario se evalúan en orden numérico a partir de 101.

    Puede ejecutar esxcli storage core claimrule list para determinar los identificadores de regla que deben estar disponibles.

    -T|--target=<target> Destino de las rutas de acceso que se utilizará. Válido únicamente si --type es location.
    -R|--transport=<transport>

    Transporte de las rutas de acceso que se utilizará. Válido únicamente si --type es transport. Se admiten los siguientes valores.

    • block: almacenamiento en bloque
    • fc: canal de fibra
    • iscsivendor: iSCSI
    • iscsi: no se encuentra en uso
    • ide: almacenamiento IDE
    • sas: almacenamiento SAS
    • sata: almacenamiento SATA
    • usb: almacenamiento USB
    • parallel: paralelo
    • fcoe: FCoE
    • unknown
    -t|--type=<type> Tipo de coincidencia que se utilizará para la operación. Los valores válidos son los siguientes. Requerido.
    • vendor
    • location
    • driver
    • transport
    • device
    • target
    -V|--vendor=<vendor> Proveedor de las rutas de acceso que se utilizará. Válido únicamente si --type es vendor.

    Los valores válidos son los valores de la cadena de proveedor en la cadena de consulta de SCSI. Ejecute vicfg-scsidevs <conn_options> -l en cada dispositivo para ver los valores de cadena de proveedor.

    --wwnn=<wwnn> Número de nodo a escala mundial para el destino.
    --wwpn=<wwpn> Número de puerto a escala mundial para el destino.
    -a|--xcopy-use-array-values Utilice los valores informados por la matriz para construir el comando XCOPY que se enviará a la matriz de almacenamiento. Esto se aplica únicamente a las reglas de notificación VAAI.
    -s|--xcopy-use-multi-segs Utilice varios segmentos al emitir una solicitud XCOPY. Válido únicamente si se especifica --xcopy-use-array-values.
    -m|--xcopy-max-transfer-size Tamaño máximo de transferencia de datos en MB cuando se utiliza un tamaño de transferencia diferente al informado por la matriz. Válido únicamente si se especifica --xcopy-use-array-values.
    -k|--xcopy-max-transfer-size-kib Tamaño máximo de transferencia en KiB para los comandos XCOPY cuando se utiliza un tamaño de transferencia diferente al informado por la matriz. Válido únicamente si se especifica --xcopy-use-array-values.
  2. Para cargar la nueva regla de notificación en el sistema, utilice el siguiente comando:
    esxcli storage core claimrule load
    Este comando carga todas las reglas de notificación de múltiples rutas recientemente creadas del archivo de configuración esx.conf al VMkernel. El comando no tiene opciones.
  3. Para aplicar las reglas de notificación cargadas, utilice el siguiente comando:
    esxcli storage core claimrule run

    El comando admite las siguientes opciones:

    Opción Descripción
    -A|--adapter=<adapter> Si --type es location, el nombre del HBA para las rutas de acceso en las que se ejecutarán las reglas de notificación. Para ejecutar las reglas de notificación en rutas de acceso de todos los adaptadores, omita esta opción.
    -C|--channel=<channel> Si --type es location, el valor del número de canal SCSI para las rutas de acceso en las que se ejecutarán las reglas de notificación. Para ejecutar las reglas de notificación en rutas de acceso con cualquier número de canal, omita esta opción.
    -c|--claimrule-class=<cl> Clase de regla de notificación que se utilizará en esta operación.
    -d|--device=<device_uid> UID del dispositivo.
    -L|--lun=<lun_id> Si --type es location, el valor del LUN de SCSI para las rutas de acceso en las que se ejecutarán las reglas de notificación. Para ejecutar las reglas de notificación en rutas de acceso con cualquier LUN, omita esta opción.
    -p|--path=<path_uid> Si --type es path, esta opción indica el identificador único de ruta de acceso (Unique Path Identifier, UID) o el nombre de tiempo de ejecución de una ruta de acceso en la que se ejecutarán las reglas de notificación.
    -T|--target=<target> Si --type es location, el valor del número de destino SCSI para las rutas de acceso en las que se ejecutarán las reglas de notificación. Para ejecutar las reglas de notificación en rutas de acceso con cualquier número de destino, omita esta opción.
    -t|--type=<location|path|all> Tipo de notificación que se ejecutará. De forma predeterminada, se utiliza all, lo que significa que las reglas de notificación se ejecutan sin restricción de rutas de acceso específicas o direcciones de SCSI. Los valores válidos son location, path y all.
    -w|--wait Puede utilizar esta opción únicamente si también utiliza --type all.

    Si se incluye la opción, la notificación espera que las rutas de acceso se asienten antes de ejecutar la operación de notificación. En ese caso, el sistema no iniciará el proceso de notificación hasta que sea factible que todas las rutas de acceso hayan aparecido en el sistema antes de iniciar el proceso de notificación.

    Después de que se inicia el proceso de notificación, el comando no devuelve resultados hasta que se completa el registro del dispositivo.

    Si se agregan o eliminan rutas de acceso durante el proceso de notificación o detección, es posible que esta opción no funcione correctamente.

Ejemplo: Definir reglas de notificación de múltiples rutas

En el siguiente ejemplo, se agrega y se carga la regla n.º 500. La regla notifica todas las rutas de acceso con la cadena del modelo NewMod y la cadena del proveedor NewVend para el complemento NMP.

# esxcli storage core claimrule add -r 500 -t vendor -V NewVend -M NewMod -P NMP

# esxcli storage core claimrule load

Después de ejecutar el comando esxcli storage core claimrule list, verá la nueva regla de notificación en la lista.

El siguiente resultado indica que la regla de notificación 500 se ha cargado en el sistema y está activa.
Rule Class  Rule   Class    Type       Plugin     Matches
...         ...    ...      ...        ...        ...
MP          500    runtime  vendor     NMP        vendor=NewVend model=NewMod  
MP          500    file     vendor     NMP        vendor=NewVend model=NewMod