Como configurar o DRBD para replicar o armazenamento em dois servidores do CentOS 7
- 2544
- 168
- Mrs. Willie Beahan
O Drbd (apoia Dispositivo de bloco replicado distribuído) é uma solução de armazenamento distribuída, flexível e versátil para Linux. Ele reflete o conteúdo de dispositivos de bloco, como discos rígidos, partições, volumes lógicos etc. entre servidores. Envolve uma cópia dos dados em dois dispositivos de armazenamento, de modo que, se um falhar, os dados do outro podem ser usados.
Você pode pensar nisso um pouco como uma configuração RAID 1 de rede com os discos espelhados nos servidores. No entanto, opera de uma maneira muito diferente do RAID e até do RAID de rede.
Originalmente, Drbd foi usado principalmente em clusters de computador de alta disponibilidade (HA), no entanto, começando na versão 9, pode ser usado para implantar soluções de armazenamento em nuvem.
Neste artigo, mostraremos como instalar o DRBD no CentOS e demonstrar brevemente como usá -lo para replicar o armazenamento (partição) em dois servidores. Este é o artigo perfeito para começar usando o DRBD no Linux.
Ambiente de teste
Para os fins deste artigo, estamos usando dois nós Cluster para esta configuração.
- Node1: 192.168.56.101 - Tecmint.Tecmint.LAN
- Node2: 192.168.56.102 - Server1.Tecmint.LAN
Etapa 1: Instalando pacotes DRBD
Drbd é implementado como um módulo de kernel Linux. Ele constitui com precisão um driver para um dispositivo de bloco virtual, por isso está estabelecido perto da parte inferior da pilha de E/S de um sistema.
Drbd pode ser instalado a partir do Elrepo ou EPEL Repositórios. Vamos começar importando a chave de assinatura do pacote Elrepo e ative o repositório, como mostrado nos dois nós.
# rpm --import https: // www.Elrepo.org/rpm-gpg-key-elrepo.org # rpm -uvh http: // www.Elrepo.org/elrepo-lançamento-7.0-3.EL7.Elrepo.Noarch.RPM
Em seguida, podemos instalar o módulo DRBD Kernel e os utilitários em ambos os nós executando:
# yum install -y kmod-drbd84 drbd84-utils
Se você tem Selinux Ativado, você precisa modificar as políticas para isentar os processos DRBD do Selinux Control.
# semanage permissivo -um drbd_t
Além disso, se o seu sistema tiver um firewall ativado (firewalld), você precisa adicionar o Drbd porta 7789 no firewall para permitir a sincronização de dados entre os dois nós.
Execute esses comandos no primeiro nó:
# firewall-cmd --permanent --add-rico-rule = 'regra família = "ipv4" endereço de origem = "192.168.56.102 "porta porta =" 7789 "protocolo =" tcp "aceitar ' # firewall-cmd--reload
Em seguida, execute esses comandos no segundo nó:
# firewall-cmd --permanent --add-rico-rule = 'regra família = "ipv4" endereço de origem = "192.168.56.101 "porta porta =" 7789 "protocolo =" tcp "aceitar ' # firewall-cmd--reload
Etapa 2: Preparando o armazenamento de nível inferior
Agora que temos Drbd Instalado nos dois nós do cluster, devemos preparar uma área de armazenamento de tamanho aproximado em ambos os nós. Esta pode ser uma partição do disco rígido (ou um disco rígido físico completo), um dispositivo RAID de software, um volume lógico LVM ou qualquer outro tipo de dispositivo de bloco encontrado no seu sistema.
Para os fins deste artigo, criaremos um dispositivo bloqueador dummy de tamanho 2 GB usando o comando dd.
# dd if =/dev/zero de =/dev/sdb1 bs = 2024k contagem = 1024
Assumiremos que esta é uma partição não utilizada (/dev/sdb1) em um segundo dispositivo de bloco (/dev/sdb) anexado a ambos os nós.
Etapa 3: Configurando DRBD
O principal arquivo de configuração do DRBD está localizado em /etc/drbd.conf e arquivos de configuração adicionais podem ser encontrados no /etc/drbd.d diretório.
Para replicar o armazenamento, precisamos adicionar as configurações necessárias no /etc/drbd.d/global_common.conf arquivo que contém as seções globais e comuns da configuração do DRBD e podemos definir recursos em .res arquivos.
Vamos fazer um backup do arquivo original nos dois nós e depois abrir um novo arquivo para edição (use um editor de texto do seu gosto).
# mv /etc /drbd.d/global_common.conf /etc /drbd.d/global_common.conf.orig # vim /etc /drbd.d/global_common.conf
Adicione as seguintes linhas nos dois arquivos:
global contagem de uso sim; comum net protocolo c;
Salve o arquivo e depois feche o editor.
Vamos sombrear brevemente mais luz na linha Protocolo c. O DRBD suporta três modos de replicação distintos (assim, três graus de sincronicidade de replicação) que são:
- Protocolo a: Protocolo de replicação assíncrona; É mais frequentemente usado em cenários de replicação de longa distância.
- Protocolo b: Protocolo de replicação semi-síncrona, também conhecido como protocolo síncrono de memória.
- Protocolo c: comumente usado para nós em redes distanciadas curtas; É de longe o protocolo de replicação mais comumente usado em configurações de drbd.
Importante: A escolha do protocolo de replicação influencia dois fatores de sua implantação: proteção e latência. E Taxa de transferência, Por outro lado, é amplamente independente do protocolo de replicação selecionado.
Etapa 4: Adicionando um recurso
A recurso é o termo coletivo que se refere a todos os aspectos de um determinado conjunto de dados replicado. Vamos definir nosso recurso em um arquivo chamado /etc/drbd.d/teste.res.
Adicione o seguinte conteúdo ao arquivo, nos dois nós (lembre -se de substituir as variáveis no conteúdo com os valores reais do seu ambiente).
Tome nota do nomes de host, Precisamos especificar o nome do host de rede que pode ser obtido executando o comando uname -n.
teste de recurso no Tecmint.Tecmint.LAN dispositivo /dev /drbd0; disco /dev /sdb1; meta-disco interno; Endereço 192.168.56.101: 7789; no servidor1.Tecmint.LAN dispositivo /dev /drbd0; disco /dev /sdb1; meta-disco interno; Endereço 192.168.56.102: 7789;
onde:
- no nome do host: a seção em declara que hospeda as declarações de configuração fechadas se aplicam a.
- teste: é o nome do novo recurso.
- dispositivo /dev /drbd0: Especifica o novo dispositivo de bloco virtual gerenciado pelo DRBD.
- disco /dev /sdb1: é a partição do dispositivo em bloco, que é o dispositivo de apoio para o dispositivo DRBD.
- meta-disco: Define onde o DRBD armazena seus metadados. Usar significa que o DRBD armazena seus meta-dados no mesmo dispositivo físico de nível inferior que os dados de produção reais.
- endereço: Especifica o endereço IP e o número da porta do respectivo nó.
Observe também que, se as opções tiverem valores iguais nos dois hosts, você poderá especificá -los diretamente na seção de recursos.
Por exemplo, a configuração acima pode ser reestruturada para:
teste de recurso dispositivo /dev /drbd0; disco /dev /sdb1; meta-disco interno; em Tecmint.Tecmint.LAN Endereço 192.168.56.101: 7789; no servidor1.Tecmint.LAN Endereço 192.168.56.102: 7789;
Etapa 5: Inicializar e ativar o recurso
Para interagir com Drbd, Usaremos as seguintes ferramentas de administração que se comunicam com o módulo do kernel para configurar e administrar recursos DRBD:
- drbdadm: uma ferramenta de administração de alto nível do DRBD.
- drbdSetup: Uma ferramenta de administração de nível inferior para anexar dispositivos DRBD com seus dispositivos de bloco de apoio, configurar pares de dispositivos DRBD para espelhar seus dispositivos de bloco de apoio e inspecionar a configuração da execução de dispositivos DRBD.
- Drbdmeta: é a ferramenta de gerenciamento de dados de meta.
Depois de adicionar todas as configurações iniciais de recursos, devemos trazer à tona o recurso nos dois nós.
# drbdadm Create-md testeInicialize o armazenamento de meta dados
Em seguida, devemos ativar o recurso, que anexará o recurso ao seu dispositivo de apoio e define parâmetros de replicação e conecta o recurso ao seu par:
# drbdadm up test
Agora, se você executar o comando lsblk, você notará que o dispositivo DRBD/volume drbd0 está associado ao dispositivo de apoio /dev/sdb1:
# lsblkListar dispositivos de bloco
Para desativar o recurso, execute:
# drbdadm para baixo teste
Para verificar o status do recurso, execute o seguinte comando (observe que o Inconsistente/inconsistente O estado de disco é esperado neste momento):
# teste de status drbdadm ou # drbdSetup Teste de status --verbose - -estatística # para um status mais detalhadoVerifique o status do recurso nos nós
Etapa 6: Defina o recurso primário/fonte da sincronização inicial do dispositivo
Nesta fase, Drbd agora está pronto para operação. Agora precisamos dizer qual nó deve ser usado como fonte da sincronização inicial do dispositivo.
Execute o seguinte comando em apenas um nó para iniciar a sincronização completa inicial:
# drbdadm primário -teste de força # drbdadm teste de statusDefina o nó primário para o dispositivo inicial
Uma vez concluído a sincronização, o status de ambos os discos deve ser Atualizado.
Etapa 7: Testando a configuração do DRBD
Por fim, precisamos testar se o dispositivo DRBD funcionará bem para armazenamento de dados replicado. Lembre -se de que usamos um volume de disco vazio, portanto, devemos criar um sistema de arquivos no dispositivo e montá -lo para testá -lo se pudermos usá -lo para armazenamento de dados replicado.
Podemos criar um sistema de arquivos no dispositivo com o seguinte comando, no nó onde iniciamos a sincronização completa inicial (que tem o recurso com a função primária):
# mkfs -t ext4 /dev /drbd0Faça o sistema de arquivos no volume drbd
Em seguida, monte -o como mostrado (você pode dar ao ponto de montagem um nome apropriado):
# mkdir -p/mnt/drdb_pri/ # MONTO/DEV/DRBD0/MNT/DRDB_PRI/
Agora copie ou crie alguns arquivos no ponto de montagem acima e faça uma longa listagem usando o comando ls:
# CD/MNT/DRDB_PRI/ # LS -LListar o conteúdo do volume primário DRBD
Próximo, desmontar O dispositivo (verifique se a montagem não está aberta, altere o diretório depois de desmontá -lo para evitar erros) e altere o papel do nó de Primário para secundário:
# Umount/mnt/drdb_pri/ # cd # teste secundário drbdadm
No outro nó (que tem o recurso com uma função secundária), faça -o primário, depois monte o dispositivo e execute uma longa listagem do ponto de montagem. Se a configuração estiver funcionando bem, todos os arquivos armazenados no volume devem estar lá:
# drbdadm teste primário # mkdir -p/mnt/drdb_sec/ # mount/dev/drbd0/mnt/drdb_sec/ # cd/mnt/drdb_sec/ # ls -lTeste a configuração drbd trabalhando no nó secundário
Para obter mais informações, consulte as páginas do homem das ferramentas de administração do espaço do usuário:
# homem drbdadm # man drbdSetup # man drbdmeta
Referência: O guia do usuário do DRBD.
Resumo
Drbd é extremamente flexível e versátil, o que a torna uma solução de replicação de armazenamento adequada para adicionar HA a praticamente qualquer aplicativo. Neste artigo, mostramos como instalar Drbd em CENTOS 7 e demonstrou brevemente como usá -lo para replicar o armazenamento. Sinta -se à vontade para compartilhar seus pensamentos conosco através do formulário de feedback abaixo.
- « Instalação do CentOS 7.1 bota dupla com o Windows 8.1 em sistemas de firmware da UEFI
- Os 8 melhores programas antivírus gratuitos para Linux »