Replicação de Valor Vinculado (LVR)


LVR2

No nível funcional de floresta Windows 2000, uma mudança no membro de um grupo resulta na replicação de todos os valores do atributo member do grupo. Isso pode resultar no aumento de tráfego de replicação, e aumento considerado da base de dados (NTDS.DIT) e na potencial perda de atualizações de membro quando um grupo é alterado ao mesmo tempo em diferentes controladores de domínio. Isso também resulta no limite recomendado de 5000 membros por grupo. A replicação de valor vinculado  também conhecido como LVR (Linked Value Replication), habilitada no nível funcional da floresta do Windows Server 2003, replica uma alteração individual da associação de membro e não o atributo member inteiro. Isso usa menos largura de banda e impede que você perca atualizações quando um grupo for modificado simultâneamente em diferentes controladores de domínio.

Mas este novo corportamento ocorre somente para novos membros adicionados, ou para novos grupos criados depois que o nível funcional da floresta foi elevado para Windows Server 2003. Mas afinal, e para os objetos que já eram membros ? Bom, infelizmente não há um botão mágico que faça isso sozinho, vamos descobrir como.

Isso explica que o fato de você atualizar seu domínio de Windows 2000 para 2003 não é garantia alguma que o LVR já esta funcionando a todo vapor. Mas acredite corrigir isso é muito mais fácil do que você imagina, basta remover os usuários (ou qualquer objeto) do grupo e adicioná-lo novamente (Ohhhhh !!).

Mas afinal onde isso fica armazenado ? Uma nova tabela chamada Link Table é criada em controladores de domínio Windows Server 2008 como mostra a figura acima, os quais contém valores que referem a outros objetos . Por exemplo neste caso o atributo memberof do objeto usuário, este atributo contém valores que referenciam grupos dos quais o usuário é membro

A maneira mais fácil de você identificar se um grupo ainda possue membros legados (Legacy Object) é usar o comando REPADMIN com o parâmetro /SHOWOBJMETA. Vamos ver um exemplo, suponhamos que o domínio seja o nosso já conhecido contoso.com, o servidor DC2003, o grupo chama-se GrupoABC e esteja no conteiner User então devemos executar o seguinte comando :

A sintaxe do comando é a seguinte :

c:\repadmin /showobjmeta DCNAME <DN do Grupo> | find /i “legacy”

No nosso exemplo seria :

c:\repadmin /showobjmeta DC2003 cn=GrupoABC,cn=User,cn=contoso,cn=com | find /i “legacy”

O comando acima se você remover tudo depois do pipe (|) os objetos com status Legacy são os que não estão no formato LVR e deverão ser removidos do grupo e inseridos novamente.

Mas você deve estar se perguntando : “Poxa, vou ter que fazer isso manualmente ? Grupo a grupo, membro a membro ? Bom a resposta é Sim e Não. Sim se você quiser sofrer e tem tempo livre para isso, não se você é meu leitor, gosta bastante do AD e claro esta lendo este artigo.

Você pode combinar dois utilitários para converter os membros do grupo de Legacy para LVR, então tome nota : Os utilitários são DSGET com o parâmetro –Members e DSMOD com o parâmetro –chmbr.

O comando fica assim :

dsget group cn=GrupoABC,cn=User,cn=contoso,cn=com –members | dsmod group cn=GrupoABC,cn=User,cn=contoso,cn=com –chmbr

Mas tome cuidado, você nunca deve remover ou adicionar mais do que 5.000 membros em uma única operação. Isso pode causar erros de replicação porque o AD deve ser escrito em uma transação única e essa transação esta limitada para no máximo 5.000 entradas. Isso também vale para o Active Directory do Windows Server 2008.

O que você ganhou com isso ? Várias coisinhas legais entre elas, redução do tamanho físico do NTDS.DIT depois da primeira desfragmentação on-line, menos consumo de banda em replicação entre sites com link lento, aumento na velocidade ao adicionar novos controladores de domínio como DCPROMO já que somente o LVR será replicado e não o atributo todo e por final evitará perdas de alterações quando um grupo for modificado simultâneamente em dois ou mais controladores de domínio, fato comum em grandes corporações que pode chegar a ter mais de 500 DCs.

Comments (1)
  1. Fernando dos Santos says:

    Muito boa a postagem. Interessante como os comando DS são

    úteis em situações envolvendo mudanças de grande escala.

    Parabens pelo blog. Grande abraço!!

Comments are closed.

Skip to main content