O documento discute a replicação, disponibilidade e escalabilidade do OpenLdap. Ele explica o que é o OpenLdap, suas utilizações e porque a replicação é importante. Também descreve os métodos de replicação Slurp e SyncRepl, incluindo Singlemaster, Mirrormode e Multimaster.
1. OpenLdap: Replicação,
disponibilidade e escalabilidade
Sérgio Cioban Filho
cioban@gmail.com http://cioban.googlepages.com
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
2. Roteiro
● O que é Ldap
● Utilização do Ldap
● Porque replicar as bases Ldap
● Replicação com o Slurp (Método antigo)
● Replicação com o SyncRepl
Singlemaster
Mirrormode
Multimaster
● Quando utilizar a replicação OpenLdap
● Conclusão
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
3. O que é Ldap
● Lightweight Directory Access Protocol
● Roda sobre TCP/IP
● É uma arvore de objetos, cada objeto tem seu
conjunto de atributos.
● É um organizador hierárquico de informações
de uma rede.
● Analogia a um banco de dados hierárquico
● Otimizado para dar respostas rápidas
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
4. O que é Ldap
uid=user1,ou=TI,o=LinuxCorp,c=BR
uid=user2,ou=TI,o=LinuxCorp,c=BR
ou=TI,o=LinuxCorp,c=BR
c=BR
c=BR
o=LinuxCorp
o=LinuxCorp
ou=TI
ou=TI
uid=user1 uid=user2
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
5. Utilização do Ldap
● Autenticação – Principal utilização
● Catálogo de endereços
● Zonas DNS
● Armazenamento de certificados digitais
● Armazenamento de informações do funcionário
● Armazenamento de informações da rede
● Armazenamento de configurações
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
6. Utilização do Ldap Softwares
● Samba
● Qmail
● Proftpd
● Squid
● Bind
● PHP
● PAM – (Autenticação do sistema)
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
7. Replicação OpenLdap
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
8. Replicação de bases LDAP
● Manter bases Ldap armazenadas em
servidores distintos, completamente (ou
parcialmente) iguais
● Podemos replicar toda a arvore ou apenas
algumas regiões ou objetos.
● Replicação PUSH ou PULL
PUSH: O servidor envia as mudanças
PULL: O cliente coleta as mudanças
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
9. Porque replicar bases LDAP
● Distribuição organizacional
● Economia de banda
● Distribuição de carga
● Garantia de serviço
● Altadisponibilidade
● Backup
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
10. Replicação com o SLURP
● Utiliza um daemon separado do slapd, o slurpd
● O servidor é quem envia as mudanças na base
para o(s) cliente(s), modo PUSH.
● Os clientes necessitam estar disponíveis para
receber as atualizações no momento em que o
servidor envia.
● Foi totalmente removido da versão 2.4
● Baseado em arquivo de log
● Em caso de falha, necessário intervenção manual
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
11. Replicação com o SLURP
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
12. Replicação com o SyncRepl
● Totalmente integrado no slapd
● LDAP Content Synchronization protocol
● 3 métodos: SingleMaster, MirrorMode e Multimaster
● Opera em PUSH (“Melhorado”) ou PULL
● O cliente sempre solicita as mudanças para o servidor
independente da forma de operação.
● A base cliente não necessita ser previamente carregada
● Podese replicar qualquer ponto da base
● Mais tolerante a falhas
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
13. Replicação com o SyncRepl
● Replicação SingleMaster
● Existe apenas um servidor da rede que recebe escrita
● Todos os outros servidores devem encaminhar as
escritas na base Ldap para o servidor Master.
● Esta configuração é chamada UpdateRef
● Em caso de falha do servidor Master, a rede fica sem
um servidor que receba escrita de dados Ldap
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
14. Replicação com o SyncRepl PULL
● De tempos em tempos o cliente solicita as alterações
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
15. Replicação com o SyncRepl PUSH
● PUSH “melhorado”
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
16. Replicação com o SyncRepl
● Replicação MirrorMode
● Opera da mesma forma que o SingleMaster, porém 2
servidores operam como master e replicam suas
bases entre si
● Os dois servidores Master podem receber
atualizações (escritas), porém somente 1 por vez
● A escolha do servidor Master ativo deve ser feita por
um “árbitro” externo
● Provê um cenário básico de LoadBalance e FailOver
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
17. Replicação com o SyncRepl
● Replicação MultiMaster
● Todos os servidores do pool são master e por conta disso
podem receber escritas
● Toda alteração é então replicada para os outros
servidores
● A base se mantém igual em todos os servidores, não
importando em qual servidor seja realizada a alteração
● Pode ser utilizado em um cenário complexo de
balanceamento de carga e/ou altadisponibilidade
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
20. Replicação com o SyncRepl
● Replicação MuiltMaster
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
21. Replicação com o SyncRepl MultMaster
serverID N
syncrepl rid=N
provider=ldap://IP_LDAP:389/
bindmethod=simple
binddn="cn=admin,dc=teste,dc=com,dc=br" Se repete a
credentials="senha" cada servidor
searchbase="dc=teste,dc=com,dc=br"
schemachecking=on
type=refreshAndPersist
interval=00:00:00:10
retry="5 5 300 5"
timeout=1
mirrormode true
overlay syncprov
syncprovcheckpoint 100 10
syncprovsessionlog 100
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
22. Quando utilizar a replicação OpenLdap
● Ambientes de missão crítica
● Muitos serviços dependem do Ldap
Samba, Squid, Qmail, Aplicativos, Apache, etc
● Redes separadas geograficamente, mas que
necessitem da mesma base
● Muitos acessos ao servidor
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
23. Conclusão
● Com o crecimento da utilização do OpenLdap, temos
que ter a segurança que o serviço nunca pare, pois
outros serviços da rede dependem dele
● A replicação OpenLdap é uma ótima escolha para se
distribuir as bases em diversos servidores e garantir o
funcionamento do OpenLdap em casos de falha
● Para balanceamento de carga sempre precisamos de
um “árbitro” externo.
● Esolha o modo de operação que atende a sua
necessidade.
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
24. Referências
● www.openldap.org Documentação oficial do OpenLdap
● http://www.zytrax.com/books/ldap/
● www.wikipedia.org
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com
25. Dúvidas???
Sérgio Cioban Filho
cioban@gmail.com
http://cioban.googlepages.com
Obrigado pela atenção
OpenLdap: Replicação, disponibilidade e escalabilidade Sérgio Cioban Filho cioban@gmail.com