Use os comandos esxcli para adicionar uma regra de declaração PSA de vários caminhos ao conjunto de regras de declaração no sistema. Para que a nova regra de declaração esteja ativa, primeiro defina a regra e, em seguida, carregue-a no sistema.

Exemplos de quando você adiciona uma regra de declaração de PSA incluem o seguinte:
  • Você carrega um novo MPP de terceiros e deve definir os caminhos que esse módulo reivindica.
  • Você deve habilitar o HPP nativo.
Aviso: Não é possível criar regras em que dois plug-ins diferentes reivindicam caminhos para o mesmo dispositivo. Suas tentativas de criar essas regras de declaração falham com um aviso em vmkernel.log.

Pré-requisitos

Instale o ESXCLI. Consulte Introdução ao ESXCLI. Para solucionar problemas, execute comandos esxcli no ESXi Shell.

Procedimento

  1. Para definir uma nova regra de declaração, use o seguinte comando:
    adição de regra de declaração do núcleo de armazenamento esxcli

    O comando usa as seguintes opções:

    Opção Descrição
    -A|--adapter=<adapter> Adaptador dos caminhos a serem usados. Válido somente se --type for location.
    -u|--autoassign Adiciona uma regra de declaração com base em suas características. O número da regra não é obrigatório.
    -C|--channel=<channel> Canal dos caminhos a serem usados. Válido somente se --type for location.
    -c|--claimrule-class=<cl> Classe de regra de declaração a ser usada nesta operação. Você pode especificar MP (padrão), Filter ou VAAI.

    Para configurar a aceleração de hardware para uma nova matriz, adicione duas regras de declaração, uma para o filtro VAAI e outra para o plug-in VAAI. Consulte Adicionar regras de reivindicação de aceleração de hardware para obter instruções detalhadas.

    -d|--device=<device_uid> UID do dispositivo. Válido somente quando --type for device.
    -D|--driver=<driver> Driver para o HBA dos caminhos a serem usados. Válido somente se --type for driver.
    -f|--force Force as regras de declaração a ignorar as verificações de validade e instale a regra de qualquer maneira.
    --force-reserved Substitua a proteção de intervalos de IDs de regras reservadas.

    As regras de reivindicação reservadas são as regras com um ID abaixo de 100. Você pode usá-los para reatribuir dispositivos locais a plug-ins específicos, por exemplo, o dispositivo NVMe para HPP.

    --if-unset=<str> Execute este comando se essa variável de usuário avançado não estiver definida como 1.
    -i|--iqn=<iscsi_name> Nome qualificado de iSCSI para o destino. Válido somente quando --type for target.
    -L|--lun=<lun_id> LUN dos caminhos. Válido somente se --type for location.

    A ID do LUN não deve ser superior ao valor da opção de configuração avançada /Disk/MaxLUN.

    -M|--model=<model> Modelo dos caminhos a serem usados. Válido somente se --type for vendor.

    Os valores válidos são os valores da cadeia de caracteres Modelo da cadeia de caracteres de consulta SCSI. Execute vicfg-scsidevs <conn_options> -l em cada dispositivo para ver os valores da cadeia de caracteres do modelo.

    -P|--plugin=<plugin> Plug-in PSA a ser usado. Os valores são NMP, MASK_PATH ou HPP. Terceiros também podem fornecer seus próprios plug-ins de PSA. Obrigatório.
    -r|--rule=<rule_ID> ID da regra a ser usada. A ID da regra indica a ordem na qual a regra de declaração deve ser avaliada. As regras de declaração definidas pelo usuário são avaliadas em ordem numérica, começando com 101.

    Você pode executar esxcli storage core claimrule list para determinar quais IDs de regra estão disponíveis.

    -T|--target=<target> Destino dos caminhos a serem usados. Válido somente se --type for location.
    -R|--transport=<transport>

    Transporte dos caminhos a serem usados. Válido somente se --type for transport. Os valores a seguir são compatíveis.

    • block — armazenamento em bloco
    • fc — Fibre Channel
    • iscsivendor — iSCSI
    • iscsi — não usado no momento
    • ide — armazenamento IDE
    • sas — Armazenamento SAS
    • sata — Armazenamento SATA
    • usb — armazenamento USB
    • parallel — paralelo
    • fcoe — FCoE
    • unknown
    -t|--type=<type> Tipo de correspondência a ser usada para a operação. Os valores válidos são os seguintes. Obrigatório.
    • vendor
    • location
    • driver
    • transport
    • device
    • target
    -V|--vendor=<vendor> Fornecedor dos caminhos a serem usados. Válido somente se --type for vendor.

    Os valores válidos são os valores da cadeia de caracteres do fornecedor da cadeia de caracteres de consulta SCSI. Execute vicfg-scsidevs <conn_options> -l em cada dispositivo para ver os valores de cadeia de caracteres do fornecedor.

    --wwnn=<wwnn> Número Mundial do Nó para o destino.
    --wwpn=<wwpn> Número de porta mundial para o destino.
    -a|--xcopy-use-array-values Use os valores relatados pela matriz para construir o comando XCOPY a ser enviado para a matriz de armazenamento. Isso se aplica somente às regras de reivindicação do VAAI.
    -s|--xcopy-use-multi-segs Use vários segmentos ao emitir uma solicitação XCOPY. Válido somente se --xcopy-use-array-values for especificado.
    -m|--xcopy-max-transfer-size Tamanho máximo de transferência de dados em MB quando você usa um tamanho de transferência diferente do relatado pela matriz. Válido somente se --xcopy-use-array-values for especificado.
    -k|--xcopy-max-transfer-size-kib Tamanho máximo de transferência em KiB para os comandos XCOPY quando você usa um tamanho de transferência diferente do que a matriz relatada. Válido somente se --xcopy-use-array-values for especificado.
  2. Para carregar a nova regra de declaração em seu sistema, use o seguinte comando:
    carga de regra de reivindicação do núcleo de armazenamento esxcli
    Esse comando carrega todas as regras de declaração de caminhos múltiplos recém-criadas do arquivo de configuração esx.conf no VMkernel. O comando não tem opções.
  3. Para aplicar as regras de declaração que estão carregadas, use o seguinte comando:
    execução da regra de reivindicação do núcleo de armazenamento esxcli

    O comando usa as seguintes opções:

    Opção Descrição
    -A|--adapter=<adapter> Se --type for location, nome do HBA para os caminhos nos quais as regras de declaração serão executadas. Para executar regras de declaração em caminhos de todos os adaptadores, omita essa opção.
    -C|--channel=<channel> Se --type for location, indique o canal dos caminhos a serem usados nesta operação. Para executar regras de declaração em caminhos com qualquer número de canal, omita essa opção.
    -c|--claimrule-class=<cl> Classe de regra de declaração a ser usada nesta operação.
    -d|--device=<device_uid> UID do dispositivo.
    -L|--lun=<lun_id> Se --type for location, indique o LUN dos caminhos no qual executar as regras de declaração. Para executar regras de declaração em caminhos com qualquer LUN, omita essa opção.
    -p|--path=<path_uid> Se --type for path, essa opção indicará o identificador de caminho exclusivo (UID) ou o nome do tempo de execução de um caminho no qual executar regras de declaração.
    -T|--target=<target> Se --type for location, indique o destino dos caminhos nos quais executar as regras de declaração. Para executar regras de declaração em caminhos com qualquer número de destino, omita essa opção.
    -t|--type=<location|path|all> Tipo de reivindicação a ser executada. Por padrão, usa all, o que significa que as regras de declaração são executadas sem restrição a caminhos específicos. Os valores válidos são location, path e all.
    -w|--wait Você poderá usar essa opção somente se também usar --type all.

    Se a opção for incluída, a reclamação aguardará a liquidação dos caminhos antes de executar a operação de reclamação. Nesse caso, o sistema não inicia o processo de reivindicação até que seja provável que todos os caminhos no sistema tenham aparecido antes de iniciar o processo de reivindicação.

    Após o início do processo de reivindicação, o comando não retorna até que o registro do dispositivo seja concluído.

    Se você adicionar ou remover caminhos durante o processo de reivindicação ou descoberta, essa opção poderá não funcionar corretamente.

Exemplo: Definindo regras de declaração de vários caminhos

No exemplo a seguir, você adiciona e carrega a regra nº 500. A regra reivindica todos os caminhos com a string de modelo NewMod e a string de fornecedor NewVend para o plug-in NMP.

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

# esxcli Storage Core Claimrule Load

Depois de executar o comando esxcli storage core Claimrule list, você poderá ver a nova regra de declaração aparecendo na lista.

A saída a seguir indica que a regra de declaração 500 foi carregada no sistema e está ativa.
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