Nesse artigo iremos demonstrar o funcionamento do sistema de replicação com o OpenLDAP. Replicação é a manutenção de uma cópia, seja parcial ou total, dos dados em outros servidores. Este é um método muito utilizado quando trabalhamos em um ambiente corporativo, onde temos a necessidade de alta disponibilidade nos serviços.
Replicação é a manutenção de uma cópia, seja parcial ou total, dos dados em outros servidores. Esse é um método muito utilizado quando trabalhamos em um ambiente corporativo, onde temos a necessidade de alta disponibilidade nos serviços.
No OpenLDAP existem duas técnicas distintas de replicação as quais são o slurpd e o syncrepl, sendo que a slurpd é uma técnica mais antiga a qual foi descontinuada na versão 2.4 do OpenLDAP por possuir uma série de limitações que foram supridas por sua sucessora a syncrepl. As principais limitações eram a replicação parcial de uma base e a utilização de mais de um servidor master.
Quando trabalhamos com o syncrepl, o servidor LDAP pode assumir duas posturas quanto à replicação: master ou slave. Quando master, o servidor assume todas as funções de um servidor OpenLDAP, desde a inserção, atualização e consulta dos dados. Porém, quando slave, o servidor só aceitará execuções de consultas em sua base de dados quando originadas de máquinas clientes. Assim, para que qualquer informação seja alterada, a solicitação deverá ser feita ao servidor Master, o qual se encarregará de replicar as alterações para seus servidores slaves.
1. Replicação Master x Slave
Nesse método de replicação temos um único servidor master, o qual tem seu conteúdo replicado em todos os seus servidores slaves. Nesses servidores slaves não ocorre entrada de dados, apenas replicam passivamente os dados de um servidor principal. Esse método de replicação é o mais comum e atende a grande parte das demandas de servidores LDAP.
2. Replicação Master x Master (multimaster)
Replicação multimaster é o método de replicação mais recente no OpenLDAP, porém já implementado no Active Directory desde suas primeiras versões. Esta é uma replicação que atende a demandas muito singulares e apesar de funcionar muito bem, ainda é pouco difundida e aplicada.
Esta replicação consiste na utilização de dois ou mais servidores masters, independentes, os quais possuem todas as suas funcionalidades ativadas, porém é criado por parte dos servidores um controle interno para que seja possível manter a integridade dos dados, algo que era muito mais simples de controlar quando existia uma única entrada de dados.
3. Diretórios Distribuídos
Utilizando o OpenLDAP com o método de replicação syncrepl podemos não somente criar uma cópia da árvore de diretórios em outros servidores, mas também criar políticas de replicação e replicar a cada servidor somente aquilo que se pretende que o mesmo tenha acesso, assim por exemplo, quando temos uma empresa com sede em Minas Gerais e filial em São Paulo, a mesma não precisa replicar toda sua base para a filial, apenas aqueles usuários que a pertençam, evitando assim um tráfego desnecessário na rede além de aumentar a segurança.
[2] Comentário enviado por tatototino em 04/03/2010 - 19:26h
O assunto é bom, mas não gostei do artigo.Ele não aborda nada parece ser mais um conf do slapd.conf.
Se colocasse o que cada opção no arquivo de configuração faz, as diferenças de cada método (n-way, delta, mirrormode, proxymode), como funciona cada método, e como funciona uma sincronização básica e etc seria um bom artigo.
Também esqueceu de mencionar os index para agilizar a replicação entryUUID, entryCSN e etc
Ficou muito nos parâmetros de configuração e pouca teoria.
Mas se a intenção foi dar um conceito básico de replicação, então peço desculpas!
[4] Comentário enviado por luizmarceloo em 05/03/2010 - 04:44h
Esse método de diretório distribuído funciona com um master replicando para vários slaves onde cada slave apenas recebe parte do ramo da árvore, ou tem relação com o uso de refferral???
[5] Comentário enviado por rlmti em 05/03/2010 - 09:49h
Bom respondendo aos comentários:
inforrak: Muito obrigado!
atototino: Bom de fato este artigo não teve nem de longe a pretensão de ser uma solução definitiva sobre o assunto, que por sinal é de fato extremamente extenso. Tive interesse em fazer este, não com foco em experts em OpenLDAP, e sim em administradores de rede as quais iniciam o aprendizado sobre o mesmo, demonstrando que é possível utilizamos a replicação no OpenLDAP e também que limitações as quais existiam anteriormente com o slurpd hoje já não mais existem... mais certamente seu comentário foi bem vindo, e servira como sugestão para um artigo futuro! Obrigado pelas colocações!
Renato de Castro:
De fato entendeu o espírito da coisa.. realmente foi esse o interesse.. um inicio. Obrigado!
Luiz Marcelo: Bom diretório distribuído pode ser aplicado como simplesmente uma copia parcial do servidor em um servidor remoto (Master x Slave).. Ou despendendo a um segundo servidor autoridade a uma parte da arvore de diretórios (Master x Master).. como também podemos utilizar referrals de forma a manter a arvore de forma distribuída entre os servidores! Obrigado pelo comentário.. e qualquer dúvida estou a disposição!