Multipath é uma técnica de tolerância a falhas que geralmente visa fazer backup da conexão de servidores físicos com armazenamento. Quando houver danos nos cabos de fibra, é importante que o servidor não perca o acesso ao armazenamento e mantenha a acessibilidade. É por isso que sistemas como bancos e sites globais de comércio eletrônico usam o multipath.

Aqui está tudo o que você precisa saber sobre multipath no Linux.

Identificadores para dispositivos multipath em servidores

Para multipath, também é necessário procurar dispositivos multipath. Se você já ouviu falar do WWID (Identificador Mundial) antes, não soará muito estranho para você.

Por padrão, os nomes dos dispositivos multipath são definidos para seu WWID. Este é um sistema que garante que o dispositivo multipath seja globalmente único e imutável. Você pode definir a nomenclatura padrão aqui com algumas manipulações no arquivo de configuração do multipath alterando o user_friendly_names contexto.

Como exemplo, você pode pensar assim. Imagine que você tenha dispositivos de armazenamento conectados ao seu servidor, como:

instagram viewer
  • /dev/sda
  • /dev/sdb
  • /dev/sdc
  • /dev/sdd

Se o user_friendly_names opção estiver definida como "sim" neste momento, os nomes dos dispositivos serão alterados.

cat /etc/multipath.conf

# Resultado
padrões {
user_friendly_names sim
}

Se você tem um servidor Ubuntu que usa tecnologias de virtualização, você pode receber o seguinte resultado. O que você deve lembrar aqui é que o dispositivo que você deseja controlar deve ser um dispositivo físico.

Depois de definir o user_friendly_names opção para sim no arquivo de configuração, você pode verificar o nome do dispositivo da seguinte forma:

sudo fdisk -l

Procedimento para nomes de dispositivos de vários caminhos consistentes

O nome atribuído aos dispositivos multipath por este procedimento será exclusivo para um nó. Não é viável afirmar que se aplica a todos os nós. Se você deseja dispositivos multipath consistentes em todos os nós, defina o user_friendly_names opção para "não". Você reduzirá quaisquer problemas dessa maneira, pois os dispositivos não terão mais um apelido exclusivo e, em vez disso, utilizarão o WWID.

No entanto, em outras circunstâncias, você pode desejar projetar nós que sejam consistentes e mais fáceis de alcançar e utilizar.

Nesse caso, você deve primeiro instalar todos os dispositivos multipath em uma máquina. Você também deve desabilitar todos os dispositivos multipath em outras máquinas após esta etapa. Você pode executar os seguintes comandos para isso:

sudosystemctlPareferramentas multipath.serviço
sudo multipath -F

Com esses comandos, você interromperá respectivamente o serviço multipath e limpará todos os mapas de dispositivos multipath. Agora torne-se um usuário root e copie o ligações arquivo localizado no /etc/multipath diretório para outras máquinas.

Neste ponto, você estará usando o processos daemon do Linux. Após todas essas etapas, você precisa executar o multipathd daemon novamente:

sudosystemctlcomeçarferramentas multipath.serviço

Visão geral dos recursos gerais dos dispositivos Multipath

Os recursos e definições de configuração dos dispositivos Multipath não estão limitados a user_friendly_names. Abaixo você encontrará informações sobre algumas outras configurações que você pode fazer no /etc/mutipath.conf Arquivo:

  • lista negra { }: Se você deseja especificar quais dispositivos excluir do multipath, você pode escrever seus nomes entre as duas chaves.
    lista negra {
    devnode "^sda"
    }
  • dispositivos { }: Entre esses dois colchetes, você pode colocar alguns detalhes para dispositivos específicos.
    dispositivos {
    fornecedor "DELL"
    produtos "MD32xx"
    }
  • multicaminho { }: Neste campo, você pode definir os atributos de dispositivos multipath específicos. Assim como outros atributos, o multipath também possui muitos subatributos diferentes.
    multicaminho {
    wwid 3500405b170164c3911244b325426400b
    pseudônimo amarelo
    manual de failback
    }
  • blacklist_exceptions { }: Este campo é para dispositivos que estão na lista negra, mas você deseja que o multipath seja ativado para eles. Em vez de colocar todos os dispositivos na lista negra um por um, você pode colocar todos na lista negra e especificar os que deseja usar posteriormente neste campo.
    lista negra_exceções {
    wwid "3500405b170164c3911244b325426400b"
    }

É claro que nem todos os atributos estão limitados a eles, e cada atributo tem suas próprias subqualidades. Além disso, você pode usá-los em conjunto. Abaixo está um arquivo de configuração de exemplo para você revisar:

padrões {
user_friendly_names não
}
lista negra {
devnode "^sda"
}
lista negra_exceções {
devnode "sda|sdb"
dispositivo {
fornecedor "DELL"
produtos "MD32xx"
}
}
dispositivos {
dispositivo {
fornecedor "HP"
produtos "A6189A"
}
}
multicaminhos {
multicaminho {
wwid 3500405b170164c3911244b325426400b
pseudônimo vermelho
}
}

Lógica em Dispositivos Multipath

Você pode pensar em dispositivos multipath como unidades físicas. Por exemplo, deixe /dev/mapper/mpatha ser o nome de um dispositivo multipath. Este dispositivo funcionará como uma unidade física. Quando você cria um LVM (Logical Volume Management), você também precisará editar o /etc/lvm.conf Arquivo.

Com as configurações feitas aqui, você precisará filtrar os discos nos dispositivos multipath. Se você não fizer isso, o LVM irá varrer o caminho passivo e o multipath começará a funcionar novamente, porque o caminho ativo pode mudar automaticamente para o caminho passivo.

Para evitar isso, você pode fazer a seguinte manipulação no /etc/lvm.conf Arquivo:

filtro = [ "uma volta.*/", "r/.*/" ]

Este comando adicionará loops e removerá todos os dispositivos. No entanto, o processo não termina aí. Depois de fazer essa alteração /etc/lvm.conf, salve o arquivo e atualize o initrd também. initrd permite que você execute algumas manipulações no disco RAM. A razão pela qual você faz alterações aqui é copiá-las no momento da inicialização.

atualizar-initramfs -u -k tudo

Cada vez que o lvm.conf e multipath.conf arquivos são atualizados, é necessário realizar esta atualização em initramfs. É assim que você obtém um servidor estável e sustentável. Você também não deve esquecer a atualização do initramfs, especialmente se tiver feito alterações na lista negra e nos atributos de filtro.

Importância de um Sistema Multipath

Em ambientes multipath, os servidores podem continuar acessando os discos mesmo se um dos componentes (HBA, SAN, controlador de armazenamento) que eles usam falhar. Este é um assunto de particular interesse para administradores de sistemas e servidores.

É muito importante para servidores de alto tráfego que contêm informações importantes, onde os protocolos de segurança devem ser altos. Porque se o servidor de um site com milhares de informações de cartão de crédito ou centenas de milhares de clientes registrados está inacessível porque apenas um componente não funcionou, seria um enorme problema.

É necessário dominar os detalhes de todas essas operações e os subatributos dos atributos no arquivo de configuração. Isso ocorre porque fazer configurações de servidor sempre envolve um risco. Para esse tipo de operação, faz sentido fazer backup de tudo ou executar testes em um servidor de teste.

Se você não tem um servidor para testar tudo isso, instalar o Ubuntu Server é a escolha ideal e é bem simples também.