Replicação com OpenLDAP

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.

[ Hits: 25.348 ]

Por: Ronaldo Meneguite em 04/03/2010 | Blog: http://www.rlmti.com


Exemplo de configuração



4. Exemplo de configuração

Bom, abaixo iremos apresentar um exemplo de configuração de replicação para o OpenLDAP fazendo uso da estrutura Master x Slave. Consideraremos que já possuímos dois servidores configurados com o servidor OpenLDAP instalado e funcionando, assim apenas demonstraremos os parâmetros relacionados as replicações entre os servidores. A distribuição Linux utilizada foi Debian 5 e o OpenLDAP na versão 2.4.9.

4.1 Configuração Master x Slave

4.1.1 Configurando o servidor MASTER

Inicialmente o arquivo a ser alterado é o arquivo principal de configuração do OpenLDAP o /etc/ldap/slapd.conf. Alterando o parâmetro modulepath para syncprov e inserindo as seguintes linhas logo abaixo da opção "index":

overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100

Devemos Inserir também junto a ACL responsável pelos atributos de senha, userPassword e shadowLastChange a seguinte linha:

by dn="cn=replicator,dc=dominio,dc=com,dc=br" read

Assim inserimos a permissão para o usuário replicador, ao qual deve ser criado anteriormente para ler os campos de senha dos usuários, pois sem o acesso a leitura ele não conseguiria efetuar a replicação completa da base.

Neste ponto foi reiniciado o servidor com o comando:

# /etc/init.d/slapd restart

4.1.2 Configurando o servidor SLAVE

Iniciaremos a configuração do servidor slave editando o arquivo de configuração /etc/ldap/slapd.conf e removendo o caractere "#" antes da linha "rootdn", e logo após inserimos as seguintes linhas abaixo de "index":

syncrepl rid=1
provider=ldap:// servidor1.dominio.com.br:389
type=refreshAndPersist
retry="5 + 5 +"
interval=00:00:00:10
searchbase="dc=dominio,dc=com,dc=br"
filter="(objectClass=*)"
scope=sub
attrs="*"
schemachecking=on 41
bindmethod=simple
binddn="cn=replicator,dc=dominio,dc=com,dc=br"
credentials=senha_do_usuario_replicator

Após os procedimentos acima citados, paramos o servidor OpenLDAP, removemos os diretórios e novamente iniciamos o servidor. Para isso utilizamos as seguintes linhas de comando:

# /etc/init.d/slapd stop
# rm /var/lib/ldap/*
# /etc/init.d/slapd start


Assim temos agora os dois servidores configurados, sendo que os dados do servidor1.dominio.com.br estão sendo replicados para o servidor2.dominio.com.br, porém o mesmo não tem autoridade sobre os dados fazendo com que para alterarmos qualquer informação na base, teremos que fazer isso no servidor1.dominio.com.br e essa atualização será replicada de imediato para o servidor slave.

Artigo originalmente publicado em:
Página anterior    

Páginas do artigo
   1. Base teórica sobre replicação no OpenLDAP
   2. Exemplo de configuração
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Biometria - Reconhecimento Facial

Varredura bruta com NMAP

Terceirização de segurança gera dúvidas em profissionais de TI

Detectando possíveis trojans e lkms em seu servidor

Implementando uma política de segurança eficaz

  
Comentários
[1] Comentário enviado por inforrak em 04/03/2010 - 11:30h

Artigo bem interessante. Parabéns!




[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!

[3] Comentário enviado por grandmaster em 04/03/2010 - 23:58h

Acho que valeu para um startup.

Agora vale um segundo indo mais afundo nos assunto.


---
Renato de Castro Henriques
ITILv3 Foundation Certified
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[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???

Obrigado

[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!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts