quinta-feira, 10 de março de 2011

Estender o Schema - Validação da Consistência

Alguns softwares de mercado ou da própria Microsoft alteram o schema do AD, estas alterações podem levar a quebra do schema (parada total do AD) durante um processo de atualização. Por esta razão temos a necessidade de validar os possíveis problemas que podem ocorrer antes de estender o schema.

Apesar deste procedimento mitigar alguns riscos para a alteração do schema, este procedimento não tira a importância da validação do procedimento em ambiente de teste (laboratótio) antes da execução do procedimento em ambiente de produção.

1. Verificar a versão do schema do AD, para isso instale o support tools e acesse o adsiedit.msc, abra o caminho LDAP “CN=Schema,CN=Configuration,DC=contoso,DC=com”, localize o objeto “CN=Schema-Version” e clique em propriedades, localize o atributo “objectVersion” e verifique o valor deste atributo. Em nosso exemplo, o valor é 31. Outra forma de verificar este valor é através do comando:

dsquery * cn=schema,cn=configuration,dc=contoso,dc=com -scope base -attr objectVersion



2. Realizar um dump do schema que pertence a floresta que será realizado a modificação do schema, para isso, execute o comando (digite na mão, pois alguns casos copiar+colar não funciona):

ldifde –d “CN=schema,CN=configuration,DC=contoso,DC=com” –f schema.ldf


3. Sabendo o valor do atributo e tendo o dump do schema da floresta, iremos verificar a consistência desta versão com todos ldfs seguintes até a versão que irá ser implementada. Por exemplo, a floresta em modo 2003 Nativo possui o valor 31, já o valor em modo 2008 Nativo é 44, neste caso iremos comparar o dump realizado que está na versão 31 com o ldf 32, 31 com o ldf 33 e assim por diante até a versão 44.

Localize todos os ldfs que serão comparados, eles se encontram na mídia de instalação do sistema operacional. Copie estes arquivos para um diretório local no servidor onde será realizado a comparação e onde se enconta o dump do schema que foi realizado. Execute o comando: cscript schchk.vbs schema.ldf sch33.ldf Repita o procedimento para cada ldf, sch34.ldf, sch35.ldf, etc.


4. Verifique se há algum erro no log gerado pelos procedimentos realizados, normalmente erros encontrados terão a descrição “mismatch”. O log gerado será o schchk.log. Caso encontre algum erro, será necessário entrar em contato com o fornecedor da aplicação que alterou o schema. Se a atualização do schema proceder sem a resolução do problema, poderá ocorrer desde a indisponibilidade da aplicação até a quebra do schema.