Red Hat Training

A Red Hat training course is available for RHEL 8

Configuração do mapeador de dispositivos multicaminhos

Red Hat Enterprise Linux 8

Usando o recurso Multipath Mapper Device Mapper

Resumo

Esta coleção de documentação fornece instruções sobre como configurar e gerenciar o recurso Device Mapper Multipath (DM-Multipath) no Red Hat Enterprise Linux 8.

Tornando o código aberto mais inclusivo

A Red Hat tem o compromisso de substituir a linguagem problemática em nosso código, documentação e propriedades da web. Estamos começando com estes quatro termos: master, slave, blacklist e whitelist. Por causa da enormidade deste esforço, estas mudanças serão implementadas gradualmente ao longo de vários lançamentos futuros. Para mais detalhes, veja a mensagem de nosso CTO Chris Wright.

Fornecendo feedback sobre a documentação da Red Hat

Agradecemos sua contribuição em nossa documentação. Por favor, diga-nos como podemos melhorá-la. Para fazer isso:

  • Para comentários simples sobre passagens específicas:

    1. Certifique-se de que você está visualizando a documentação no formato Multi-page HTML. Além disso, certifique-se de ver o botão Feedback no canto superior direito do documento.
    2. Use o cursor do mouse para destacar a parte do texto que você deseja comentar.
    3. Clique no pop-up Add Feedback que aparece abaixo do texto destacado.
    4. Siga as instruções apresentadas.
  • Para enviar comentários mais complexos, crie um bilhete Bugzilla:

    1. Ir para o site da Bugzilla.
    2. Como Componente, use Documentation.
    3. Preencha o campo Description com sua sugestão de melhoria. Inclua um link para a(s) parte(s) relevante(s) da documentação.
    4. Clique em Submit Bug.

Capítulo 1. Visão geral do mapeador de dispositivos multicaminhos

Com o Device mapper multipathing (DM Multipath), você pode configurar múltiplos caminhos de E/S entre nós de servidor e matrizes de armazenamento em um único dispositivo. Estes caminhos de E/S são conexões físicas de Rede de Área de Armazenamento (SAN) que podem incluir cabos, switches e controladores separados. O multicaminhos agrega os caminhos de E/S e cria um novo dispositivo que consiste nos caminhos agregados.

A DM Multipath fornece:

  • Redundância

    O DM Multipath pode fornecer failover em uma configuração ativa/passiva. Em uma configuração ativa/passiva, apenas metade dos caminhos são usados a qualquer momento para E/S. Se qualquer elemento de um caminho de E/S (o cabo, interruptor ou controlador) falhar, o DM Multipath muda para um caminho alternativo.

  • Melhoria do desempenho

    DM Multipath pode ser configurado em um modo ativo/ativo, onde as E/S estão espalhadas pelos caminhos de forma rotunda. Em algumas configurações, o DM Multipath pode detectar a carga nos caminhos de E/S e reequilibrar dinamicamente a carga.

1.1. Diferentes configurações DM Multipath

A seguir estão os poucos exemplos de configuração DM Multipath:

1.1.1. Configuração multipista ativa/passiva com um dispositivo RAID

Nesta configuração, há dois Adaptadores Host Bus (HBAs) no servidor, dois switches SAN, e dois controladores RAID. A seguir estão as possíveis falhas nesta configuração:

  • Falha na HBA
  • Falha do cabo de Fibre Channel
  • Falha do interruptor SAN
  • Falha na porta do controlador de matriz

Com DM Multipath configurado, uma falha em qualquer um destes pontos faz com que DM Multipath mude para o caminho de E/S alternativo. Figura 1.1, “Configuração multipista ativa/passiva com um dispositivo RAID” descreve a configuração com dois caminhos de E/S do servidor para um dispositivo RAID. Aqui, há um caminho de E/S que passa por hba1, SAN1, e cntrlr1 e um segundo caminho de E/S que passa por hba2, SAN2, e cntrlr2.

Figura 1.1. Configuração multipista ativa/passiva com um dispositivo RAID

active passive multipath configuration with one raid device

1.1.2. Configuração multipath ativo/passivo com dois dispositivos RAID

Nesta configuração, há dois HBAs no servidor, dois switches SAN, e dois dispositivos RAID com dois controladores RAID cada um. Com DM Multipath configurado, uma falha em qualquer um dos pontos do caminho de E/S para qualquer um dos dispositivos RAID faz com que DM Multipath mude para o caminho de E/S alternativo para aquele dispositivo. Figura 1.2, “Configuração multipista ativa/passiva com dois dispositivos RAID” descreve a configuração com dois caminhos de E/S para cada dispositivo RAID. Aqui, há dois caminhos de E/S para cada dispositivo RAID.

Figura 1.2. Configuração multipista ativa/passiva com dois dispositivos RAID

active passive multipath configuration with two raid device

1.1.3. Configuração multipath ativa/ativa com um dispositivo RAID

Nesta configuração, há dois HBAs no servidor, dois switches SAN e dois controladores RAID. Figura 1.3, “Configuração multipath ativa/ativa com um dispositivo RAID” descreve a configuração com dois caminhos de E/S do servidor para um dispositivo de armazenamento. Aqui, as E/S podem ser distribuídas entre estes dois caminhos.

Figura 1.3. Configuração multipath ativa/ativa com um dispositivo RAID

active passive multipath configuration with one raid device

1.2. Componentes DM Multipath

Tabela 1.1, “Componentes do DM Multipath” descreve os componentes DM Multipath.

Tabela 1.1. Componentes do DM Multipath

Componente

Descrição

dm_multipath módulo kernel

Reencaminha E/S e apóia o failover para caminhos e grupos de caminhos.

mpathconf utilidade

Configura e habilita o mapeamento de dispositivos multicaminhos.

multipath comando

Lista e configura os dispositivos multipath. Também é executado por udev sempre que um dispositivo de bloco é adicionado, para determinar se o dispositivo deve ou não fazer parte de um dispositivo multipath.

multipathd daemon

Cria e remove automaticamente dispositivos multipath e monitora caminhos; como os caminhos falham e voltam, ele pode atualizar o dispositivo multipath. Permite mudanças interativas nos dispositivos multicaminhos. Recarregue o serviço se houver alguma alteração no arquivo /etc/multipath.conf.

kpartx comando

Cria dispositivos mapeadores de dispositivos para as divisórias em um dispositivo. Este comando é executado automaticamente por udev quando são criados dispositivos multipath para criar dispositivos de partição em cima deles. O comando kpartx é fornecido em seu próprio pacote, mas o pacote device-mapper-multipath depende dele.

mpathpersist

Estabelece SCSI-3 reservas persistentes em dispositivos multipath. Este comando funciona de forma semelhante ao modo como sg_persist funciona para dispositivos SCSI que não são multipath, mas ele trata de estabelecer reservas persistentes em todos os caminhos de um dispositivo multipath. Ele coordena com multipathd para garantir que as reservas sejam configuradas corretamente nos caminhos que são adicionados posteriormente. Para utilizar esta funcionalidade, o atributo reservation_key deve ser definido no arquivo /etc/multipath.conf. Caso contrário, o daemon multipathd não verificará a existência de reservas persistentes para caminhos recém-descobertos ou caminhos restabelecidos.

Recursos adicionais

  • A página do homem multipath.
  • A página do homem multipathd.
  • O arquivo /etc/multipath.conf.

Capítulo 2. Dispositivos multicaminhos

Sem DM Multipath, o sistema trata cada caminho de um nó de servidor para um controlador de armazenamento como um dispositivo separado, mesmo quando o caminho de E/S conecta o mesmo nó de servidor ao mesmo controlador de armazenamento. O DM Multipath fornece uma maneira de organizar os caminhos de E/S de forma lógica, criando um único dispositivo multipath no topo dos dispositivos subjacentes.

2.1. Identificadores de dispositivos multicaminhos

Quando novos dispositivos estão sob o controle da DM Multipath, esses dispositivos são criados no diretório /dev/mapper/ e /dev/. Quaisquer dispositivos do formulário /dev/dm-X são apenas para uso interno e nunca devem ser usados diretamente pelo administrador.

Nomes de dispositivos multicaminhos:

  • Quando a opção de configuração user_friendly_names está definida para no, o nome do dispositivo multipath está definido para World Wide Identifier (WWID). Por padrão, o nome de um dispositivo multicaminhos é definido para seu WWID. O nome do dispositivo seria /dev/mapper/WWID. Ele também é criado no diretório /dev/, nomeado como /dev/dm-X.
  • Alternativamente, você pode definir a opção user_friendly_names para yes no arquivo /etc/multipath.conf. Isto define o alias na seção multipath para um nome único do formulário mpathN. O nome do dispositivo seria /dev/mapper/mpathN e /dev/dm-X. Mas não é garantido que o nome do dispositivo seja o mesmo em todos os nós que utilizam o dispositivo multipath. Da mesma forma, se você definir a opção alias no arquivo /etc/multipath.conf, o nome não é automaticamente consistente em todos os nós do cluster.

    Isto não deve causar nenhuma dificuldade se você usar LVM para criar dispositivos lógicos a partir do dispositivo multipath. Para manter os nomes de seus dispositivos multicaminhos consistentes em cada nó, a Red Hat recomenda desativar a opção user_friendly_names.

Por exemplo, um nó com dois HBAs ligados a um controlador de armazenamento com duas portas por meio de um único interruptor FC sem zonagem vê quatro dispositivos: /dev/sda, /dev/sdb, /dev/sdc e /dev/sdd. DM Multipath cria um único dispositivo com um único WWID que redireciona E/S para esses quatro dispositivos subjacentes de acordo com a configuração multipath.

Além das opções user_friendly_names e alias, um dispositivo multicaminhos também possui outros atributos. Você pode modificar esses atributos para um dispositivo multicaminhos específico criando uma entrada para esse dispositivo na seção multipaths do arquivo /etc/multipath.conf.

Recursos adicionais

2.2. Dispositivos multicaminhos em volumes lógicos

Depois de criar dispositivos multicaminhos, você pode usar os nomes dos dispositivos multicaminhos assim como usaria um nome de dispositivo físico ao criar um volume físico LVM. Por exemplo, se /dev/mapper/mpatha for o nome de um dispositivo multicaminhos, o comando pvcreate /dev/mapper/mpatha marca /dev/mapper/mpatha como um volume físico.

Você pode usar o dispositivo físico LVM resultante quando você cria um grupo de volume LVM da mesma forma que usaria qualquer outro dispositivo físico LVM.

Nota

Se você tentar criar um volume físico LVM em todo um dispositivo no qual você tenha configurado partições, o comando pvcreate falha. Os programas de instalação Anaconda e Kickstart criam tabelas de partições vazias se você não especificar o contrário para cada dispositivo de bloco. Se você quiser usar o dispositivo inteiro em vez de criar uma partição, remova as partições existentes do dispositivo. Você pode remover as partições existentes com o comando do dispositivo kpartx -d e o utilitário fdisk. Se seu sistema tiver dispositivos de bloco maiores que 2Tb, use o utilitário parted para remover as partições.

Quando você cria um volume lógico LVM que usa active/passive matrizes multicaminhos como os dispositivos físicos subjacentes, você pode opcionalmente, incluir filtros no arquivo /etc/lvm/lvm.conf para excluir os discos que sublinham os dispositivos multicaminhos. Isto porque se o array muda automaticamente o caminho ativo para o caminho passivo quando recebe E/S, o multipath irá falhar e failback sempre que o LVM varrer o caminho passivo se estes dispositivos não forem filtrados. Para os arrays active/passive que requerem um comando para tornar o caminho passivo ativo, o LVM imprime uma mensagem de aviso quando isto ocorre.

Para filtrar todos os dispositivos sd no arquivo /etc/lvm/lvm.conf, adicione o filter = [ "r/block/", "r/disk/", "r/sd./", "a/./" ] filtro na seção devices do arquivo.

Recursos adicionais

Capítulo 3. Criação da DM Multipath

Antes de configurar o DM Multipath em seu sistema, certifique-se de que seu sistema tenha sido atualizado e inclua o pacote device-mapper-multipath.

3.1. Configuração básica DM Multipath

Você criou o DM Multipath com o utilitário mpathconf, que cria o arquivo de configuração multipath /etc/multipath.conf.

  • Se o arquivo /etc/multipath.conf já existir, o utilitário mpathconf irá editá-lo.
  • Se o arquivo /etc/multipath.conf não existir, o utilitário mpathconf criará o arquivo /etc/multipath.conf a partir do zero.

Para mais informações sobre a utilidade mpathconf, consulte a página de manual mpathconf(8).

Se você não precisar editar o arquivo /etc/multipath.conf, você pode configurar o DM Multipath para uma configuração básica de failover, executando o seguinte comando mpathconf. Este comando habilita o arquivo de configuração multi-caminho e inicia o daemon multipathd.

# mpathconf --enable --with_multipathd y

Se você precisar editar o arquivo /etc/multipath.conf antes de iniciar o daemon multipathd. use o seguinte procedimento para configurar o DM Multipath para uma configuração básica de failover.

  1. Digite o comando mpathconf com a opção --enable especificada:

    # mpathconf --enable

    Para informações sobre opções adicionais ao comando mpathconf que você possa precisar, consulte a página de manual mpathconf(8) ou entre no comando mpathconf com a opção --help especificada.

    # mpathconf --help
    usage: /sbin/mpathconf <command>
    
    Commands:
    Enable: --enable
    Disable: --disable
    Set user_friendly_names (Default y): --user_friendly_names <y|n>
    Set find_multipaths (Default y): --find_multipaths <y|n>
    Load the dm-multipath modules on enable (Default y): --with_module  <y|n>
    start/stop/reload multipathd (Default n): --with_multipathd  <y|n>
  2. Edite o arquivo /etc/multipath.conf, se necessário. As configurações padrão para DM Multipath são compiladas para o sistema e não precisam ser explicitamente definidas no arquivo /etc/multipath.conf.

    O valor padrão de path_grouping_policy está definido como failover, portanto, neste exemplo, você não precisa editar o arquivo /etc/multipath.conf.

    A seção inicial de padrões do arquivo de configuração configura seu sistema para que os nomes dos dispositivos multicaminhos sejam da forma /dev/mapper/mpathn ; sem esta configuração, os nomes dos dispositivos multicaminhos seriam aliados à WWID do dispositivo. Se você não quiser usar nomes fáceis de usar, você pode digitar o seguinte comando:

    # mpathconf --enable --user_friendly_names n
  3. Salve o arquivo de configuração e saia do editor, se necessário.
  4. Execute o seguinte comando:

    # systemctl start multipathd.service
Nota

Se você descobrir que precisa editar o arquivo de configuração multipath após ter iniciado o daemon multipath, você deve executar o comando systemctl reload multipathd.service para que as mudanças entrem em vigor.

3.2. Ignorar os discos locais ao gerar dispositivos multipath

Algumas máquinas têm cartões SCSI locais para seus discos internos. O DM Multipath não é recomendado para estes dispositivos. Se você definir o parâmetro de configuração find_multipaths para on, você não deve ter que colocar estes dispositivos na lista negra. Se você não definir o parâmetro de configuração find_multipaths para on, você pode usar o seguinte procedimento para modificar o arquivo de configuração multipath para ignorar os discos locais ao configurar o multipath.

Procedimento

  1. Determinar quais discos são os discos internos. Nestes exemplos, /dev/sda é o disco interno:

    • Exibir os dispositivos multicaminhos existentes:

      # multipath -v2 -l
      
      SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 dm-2 WINSYS,SF2372
      size=33 GB features="0" hwhandler="0" wp=rw
      `-+- policy='round-robin 0' prio=0 status=active
        |- 0:0:0:0 sda 8:0 active undef running
    • Exibir dispositivos multipath adicionais que a DM Multipath poderia criar:

      # multipath -v2 -d
      
      : SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 undef WINSYS,SF2372
      size=33 GB features="0" hwhandler="0" wp=undef
      `-+- policy='round-robin 0' prio=1 status=undef
        |- 0:0:0:0 sda 8:0  undef ready running
  2. Edite a seção blacklist do arquivo /etc/multipath.conf para incluir este dispositivo.

    Identificar o dispositivo usando seu atributo WWID. Embora você pudesse identificar o dispositivo sda usando um tipo devnode, isso não seria um procedimento seguro, pois /dev/sda não tem garantia de ser o mesmo na reinicialização.

    No exemplo anterior, a WWID do dispositivo /dev/sda é SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1. Para ignorar este dispositivo, inclua o seguinte no arquivo /etc/multipath.conf:

    blacklist {
          wwid SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1
    }
  3. Recarregue o arquivo /etc/multipath.conf atualizado:

    # systemctl reload multipathd.service

Recursos adicionais

  • Para informações sobre o parâmetro de configuração find_multipaths e o significado dos valores para os quais você pode definir este parâmetro, consulte a página de manual multipath.conf(5).

3.3. Configuração de dispositivos adicionais de armazenamento

Por padrão, o DM Multipath inclui suporte para as matrizes de armazenamento mais comuns que suportam eles mesmos o DM Multipath. Para informações sobre o valor de configuração padrão, incluindo os dispositivos suportados, execute um dos seguintes comandos.

# multipathd show config
# multipath -t

Se você precisar adicionar um dispositivo de armazenamento que não seja suportado por padrão como um dispositivo multicaminhos conhecido, edite o arquivo /etc/multipath.conf e insira as informações apropriadas do dispositivo.

Por exemplo, para acrescentar informações sobre a série HP Open-V, a entrada se parece com isto. Este exemplo coloca o dispositivo em fila de espera por um minuto (ou 12 tentativas e 5 segundos por tentativa) depois de todos os caminhos terem falhado.

devices {
        device {
                vendor "HP"
                product "OPEN-V"
                no_path_retry 12
        }
}

3.4. Configuração de multicaminhos no sistema de arquivos initramfs

Você pode configurar o multicaminhos no sistema de arquivos initramfs. Após configurar o multipath, você pode reconstruir o sistema de arquivos initramfs com os arquivos de configuração multipath executando o comando dracut com as seguintes opções:

# dracut --force --add multipath

Se você executar multipath a partir do sistema de arquivos initramfs e fizer quaisquer mudanças nos arquivos de configuração multipath, você deve reconstruir o sistema de arquivos initramfs para que as mudanças tenham efeito.

Capítulo 4. Modificando o arquivo de configuração DM-Multipath

Por padrão, o DM Multipath fornece valores de configuração para os usos mais comuns do multipathing. Além disso, o DM Multipath inclui suporte para as matrizes de armazenamento mais comuns que suportam o DM Multipath por si só. Para obter informações sobre os valores de configuração padrão, incluindo os dispositivos suportados, execute um dos seguintes comandos.

# multipathd show config
# multipath -t

Você pode substituir os valores de configuração padrão para DM Multipath editando o arquivo de configuração /etc/multipath.conf. Se necessário, você também pode adicionar uma matriz de armazenamento que não é suportada por padrão ao arquivo de configuração.

Nota

Você pode executar a configuração de multicaminhos no sistema de arquivos initramfs. Se você executar multicaminhos a partir do sistema de arquivos initramfs e fizer qualquer alteração nos arquivos de configuração de multicaminhos, você deve reconstruir o sistema de arquivos initramfs para que as alterações tenham efeito.

No arquivo de configuração multicaminhos, você precisa especificar apenas as seções que você precisa para sua configuração, ou que deseja mudar dos valores padrão. Se há seções do arquivo que não são relevantes para seu ambiente ou para as quais você não precisa sobrepor os valores padrão, você pode deixá-las comentadas, como elas estão no arquivo inicial.

O arquivo de configuração permite uma sintaxe de descrição de expressão regular.

Mais informações sobre o arquivo de configuração podem ser encontradas na página de manual multipath.conf(5).

4.1. Visão geral do arquivo de configuração

O arquivo de configuração multicaminhos está dividido nas seções seguintes:

lista negra
Listagem de dispositivos específicos que não serão considerados para multicaminhos.
lista negra_excepções
Listagem de candidatos multicaminhos que de outra forma estariam na lista negra de acordo com os parâmetros da seção da lista negra.
inadimplência
Configurações gerais padrão para DM Multipath.
multipatas
Configurações para as características dos dispositivos individuais multipath. Estes valores sobrescrevem o especificado nas seções overrides, devices e defaults do arquivo de configuração.
dispositivos
Configurações para os controladores de armazenamento individuais. Estes valores sobrescrevem o que está especificado na seção defaults do arquivo de configuração. Se você estiver usando um array de armazenamento que não é suportado por padrão, talvez seja necessário criar uma subseção devices para seu array.
anula
Configurações que são aplicadas a todos os dispositivos. Estes valores sobrescrevem o que está especificado nas seções devices e defaults do arquivo de configuração.

Quando o sistema determina os atributos de um dispositivo multicaminhos, primeiro ele verifica as configurações de multicaminhos, depois as configurações dos dispositivos, depois os padrões do sistema multicaminhos.

4.2. DM Multipath overrides do timeout do dispositivo

A opção recovery_tmo sysfs controla o timeout de um determinado dispositivo iSCSI. As opções a seguir substituem globalmente os valores recovery_tmo:

  • A opção de configuração replacement_timeout sobrepõe globalmente o valor recovery_tmo para todos os dispositivos iSCSI.
  • Para todos os dispositivos iSCSI que são gerenciados pela DM Multipath, a opção fast_io_fail_tmo em DM Multipath sobrepõe globalmente o valor recovery_tmo.

    A opção fast_io_fail_tmo em DM Multipath também anula a opção fast_io_fail_tmo em dispositivos Fibre Channel.

A opção DM Multipath fast_io_fail_tmo tem precedência sobre replacement_timeout. A Red Hat não recomenda usar replacement_timeout para substituir recovery_tmo em dispositivos gerenciados pela DM Multipath porque a DM Multipath sempre reinicia recovery_tmo quando o serviço multipathd é recarregado.

4.3. Dispositivos de lista negra da DM Multipath

A seção blacklist do arquivo de configuração multipath especifica os dispositivos que não serão usados quando o sistema configurar dispositivos multipath. Os dispositivos que estiverem na lista negra não serão agrupados em um dispositivo multicaminhos.

Se o parâmetro de configuração find_multipaths estiver definido para off, o multipath sempre tenta criar um dispositivo multipath para cada caminho que não esteja explicitamente na lista negra. Se o parâmetro de configuração find_multipaths for definido para on, então o multipath criará um dispositivo somente se uma das três condições for atendida:

  • Há pelo menos dois caminhos que não estão na lista negra com a mesma WWID.
  • O usuário força manualmente a criação do dispositivo, especificando um dispositivo com o comando multipath.
  • Um caminho tem o mesmo WWID que um dispositivo multipath que foi criado anteriormente (mesmo que esse dispositivo multipath não exista atualmente). Sempre que um dispositivo multipath é criado, o multipath lembra-se da WWID do dispositivo para que ele crie automaticamente o dispositivo novamente assim que vir um caminho com essa WWID. Isto permite que você tenha multipath escolhendo automaticamente os caminhos corretos para transformar em dispositivos multipath, sem ter que editar a lista negra de multipath.

    Se você tiver criado anteriormente um dispositivo multicaminhos sem usar o parâmetro find_multipaths e depois definir o parâmetro para on, você pode precisar remover os WWIDs de qualquer dispositivo que não queira criar como um dispositivo multicaminhos do arquivo /etc/multipath/wwids. A seguir, um exemplo do arquivo /etc/multipath/wwids. Os WWIDs são fechados por cortes (/):

    # Multipath wwids, Version : 1.0
    # NOTE: This file is automatically maintained by multipath and multipathd.
    # You should not need to edit this file in normal circumstances.
    #
    # Valid WWIDs:
    /3600d0230000000000e13955cc3757802/
    /3600d0230000000000e13955cc3757801/
    /3600d0230000000000e13955cc3757800/
    /3600d02300069c9ce09d41c31f29d4c00/
    /SWINSYS  SF2372         0E13955CC3757802/
    /3600d0230000000000e13955cc3757803/

Além de on e off, você também pode definir find_multipaths para os seguintes valores:

  • strict: o multipath nunca aceita caminhos que não tenham sido previamente multipathados e, portanto, não estão no arquivo /etc/multipath/wwids.
  • smart: multipath sempre aceita dispositivos não incluídos na lista negra no udev assim que eles aparecem, mas se multipathd não criar o dispositivo dentro de um tempo limite estabelecido com o parâmetro find_multipaths_timeout, ele irá liberar sua reivindicação sobre o dispositivo. Para obter informações sobre o parâmetro find_multipaths_timeout, consulte a página de manual multipath.conf(5).

O valor padrão embutido de find_multipaths é off. O arquivo padrão multipath.conf criado por mpathconf, entretanto, definirá o valor de find_multipaths para on.

Para mais informações sobre os valores que você pode definir para find_multipaths, consulte a página de manual multipath.conf(5).

Com o parâmetro find_multipaths ajustado para on, você precisa colocar na lista negra apenas os dispositivos com caminhos múltiplos que não deseja que sejam multipathed. Por causa disso, geralmente não será necessário colocar os dispositivos na lista negra.

Se você precisar colocar dispositivos na lista negra, você pode colocar dispositivos na lista negra por WWID, nome do dispositivo, tipo de dispositivo, propriedade e protocolo. Para cada dispositivo, estes cinco critérios da lista negra são avaliados na ordem "propriedade, devnode, dispositivo, protocolo, wwid". Se um dispositivo for incluído na lista negra por qualquer critério, ele é excluído do manuseio por multipathd, e os critérios posteriores não são avaliados. Para cada critério, a lista branca tem precedência sobre a lista negra se um dispositivo corresponder a ambos.

Por padrão, uma variedade de tipos de dispositivos estão na lista negra, mesmo depois que você comenta a seção inicial da lista negra do arquivo de configuração. Para informações, veja Seção 4.3.2, “Colocação na lista negra por nome de dispositivo”.

4.3.1. Colocação na lista negra pela WWID

Você pode especificar dispositivos individuais para inclusão na lista negra através de sua identificação mundial com uma entrada em wwid na seção blacklist do arquivo de configuração.

O exemplo seguinte mostra as linhas no arquivo de configuração que colocariam na lista negra um dispositivo com uma WWID de 26353900f02796769.

blacklist {
       wwid 26353900f02796769
}

4.3.2. Colocação na lista negra por nome de dispositivo

Você pode colocar na lista negra tipos de dispositivos por nome de dispositivo para que eles não sejam agrupados em um dispositivo multicaminhos especificando uma entrada em devnode na seção blacklist do arquivo de configuração.

O exemplo seguinte mostra as linhas no arquivo de configuração que colocariam todos os dispositivos SCSI na lista negra, uma vez que ele coloca todos os dispositivos sd* na lista negra.

blacklist {
       devnode "^sd[a-z]"
}

Você pode usar uma entrada devnode na seção blacklist do arquivo de configuração para especificar dispositivos individuais a serem colocados na lista negra em vez de todos os dispositivos de um tipo específico. Isto não é recomendado, entretanto, pois a menos que seja mapeado estaticamente pelas regras do udev, não há garantia de que um dispositivo específico terá o mesmo nome na reinicialização. Por exemplo, o nome de um dispositivo poderia mudar de /dev/sda para /dev/sdb na reinicialização.

Por padrão, as seguintes entradas devnode são compiladas na lista negra padrão; os dispositivos que estas entradas da lista negra geralmente não suportam DM Multipath. Para ativar o multipathing em qualquer um destes dispositivos, seria necessário especificá-los na seção blacklist_exceptions do arquivo de configuração, como descrito em Seção 4.3.6, “Exceções da lista negra”.

blacklist {
       devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
       devnode "^(td|ha)d[a-z]"
}

4.3.3. Colocação em lista negra por tipo de dispositivo

Você pode especificar tipos específicos de dispositivos na seção blacklist do arquivo de configuração com uma seção device. O exemplo a seguir lista negra todos os dispositivos IBM DS4200 e HP.

blacklist {
       device {
               vendor  "IBM"
               product "3S42"       #DS4200 Product 10
       }
       device {
               vendor  "HP"
               product ".*"
       }
}

4.3.4. Lista negra por udev property

As seções blacklist e blacklist_exceptions do arquivo de configuração multipath.conf suportam o parâmetro property. Este parâmetro permite que os usuários coloquem certos tipos de dispositivos na lista negra. O parâmetro property toma uma cadeia de expressão regular que é comparada com o nome da variável de ambiente udev para o dispositivo.

O exemplo a seguir relaciona todos os dispositivos com a propriedade udev ID_ATA.

blacklist {
        property "ID_ATA"
}

4.3.5. Colocação em lista negra por protocolo de dispositivo

Você pode especificar o protocolo para um dispositivo a ser excluído do multipathing na seção blacklist do arquivo de configuração com uma seção protocol. As cadeias de protocolos que o multicaminhos reconhece são scsi:fcp, scsi:spi, scsi:ssa, scsi:sbp, scsi:srp, scsi:iscsi, scsi:sas, scsi:adt, scsi:ata, scsi:unspec, ccw, cciss, nvme, e undef. O protocolo que um caminho está usando pode ser visto executando o comando multipathd show paths format "%d %P".

O exemplo seguinte lista negra todos os dispositivos com um protocolo indefinido ou um tipo de transporte SCSI desconhecido.

blacklist {
        protocol "scsi:unspec"
        protocol "undef"
}

4.3.6. Exceções da lista negra

Você pode usar a seção blacklist_exceptions do arquivo de configuração para habilitar o multicaminhos em dispositivos que foram colocados na lista negra por padrão.

Por exemplo, se você tiver um grande número de dispositivos e quiser fazer uma lista negra de todos eles (com a WWID de 3600d0230000000000e13955cc3757803), em vez de colocar individualmente cada um dos dispositivos na lista negra, exceto aquele que você deseja, você poderia, em vez disso, colocar todos eles na lista negra e, em seguida, permitir apenas aquele que você deseja, adicionando as seguintes linhas ao arquivo /etc/multipath.conf.

blacklist {
        wwid ".*"
}

blacklist_exceptions {
        wwid "3600d0230000000000e13955cc3757803"
}

Ao especificar os dispositivos na seção blacklist_exceptions do arquivo de configuração, é necessário especificar as exceções da mesma forma como foram especificadas na lista negra. Por exemplo, uma exceção WWID não se aplicará aos dispositivos especificados por uma entrada na lista negra do devnode, mesmo que o dispositivo da lista negra esteja associado a essa WWID. Da mesma forma, devnode exceções se aplicam somente às entradas devnode, e device exceções se aplicam somente às entradas de dispositivos.

O parâmetro property funciona de forma diferente dos outros parâmetros blacklist_exception. Se o parâmetro for definido, o dispositivo deve ter uma variável udev que corresponda. Caso contrário, o dispositivo estará na lista negra. Este parâmetro permite aos usuários colocar na lista negra os dispositivos SCSI que os multicaminhos devem ignorar, tais como pendrives e discos rígidos locais. Para permitir apenas dispositivos SCSI que poderiam ser razoavelmente multicaminhos, defina este parâmetro para SCSI_IDENT_|ID_WWN), como no exemplo a seguir.

blacklist_exceptions {
        property "(SCSI_IDENT_|ID_WWN)"
}

4.4. Modificando os padrões do arquivo de configuração multi-caminho

O arquivo de configuração /etc/multipath.conf inclui uma seção defaults que define o parâmetro user_friendly_names como yes, como segue.

defaults {
        user_friendly_names yes
}

Isto sobrescreve o valor padrão do parâmetro user_friendly_names.

O arquivo de configuração inclui um modelo de padrões de configuração. Esta seção é comentada da seguinte forma.

#defaults {
#       polling_interval        10
#       path_selector           "round-robin 0"
#       path_grouping_policy    multibus
#       uid_attribute           ID_SERIAL
#       prio                    alua
#       path_checker            readsector0
#       rr_min_io               100
#       max_fds                 8192
#       rr_weight               priorities
#       failback                immediate
#       no_path_retry           fail
#       user_friendly_names     yes
#}

Para sobregravar o valor padrão de qualquer parâmetro de configuração, você pode copiar a linha relevante deste modelo para a seção defaults e descomentar. Por exemplo, para sobrescrever o parâmetro path_grouping_policy para que seja multibus ao invés do valor padrão de failover, copie a linha apropriada do modelo para a seção inicial defaults do arquivo de configuração, e descomente-o, como a seguir.

defaults {
        user_friendly_names     yes
        path_grouping_policy    multibus
}

Para informações sobre os atributos que estão definidos na seção defaults do arquivo de configuração multipath.conf, consulte a página de manual multipath.conf(5). Estes valores são usados pela DM Multipath a menos que sejam sobrescritos pelos atributos especificados nas seções devices, multipaths, ou overrides do arquivo multipath.conf.

4.5. Modificação de configurações multipath para dispositivos específicos

Os atributos na seção multipaths do arquivo de configuração multipath.conf se aplicam somente ao multipath especificado. Estes padrões são usados pela DM Multipath e os atributos de substituição definidos nas seções overrides, defaults, e devices do arquivo multipath.conf.

Para informações sobre os atributos que estão definidos na seção multipaths do arquivo de configuração multipath.conf, consulte a página de manual multipath.conf(5).

O exemplo a seguir mostra atributos multicaminhos especificados no arquivo de configuração para dois dispositivos multicaminhos específicos. O primeiro dispositivo tem um WWID de 3600508b4000156d70001200000b0000 e um nome simbólico de yellow.

O segundo dispositivo multipath no exemplo tem uma WWID de 1DEC_321816758474 e um nome simbólico de red. Neste exemplo, os atributos rr_weight estão definidos para priorities.

multipaths {
       multipath {
              wwid                  3600508b4000156d70001200000b0000
              alias                 yellow
              path_grouping_policy  multibus
              path_selector         "round-robin 0"
              failback              manual
              rr_weight             priorities
              no_path_retry         5
       }
       multipath {
              wwid                  1DEC_321816758474
              alias                 red
              rr_weight             priorities
        }
}

4.6. Modificação de configurações multipath para controladores de armazenamento

A seção devices do arquivo de configuração multipath.conf define atributos para dispositivos de armazenamento individuais. Estes atributos são usados pela DM Multipath a menos que sejam sobrescritos pelos atributos especificados nas seções multipaths ou overrides do arquivo multipath.conf para caminhos que contenham o dispositivo. Estes atributos substituem os atributos definidos na seção defaults do arquivo multipath.conf.

Para informações sobre os atributos que estão definidos na seção devices do arquivo de configuração multipath.conf, consulte a página de manual multipath.conf(5).

Muitos dispositivos que suportam multipathing estão incluídos por padrão em uma configuração multipathing. Para informações sobre o valor padrão da configuração, incluindo os dispositivos suportados, execute um dos seguintes comandos.

# multipathd show config
# multipath -t

Você provavelmente não precisará modificar os valores para estes dispositivos, mas se você fizer isso, você pode sobrescrever os valores padrão incluindo uma entrada no arquivo de configuração do dispositivo que sobrescreve estes valores. Você pode copiar os valores padrão de configuração do dispositivo que o comando multipathd show config exibe e sobrescrever os valores que você deseja modificar.

Para adicionar um dispositivo que não é configurado automaticamente por padrão a esta seção do arquivo de configuração, você precisa definir os parâmetros vendor e product. Você pode encontrar estes valores olhando para /sys/block/device_name/device/vendor e /sys/block/device_name/device/model onde device_name é o dispositivo a ser multipathed, como no exemplo a seguir:

# cat /sys/block/sda/device/vendor
WINSYS
# cat /sys/block/sda/device/model
SF2372

Os parâmetros adicionais a especificar dependem de seu dispositivo específico. Se o dispositivo estiver ativo/ativo, você normalmente não precisará definir parâmetros adicionais. Talvez você queira definir path_grouping_policy para multibus. Outros parâmetros que você talvez precise definir são no_path_retry e rr_min_io.

Se o dispositivo estiver ativo/passivo, mas muda automaticamente os caminhos com E/S para o caminho passivo, você precisa mudar a função de verificação para uma que não envie E/S para o caminho para testar se ele está funcionando (caso contrário, seu dispositivo continuará a falhar). Isto quase sempre significa que você configura o path_checker para tur; isto funciona para todos os dispositivos SCSI que suportam o comando Test Unit Ready, o que a maioria faz.

Se o dispositivo precisar de um comando especial para mudar os caminhos, então a configuração deste dispositivo para multicaminhos requer um módulo de kernel manipulador de hardware. O manipulador de hardware atualmente disponível é emc. Se isto não for suficiente para seu dispositivo, você pode não ser capaz de configurar o dispositivo para multipath.

O exemplo a seguir mostra uma entrada device no arquivo de configuração multipath.

#	}
#	device {
#		vendor			"COMPAQ  "
#		product			"MSA1000         "
#		path_grouping_policy	multibus
#		path_checker		tur
#		rr_weight		priorities
#	}
#}

4.7. Definição de valores multipath para todos os dispositivos

A seção overrides do arquivo de configuração multipath.conf permite que você defina um valor de configuração para todos os seus dispositivos. Por exemplo, você pode querer que todos os dispositivos definam no_path_retry para fail. Esta seção suporta todos os atributos que são suportados pela seção devices e defaults do arquivo de configuração multipath.conf, que são todos os atributos da seção devices exceto vendor, product e revision. Estes atributos são usados pela DM Multipath para todos os dispositivos a menos que sejam sobrescritos pelos atributos especificados na seção multipaths do arquivo multipath.conf para caminhos que contenham o dispositivo. Estes atributos substituem os atributos especificados nas seções devices e defaults do arquivo multipath.conf.

Para informações sobre os atributos que estão definidos nas seções devices e defaults do arquivo de configuração multipath.conf, consulte a página de manual multipath.conf(5).

Capítulo 5. Gerenciando volumes multi-pipo

O DM-Multipath fornece uma variedade de ferramentas e comandos que você pode usar para gerenciar volumes multipath.

5.1. O comando multipath

O comando multipath é usado para detectar e coalescer múltiplos caminhos para dispositivos. Ele oferece uma variedade de opções que você pode usar para administrar seus dispositivos multipathed.

Tabela 5.1, “Útil multipath Opções de comando” descreve algumas opções do comando multipath que você pode achar útil.

Tabela 5.1. Útil multipath Opções de comando

OpçãoDescrição

-l

Mostrar a configuração atual de multicaminhos coletada de sysfs e o mapeador de dispositivos.

-ll

Exibir a configuração atual de multicaminhos coletada de sysfs, o mapeador de dispositivos, e todos os outros componentes disponíveis no sistema.

-f device

Remova o dispositivo multicaminhos nomeado.

-F

Remover todos os dispositivos multicaminhos não utilizados.

-w device

Remover o wwid do dispositivo especificado do arquivo wwids.

-W

Redefinir o arquivo wwids para incluir apenas os dispositivos multipath atuais.

5.1.1. Saída de comando multipath

Quando você cria, modifica ou lista um dispositivo multicaminhos, você obtém uma exibição da configuração atual do dispositivo. O formato é o seguinte.

Para cada dispositivo multipath:

action_if_any: alias (wwid_if_different_from_alias) dm_device_name_if_known vendor,product size=size features='features' hwhandler='hardware_handler' wp=write_permission_if_known

Para cada grupo de caminhos:

- - policy='scheduling_policy' prio=prio_if_known status=path_group_status_if_known

Para cada caminho:

 `- host:channel:id:lun devnode major:minor dm_status_if_known path_status online_status

Por exemplo, a saída de um comando multicaminhos pode aparecer como se segue:

3600d0230000000000e13955cc3757800 dm-1 WINSYS,SF2372
size=269G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 6:0:0:0 sdb 8:16  active ready  running
`-+- policy='round-robin 0' prio=1 status=enabled
  `- 7:0:0:0 sdf 8:80  active ready  running

Se o caminho estiver pronto para E/S, o status do caminho é ready ou ghost. Se o caminho estiver para baixo, o status é faulty ou shaky. O status do caminho é atualizado periodicamente pelo daemon multipathd com base no intervalo de sondagem definido no arquivo /etc/multipath.conf.

Os valores adicionais possíveis de status do caminho são os seguintes.

  • i/o pending: O verificador está verificando ativamente este caminho, e o estado será atualizado em breve.
  • i/o timeout: Este é o mesmo que faulty. Ele permite ao usuário saber que o verificador não retornou nem o sucesso nem o fracasso antes do período de tempo limite.
  • removed: O caminho foi removido do sistema, e em breve será removido do dispositivo multipath. Ele é tratado da mesma forma que faulty.
  • wild: multipathd não foi capaz de executar o verificador de caminho, por causa de um erro interno ou problema de configuração. Isto é mais ou menos o mesmo que faulty, exceto que o multipath saltará muitas ações no caminho.
  • unchecked: O verificador de caminho não funcionou neste caminho, ou porque acabou de ser descoberto, não tem um verificador de caminho atribuído, ou o verificador de caminho encontrou um erro. Isto é tratado da mesma forma que wild.
  • delayed: O verificador de caminho retornou que o caminho está em alta, mas o multipath está atrasando o restabelecimento do caminho porque o caminho falhou recentemente várias vezes e o multipath foi configurado para atrasar os caminhos neste caso.

O status dm é semelhante ao status do caminho, mas do ponto de vista do kernel. O estado active dm abrange os estados dos caminhos ready e ghost. O estado do caminho pending não tem um estado dm equivalente. Todos os outros estados de caminho mapeados para o estado failed dm. O estado dm manterá seu status atual até que o verificador de caminho tenha sido concluído.

Os valores possíveis para online_status são running e offline. Um status de offline significa que este dispositivo SCSI foi desativado.

Nota

Quando um dispositivo multipath está sendo criado ou modificado, o status do grupo de caminhos, o nome do dispositivo dm, as permissões de escrita e o status dm não são conhecidos. Além disso, as características nem sempre são corretas.

5.1.2. Exibindo configuração multi-caminho

Você pode usar as opções -l e -ll do comando multipath para exibir a atual configuração multipath. A opção -l exibe a topologia multicaminhos coletada a partir de informações em sysfs e o mapeador de dispositivos. A opção -ll exibe as informações que a opção -l exibe, além de todos os outros componentes disponíveis do sistema.

Ao exibir a configuração multipath, você pode especificar um nível de verbosidade com a opção -v do comando multipath. Especificar -v0 não rende nenhum resultado. Especificar -v1 produz somente os nomes de multicaminhos criados ou atualizados, os quais você pode então alimentar outras ferramentas, como kpartx. Especificar -v2 imprime todos os caminhos detectados, multipercursos e mapas de dispositivos. Para informações ainda mais detalhadas, você também pode especificar -v3, -v4 , ou -v5.

O exemplo a seguir mostra a saída de um comando multipath -l.

# multipath -l
3600d0230000000000e13955cc3757800 dm-1 WINSYS,SF2372
size=269G features='0' hwhandler='0' wp=rw
|-- policy='round-robin 0' prio=1 status=active
| `- 6:0:0:0 sdb 8:16  active ready  running
`-- policy='round-robin 0' prio=1 status=enabled
  `- 7:0:0:0 sdf 8:80  active ready  running

O exemplo a seguir mostra a saída de um comando multipath -ll.

# multipath -ll
3600d0230000000000e13955cc3757801 dm-10 WINSYS,SF2372
size=269G features='0' hwhandler='0' wp=rw
|-- policy='round-robin 0' prio=1 status=enabled
| `- 19:0:0:1 sdc 8:32  active ready  running
`-- policy='round-robin 0' prio=1 status=enabled
  `- 18:0:0:1 sdh 8:112 active ready  running
3600d0230000000000e13955cc3757803 dm-2 WINSYS,SF2372
size=125G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 19:0:0:3 sde 8:64  active ready  running
  `- 18:0:0:3 sdj 8:144 active ready  running

5.2. Redimensionamento de um dispositivo multipath online

Se você precisar redimensionar um dispositivo multipath online, use o seguinte procedimento.

  1. Redimensione seu dispositivo físico.
  2. Execute o seguinte comando para encontrar os caminhos para o LUN:

    # multipath -l
  3. Redimensione seus caminhos. Para os dispositivos SCSI, escrever um 1 no arquivo rescan para o dispositivo faz com que o driver SCSI seja redimensionado, como no seguinte comando:

    # echo 1 > /sys/block/path_device/device/rescan

    Assegure-se de executar este comando para cada um dos dispositivos do caminho. Por exemplo, se seus dispositivos de caminho são sda, sdb, sde, e sdf, você executaria os seguintes comandos:

    # echo 1 > /sys/block/sda/device/rescan
    # echo 1 > /sys/block/sdb/device/rescan
    # echo 1 > /sys/block/sde/device/rescan
    # echo 1 > /sys/block/sdf/device/rescan
  4. Redimensione seu dispositivo multipath executando o comando multipathd resize:

    # multipathd resize map multipath_device
  5. Redimensionar o sistema de arquivo (assumindo que não sejam usadas partições LVM ou DOS):

    # resize2fs /dev/mapper/mpatha

5.3. Movendo um sistema de arquivo raiz de um dispositivo de um único caminho para um dispositivo de múltiplos caminhos

Se você instalou seu sistema em um dispositivo de um único caminho e mais tarde adicionou outro caminho ao sistema de arquivos raiz, você precisará mover seu sistema de arquivos raiz para um dispositivo com vários caminhos. Esta seção documenta o procedimento para mover de um dispositivo de um único caminho para um dispositivo multi-percurso.

Depois de garantir que você tenha instalado o pacote device-mapper-multipath, execute o seguinte procedimento:

  1. Executar o seguinte comando para criar o arquivo de configuração /etc/multipath.conf, carregar o módulo multicaminhos e definir chkconfig para o multipathd a on:

    # mpathconf --enable
  2. Se o parâmetro de configuração find_multipaths não estiver definido para yes, edite as seções blacklist e blacklist_exceptions do arquivo /etc/multipath.conf, conforme descrito em Seção 4.3, “Dispositivos de lista negra da DM Multipath”.
  3. Para que o multipath construa um dispositivo multipath no topo do dispositivo raiz assim que for descoberto, digite o seguinte comando. Este comando também garante que find_multipaths permitirá o dispositivo, mesmo que ele tenha apenas um caminho.

    # multipath -a root_devname

    Por exemplo, se o dispositivo raiz for /dev/sdb, digite o seguinte comando.

    # multipath -a /dev/sdb
    wwid '3600d02300069c9ce09d41c4ac9c53200' added
  4. Para confirmar que seu arquivo de configuração está configurado corretamente, você pode digitar o comando multipath e procurar a saída por uma linha do seguinte formato. Isto indica que o comando falhou na criação do dispositivo multipath.

    date  wwid: ignoring map

    Por exemplo, se a WWID se o dispositivo for 3600d02300069c9ce09d41c4ac9c53200, você verá uma linha na saída como a seguinte:

    # multipath
    Oct 21 09:37:19 | 3600d02300069c9ce09d41c4ac9c53200: ignoring map
  5. Para reconstruir o sistema de arquivos initramfs com multipath, execute o comando dracut com as seguintes opções:

    # dracut --force -H --add multipath
  6. Desligue a máquina.
  7. Configurar o interruptor FC para que outros caminhos sejam visíveis para a máquina.
  8. Bootar a máquina.
  9. Verifique se o sistema de arquivo raiz ('/') está no dispositivo multipathed.

5.4. Movendo um sistema de arquivo swap de um dispositivo de caminho único para um dispositivo de múltiplos caminhos

Por padrão, os dispositivos de troca são configurados como volumes lógicos. Isto não requer nenhum procedimento especial para configurá-los como dispositivos multicaminhos desde que você configure multicaminhos nos volumes físicos que constituem o grupo de volume lógico. Entretanto, se seu dispositivo swap não for um volume LVM, e for montado pelo nome do dispositivo, talvez seja necessário editar o arquivo /etc/fstab para mudar para o nome do dispositivo multipath apropriado.

  1. Determine o número WWID do dispositivo swap executando o comando /sbin/multipath com a opção -v3. A saída do comando deve mostrar o dispositivo swap na lista de caminhos.

    Você deve procurar na saída do comando por uma linha do seguinte formato, mostrando o dispositivo swap:

    WWID  H:B:T:L devname MAJOR:MINOR

    Por exemplo, se seu sistema de arquivo swap estiver configurado em sda ou em uma de suas partições, você verá uma linha na saída, como a seguinte:

    ===== paths list =====
    ...
    1ATA     WDC WD800JD-75MSA3                           WD-WMAM9F 1:0:0:0 sda 8:0
    ...
  2. Configure um pseudônimo para o dispositivo swap no arquivo /etc/multipath.conf:

    multipaths {
        multipath {
            wwid WWID_of_swap_device
            alias swapdev
        }
    }
  3. Edite o arquivo /etc/fstab e substitua o caminho do dispositivo antigo para o dispositivo raiz pelo dispositivo multipath.

    Por exemplo, se você tivesse a seguinte entrada no arquivo /etc/fstab:

    /dev/sda2 swap                    swap    defaults        0 0

    Você mudaria a entrada para o seguinte:

    /dev/mapper/swapdev swap          swap    defaults        0 0

5.5. Determinação de entradas do mapeador de dispositivos com o comando dmsetup

Você pode usar o comando dmsetup para descobrir quais entradas de mapeadores de dispositivos correspondem aos dispositivos multipathed.

O seguinte comando exibe todos os dispositivos de mapeamento de dispositivos e seus números maiores e menores. Os números menores determinam o nome do dispositivo dm. Por exemplo, um número menor de 3 corresponde ao dispositivo multipathed /dev/dm-3.

# dmsetup ls
mpathd  (253:4)
mpathep1        (253:12)
mpathfp1        (253:11)
mpathb  (253:3)
mpathgp1        (253:14)
mpathhp1        (253:13)
mpatha  (253:2)
mpathh  (253:9)
mpathg  (253:8)
VolGroup00-LogVol01     (253:1)
mpathf  (253:7)
VolGroup00-LogVol00     (253:0)
mpathe  (253:6)
mpathbp1        (253:10)
mpathd  (253:5)

5.6. Administrando o daemon multipathd

Os comandos multipathd podem ser usados para administrar o daemon multipathd. Para informações sobre os comandos disponíveis multipathd, consulte a página de manual multipathd(8).

O seguinte comando mostra o formato padrão padrão para a saída do comando multipathd show maps.

# multipathd show maps
name sysfs uuid
mpathc dm-0 360a98000324669436c2b45666c567942

Alguns comandos multipathd incluem uma opção format seguida por um wildcard. Você pode exibir uma lista de curingas disponíveis com o seguinte comando.

# multipathd show wildcards

O comando multipathd suporta comandos de formato que mostram o status de dispositivos multipath e caminhos em versões em formato "raw". No formato "raw", nenhum cabeçalho é impresso e os campos não são acolchoados para alinhar as colunas com os cabeçalhos. Em vez disso, os campos são impressos exatamente como especificado na cadeia de formato. Esta saída pode então ser mais facilmente utilizada para escrita de scripts. Você pode exibir os wildcards usados na cadeia de formato com o comando multipathd show wildcards.

Os seguintes comandos multipathd mostram os dispositivos multicaminhos que multipathd está monitorando, usando uma cadeia de formatos com wildcards multicaminhos, em formato regular e cru.

list|show maps|multipaths format $format
list|show maps|multipaths raw format $format

Os seguintes comandos multipathd mostram os caminhos que multipathd está monitorando, usando uma cadeia de formatos com wildcards multicaminhos, em formato regular e cru.

list|show paths format $format
list|show paths raw format $format

Os comandos a seguir mostram a diferença entre os formatos não-raw e raw para o multipathd show maps. Observe que no formato raw não há cabeçalhos e somente um único espaço entre as colunas.

# multipathd show maps format "%n %w %d %s"
name   uuid                              sysfs vend/prod/rev
mpathc 360a98000324669436c2b45666c567942 dm-0  NETAPP,LUN

# multipathd show maps raw format "%n %w %d %s"
mpathc 360a98000324669436c2b45666c567942 dm-0 NETAPP,LUN

5.7. Limpeza de arquivos multicaminhos na remoção de embalagens

Se você tiver a oportunidade de remover o arquivo device-mapper-multipath rpm ., observe que isto não remove os arquivos /etc/multipath.conf, /etc/multipath/bindings, e /etc/multipath/wwids. Talvez seja necessário remover esses arquivos manualmente em instalações subseqüentes do pacote device-mapper-multipath.

Diretiva não-resolvida em master.adoc - inclui::montagens/montagem_removimento-armazenamentodispositivos.adoc[leveloffset= 1] :leveloffset: 1

Parte I. Solução de problemas DM Multipath

Se você tiver problemas para implementar uma configuração multipath, há uma variedade de problemas que você pode verificar.

Capítulo 6. Lista de verificação para solução de problemas DM Multipath

As seguintes questões podem resultar em uma configuração lenta ou não funcional multipath.

6.1. O daemon multipath não está funcionando

Se você encontrar problemas na implementação de uma configuração multipath, você deve garantir que o daemon multipath esteja funcionando, como descrito em Capítulo 3, Criação da DM Multipath.

O daemon multipathd deve estar funcionando para poder usar dispositivos multipatados.

6.2. Questões com recurso de fila_se_não_caminho_de_fila

Se um dispositivo multicaminhos for configurado com features "1 queue_if_no_path", então qualquer processo que emite E/S ficará pendurado até que um ou mais caminhos sejam restaurados. Para evitar isso, configure o parâmetro no_path_retry N no arquivo /etc/multipath.conf (onde N é o número de vezes que o sistema deve tentar novamente um caminho).

Se você precisar usar a opção features "1 queue_if_no_path" e experimentar a questão aqui mencionada, você pode desativar a política de fila em tempo de execução para um determinado LUN (ou seja, para o qual todos os caminhos não estão disponíveis). O seguinte comando desativa a enfileiramento para um dispositivo específico.

mapa multipathd de desativação da fila de espera device

O seguinte comando desativa a fila de espera para todos os dispositivos.

mapas multipathd de desativação de enfileiramento

Após ter desativado a fila para um dispositivo, ele permanecerá desativado até que multipathd seja reiniciado ou recarregado ou até que você receba um dos seguintes comandos.

O seguinte comando repõe o enfileiramento a seu valor anterior para um dispositivo específico.

mapa multipathd restorequeueing device

O seguinte comando repõe o enfileiramento a seu valor anterior para todos os dispositivos.

mapas multipathd restorequeueing

Capítulo 7. Solução de problemas com o console interativo multipathd

O comando multipathd -k é uma interface interativa para o daemon multipathd. Ao entrar neste comando, surge um console multipath interativo. Após executar este comando, você pode entrar em help para obter uma lista de comandos disponíveis, você pode entrar em um comando interativo, ou pode entrar em CTRL-D para sair.

O console interativo multipathd pode ser usado para solucionar problemas que você possa estar tendo com seu sistema. Por exemplo, a seqüência de comandos a seguir exibe a configuração multipath, incluindo as configurações padrão, antes de sair do console.

# multipathd -k
> > show config
> > CTRL-D

A seguinte seqüência de comandos garante que o multipath tenha captado quaisquer mudanças no multipath.conf,

# multipathd -k
> > reconfigure
> > CTRL-D

Use a seguinte seqüência de comandos para garantir que o verificador de caminho esteja funcionando corretamente.

# multipathd -k
> > show paths
> > CTRL-D

Capítulo 8. Configuração do tempo máximo para recuperação de erros de armazenamento com eh_deadline

Você pode configurar o tempo máximo permitido para recuperar dispositivos SCSI falhos. Esta configuração garante um tempo de resposta de E/S mesmo quando o hardware de armazenamento fica sem resposta devido a uma falha.

8.1. O parâmetro eh_deadline

O mecanismo de tratamento de erros SCSI (EH) tenta realizar a recuperação de erros em dispositivos SCSI falhos. O objeto host SCSI eh_deadline permite configurar a quantidade máxima de tempo para a recuperação. Após o tempo configurado expirar, o SCSI EH pára e restabelece todo o adaptador do barramento host (HBA).

O uso do site eh_deadline pode reduzir o tempo:

  • para fechar um caminho fracassado,
  • para mudar um caminho, ou
  • para desativar uma fatia RAID.
Atenção

Quando eh_deadline expira, SCSI EH restabelece a HBA, que afeta todos os caminhos alvo dessa HBA, e não apenas o de falha. Se alguns dos caminhos redundantes não estiverem disponíveis por outros motivos, podem ocorrer erros de E/S. Habilite eh_deadline somente se você tiver uma configuração multipath totalmente redundante em todos os alvos.

Cenários quando eh_deadline é útil

Na maioria dos cenários, você não precisa habilitar eh_deadline. Usar eh_deadline pode ser útil em certos cenários específicos, por exemplo, se ocorrer uma perda de link entre uma chave de canal de fibra (FC) e uma porta de destino, e a HBA não receber notificações de mudança de estado registrada (RSCNs). Neste caso, os pedidos de E/S e os comandos de recuperação de erros são sempre enviados ao invés de encontrar um erro. A configuração de eh_deadline neste ambiente coloca um limite superior no tempo de recuperação. Isso permite que as E/S falhadas sejam novamente testadas em outro caminho disponível pela DM Multipath.

Sob as seguintes condições, a funcionalidade eh_deadline não oferece nenhum benefício adicional, pois os comandos de E/S e recuperação de erros falham imediatamente, o que permite que a DM Multipath volte a tentar:

  • Se as RSCNs estiverem habilitadas
  • Se a HBA não registrar o link ficando indisponível

Possíveis valores

O valor do eh_deadline é especificado em segundos.

A configuração padrão é off, o que desativa o limite de tempo e permite que toda a recuperação do erro ocorra.

8.2. Definição do parâmetro eh_deadline

Este procedimento configura o valor do parâmetro eh_deadline para limitar o tempo máximo de recuperação SCSI.

Procedimento

  • Você pode configurar eh_deadline usando um dos seguintes métodos:

    sysfs
    Escreva o número de segundos nos arquivos /sys/class/scsi_host/host*/eh_deadline.
    Parâmetro do núcleo
    Defina um valor padrão para todos os SCSI HBAs usando o parâmetro scsi_mod.eh_deadline kernel.