Configurar recuperação de gravação múltipla

Esta seção descreve como configurar a recuperação.
cad126br
Esta seção descreve como configurar a recuperação.
Interromper um DSA em recuperação que está enviando informações desatualizadas a um cliente
Se um DSA tem estado offline, quando ele for colocado online novamente, seus dados estarão desatualizados.
Para impedir que um DSA em recuperação envie informações desatualizadas a um cliente, use a configuração
No Service While Recovering
em todos os DSAs em um sistema de gravação múltipla. Quando a configuração No Service While Recovering é usada, um DSA em recuperação aceita atualizações apenas de seus pares e não aceita outras operações do cliente. Isso impede que os clientes acessem dados desatualizados.
Para interromper um DSA em recuperação que está enviando informações desatualizadas a um cliente usando comandos
  1. Adicione o sinalizador de DSA
    no-service-while-recovering
    ao conhecimento compartilhado, como segue:
    set dsa dsaname = { ... dsa-flags = ... no-service-while-recovering ... ... };
  2. Reinicie o DSA.
Sincronizar manualmente um DSA em um sistema de gravação múltipla
Às vezes, convém ressincronizar manualmente um DSA, em vez de contar com a recuperação de gravação múltipla. Por exemplo, se um DSA tem estado offline por algum tempo, seus dados podem estar tão desatualizados que é mais rápido ressincronizar manualmente que aplicar as atualizações.
Para fins de explicação, vamos supor que temos três DSAs:
  • DSA 1. Esse DSA está atualizado e continua funcionando como um servidor de diretório durante todo o processo de ressincronização.
  • DSA 2. Esse DSA estava funcionando corretamente e estava atualizado no início do processo de sincronização, mas o colocaremos offline para usá-lo como origem do carregamento do DSA 3.
  • DSA 3. Este tem estado offline. Vamos carregá-lo com informações atualizadas do DSA 2.
Observação:
ao decidir qual dos DSAs em funcionamento usar como origem para carregar o DSA offline, escolha o DSA que não tem uma fila de atualização de gravação múltipla para o outro DSA. Isso significa que você não perderá dados ao colocá-lo offline.
Para ressincronizar um DSA manualmente em um sistema de gravação múltipla
  1. Interrompa o DSA 3, caso já não tenha sido interrompido.
  2. Reinicie o DSA 1 usando o comando
    init
    .
    Isso faz com que o DSA 1 reinicie a fila para o DSA 3. Ele não afeta a fila do DSA 2.
  3. Interrompa o DSA 2.
    Quando o DSA for interrompido, o repositório de dados não será atualizado enquanto você extrai os dados.
    as filas de gravação múltipla nesse DSA são excluídas, portanto, verifique essas filas antes de interrompê-las. Você talvez precise usar o comando
    forcestop
    . Se fizer isso, perderá os dados.
  4. Copie os arquivos de repositório de dados do DSA 2 no 3 DSA.
  5. Certifique-se de que o DSA 2 e o 3 tenham a configuração
    No Service While Recovering
    definida como true. Você também pode defini-la usando o sinalizador de DSA
    no-service-while-recovering
     no arquivo de conhecimento.
  6. Reinicie o DSA 2 e o DSA 3.
Testar se dois repositórios de dados são os mesmos
Convém testar se dois repositórios de dados são os mesmos. Por exemplo, você pode suspeitar que houve falha na sincronização entre dois repositórios de dados.
Para testar se dois repositórios de dados são os mesmos
  1. Encerre o DSA de cada repositório de dados.
    Os repositórios de dados não são alterados enquanto você extrai seus dados.
  2. Use a ferramenta DXdumpdb para despejar os repositórios de dados em arquivos LDIF, da seguinte maneira:
    dxdumpdb -f old.ldif old_dsa dxdumpdb -f latest.ldif latest_dsa
    Observação:
    se não deseja ressincronizar os repositórios de dados usando esses instantâneos, é possível reiniciar os DSAs agora.
  3. Use a ferramenta ldifsort para classificar os arquivos LDIF, da seguinte maneira:
    ldifsort old.ldif old_sorted.ldif ldifsort latest.ldif latest_sorted.ldif
    Agora você tem dois arquivos LDIF que podem ser comparados.
  4. Use a ferramenta ldifdelta para comparar os dois arquivos LDIF, da seguinte maneira:
    ldifdelta old_sorted.ldif latest_sorted.ldif