O DRBD é a única solução viável de replicação de blocos para Linux?

12

Percebi que precisava de armazenamento redundante no nível do bloco. A replicação no nível do arquivo (Gluster, GFS, etc) não funciona no meu caso de uso.

Parece que o DRBD é a solução ideal para replicação de blocos. Não parece haver muitas outras opções sãs. Eu falhei em minha pesquisa ou o DRBD é o único jogo na cidade?

Charles
fonte
Olá Charles, por que você não pode usar a replicação em nível de arquivo? \
nsn
O caso de uso foi a replicação de dispositivos de disco da VM em máquinas, onde os dispositivos eram apoiados por volumes LVM e servidos por dispositivos de bloco iSCSI, não por arquivos. O objetivo final, conforme observado nos comentários abaixo, era basicamente o failover de iSCSI DIY.
Charles

Respostas:

7

Sim, o DRBD é o único dispositivo de bloco replicado existente que pode lidar com gravações simultâneas. Se você planeja colocar um sistema de arquivos no topo, ele obviamente também precisa lidar com vários gravadores, como o GFS (2) e o OCFS (2).

Observe que, se você puder pagar níveis mais altos de abstração para redundância, provavelmente ficará muito mais feliz com a semântica no nível de arquivo; portanto, pense duas vezes antes de usar a semântica no nível de bloco. Se você não puder usar níveis mais altos de abstrações, mas tiver dinheiro para enfrentar o problema, poderá obter um desempenho significativamente melhor com uma boa SAN.

Mas você provavelmente já sabe disso.

Pierre Carrier
fonte
Nesse caso, o que realmente estou tentando obter é uma variedade de failover quente para os destinos iSCSI para criar uma SAN simplista. Este é principalmente um exercício de aprendizado. Minha distribuição preferida não vem com suporte nativo ao DRBD devido a decisões políticas tolas e à execução de um kernel um pouco velho demais.
Charles
O DRBD permitirá que você faça o espelhamento ativo / em espera e, mais recentemente, ativo / ativo. Se você escolher ativo / ativo, precisará garantir que o sistema de arquivos o suporte (daí o GFS etc.). Você provavelmente desejará usar algo como Heartbeat para acionar um failover (ou apenas confiar em um administrador executando 'drbdadm $ resource up | down' conforme necessário).
David Goodwin
4

Bem, há também MARS (Light) . De acordo com a documentação amplamente utilizada no fornecedor alemão 1 e 1

uli42
fonte
Não é apenas assíncrono? "Os modos de operação síncronos ou quase síncronos são planejados para o futuro, mas espera-se que funcionem de maneira confiável apenas em distâncias curtas (menos de 50 km), devido às propriedades fundamentais dos sistemas distribuídos". <- from MARS docs
BaronSamedi1958
2

Você pode configurar um conjunto de RAID usando dispositivos iSCSI, mas eu seria cauteloso em fazer isso com dispositivos de armazenamento assimétricos (que no caso de armazenamento remoto inclui a rede) - o OTOH DRBD foi projetado explicitamente para suportar esse uso.

Existe uma razão para você não gostar do DRBD?

Eu falhei em minha pesquisa

Se você acha que o GFS é um sistema de arquivos em cluster de replicação, receio que sim.

symcbean
fonte
Não é ? Ok, sim, acho que por si só não é.
3030 Charles
1

Ouvi falar de uma variante do dispositivo de bloco de rede (NBD) que suporta replicação: ENBD . No entanto, não sei sobre o status desse projeto. O site não parece ter sido suportado.

Oliver
fonte
Caramba, não há atualizações desde os kernels 2.4? Ainda assim, boa descoberta.
3030 Charles
1
Outra solução teria sido exportar um arquivo replicado usando um sistema de arquivos em cluster com NBD, mas não acho que você queira fazer isso. Não, o DRBD é realmente o caminho a seguir! Usá-lo por alguns anos, nunca perdeu nenhum dado.
Oliver
0

Há uma alternativa: você pode usar dispositivos SAN com replicação nativa, em que os controladores das matrizes de disco fazem todo o trabalho de replicação. Porém, é bastante caro, mas não precisa de configuração nos hosts.

Sven
fonte
Acontece que estou basicamente tentando construir uma SAN simples.
3030 Charles
@Charles: eu imaginei algo assim, mas é uma alternativa :)
Sven
-1

A pergunta está errada:

O DRBD é a única solução viável de replicação de blocos para Linux? Percebi que precisava de armazenamento redundante no nível do bloco.

Não não é. Você tem, por exemplo, Linux MD (software RAID), LVM RAID. Eles fornecem redundância para dispositivos de bloco.

Então você provavelmente queria perguntar:

O DRBD é a única solução viável de replicação de bloco de REDE para Linux?

E, novamente, você tem outras opções.

Se o cliente é apenas um nó, você pode criar o RAID de software no cliente, que replica em vários armazenamentos de rede.

Se você tiver vários clientes, poderá usar dispositivos de bloco LVM em cluster.

A replicação no nível do arquivo (Gluster, GFS, etc) não funciona no meu caso de uso.

O GFS (GFS2 da Redhat) é um sistema de arquivos de cluster de dispositivo compartilhado. Não fornece redundância. Outros sistemas de arquivos locais, como BTRFS e ZFS, podem fazê-lo. Bem como outros sistemas de arquivos distribuídos.

Delian Krustev
fonte