Espelhamento remoto com ChironFS

Publicado por Carlos Affonso Henriques. em 22/01/2014

[ Hits: 7.292 ]

 


Espelhamento remoto com ChironFS



Precisei, recentemente, fazer uma replicação remota em tempo real de arquivos de um servidor de missão crítica, em ambiente de produção que não foi implementado por mim, rodando uma versão antiga do CentOS (6.2) e uma aplicação dedicada proprietária (TMS-Flux da Traficon).

Inicialmente, me veio à mente empregar o DRBD, mas devido à atualização e instalação de algumas dependências, fiquei com receio de fazê-lo, visto que a máquina não tem redundância, se algo desse errado, seria um pandemônio.

Então, procurando uma solução mais "monolítica", por assim dizer, deparei-me com o ChironFS.

O ChironFS é semelhante ao DRBD com vantagens, é simples e não requer nenhuma dependência que já não estivesse instalada no servidor. Não emprega arquivos de configuração, permite espelhamento local e remoto de diretórios individuais e pode trabalhar com sistemas de arquivos remotos, tais como CIFS (Samba), sshfs, NFS e, embora eu não tenha testado e não haja visto nada a respeito na documentação, creio que pode trabalhar com sistemas de arquivos remotos, como o Dropbox, por exemplo.

O site do projeto, é: google.com/chironfs/

O RPM para CentOS/RHEL/Fedora pode ser baixado de:
Há um howto detalhado em português, em: www.furquim.org/chironfs - pt

Dado a farta e detalhada documentação, vou ater-me apenas a um exemplo prático.

Passos

1. Na máquina local, montar diretórios remotos via sshfs de duas máquinas remotas:

# sshfs 192.168.25.30:/home /mnt/storage0
# sshfs 192.168.25.40:/home /mnt/storage1


2. Feito isso, ainda na máquina local:

# chironfs --fsname APELIDO_DO_COMPARTILHAMENTO /home=/mnt/storage0=/mnt/storage1 /DiretorioLocalASerReplicado

Simples assim.

* Atentem para o seguinte, no caso acima: somente o diretório /home da máquina local armazenará o conteúdo a ser replicado nos pontos de montagem remotos /mnt/storage0 e /mnt/storage1, e somente serão replicados os conteúdos do ponto de montagem /DiretorioLocalASerReplicado, nunca o contrário.

Ou seja, se você modificar o conteúdo nas máquinas remotas ou no /home da máquina local, não ocorrerá replicação, ela somente ocorrerá sobre o que estiver no ponto de montagem /DiretorioLocalASerReplicado da máquina local.


Bom trabalho a todos!

Outras dicas deste autor

Executando comandos do Shell Bash pelo Python

Conectores e terminais para Raspberry Pi, Arduino e outros dispositivos

Lógica booleana com o test

Editando arquivos e usando variáveis no sed

Manipulando o MySQL diretamente pelo shell

Leitura recomendada

Corrigindo desmontagem automática no HAL com Debian Lenny

Problemas ao montar partições NTFS no Slackware 13.37 [Resolvido]

Flatpak no openSUSE Leap 15 e Tumbleweed

Restaurando recurso DRBD com node primário rodando

Compartilhando rapidamente arquivos via HTTP

  

Comentários
[1] Comentário enviado por djdu em 14/02/2014 - 15:46h

cara, to precisando usar muito esse espelhamento, mas nao entendi muito a sintaxe dos comando que voce passou. Voce tem um manual mais detalhado pra me passa? Agradeco muito a ajuda....



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts