Bloquear, desbloquear ou criar uma cópia privada da configuração do candidato usando o Protocolo Junos XML
Quando um aplicativo do cliente solicita ou altera informações de configuração, ele pode usar um dos seguintes métodos para acessar a configuração do candidato:
Bloquee a configuração do candidato, o que impede que outros usuários ou aplicativos mudem o banco de dados de configuração compartilhada até o aplicativo liberar o bloqueio (equivalente ao comando
configure exclusive
CLI).Crie uma cópia privada da configuração do candidato, que permite que o aplicativo veja ou altere dados de configuração sem afetar o candidato ou a configuração ativa até que a cópia privada seja comprometida (equivalente ao comando
configure private
CLI).Altere a configuração do candidato sem bloqueá-la. Não recomendamos esse método, devido à possibilidade de conflito com alterações feitas por outros aplicativos ou usuários que estão editando o banco de dados de configuração compartilhada ao mesmo tempo.
Caso um aplicativo simplesmente solicite informações de configuração e não as mude, não é necessário bloquear a configuração ou criar uma cópia privada. O aplicativo pode começar a solicitar informações imediatamente. No entanto, se for importante que as informações que foram retornadas não mudem durante a sessão, é apropriado bloquear a configuração. As informações de uma cópia privada não podem mudar, mas podem se desviar da configuração do candidato se outros usuários ou aplicativos estão alterando a configuração do candidato.
As restrições e as interações entre as operações na configuração de candidato regular fechada e uma cópia privada são as mesmas das CLI configure exclusive
e configure private
dos comandos. Para obter mais informações, consulte Como comprometer uma cópia privada da configuração usando o Protocolo Junos XML e o Guia do Usuário CLI.
Para obter mais informações sobre como bloquear e desbloquear a configuração do candidato ou criar uma cópia privada, consulte as seguintes seções:
Bloqueio da configuração do candidato
Para bloquear a configuração do candidato, um aplicativo do cliente emite <lock-configuration/>
a etiqueta dentro de uma <rpc>
etiqueta.
<rpc> <lock-configuration/> </rpc>
Bloquear a configuração do candidato impede que outros usuários ou aplicativos mudem a configuração do candidato até que o bloqueio seja lançado. Isso é equivalente ao comando configure exclusive
CLI. Recomenda-se bloquear a configuração antes de fazer alterações, especialmente nos dispositivos onde vários usuários estão autorizados a alterar a configuração. Uma operação de commit se aplica a todas as alterações na configuração do candidato, não apenas aquelas feitas pelo usuário ou aplicativo que solicita o commit. Permitir que vários usuários ou aplicativos façam alterações ao mesmo tempo pode levar a resultados inesperados.
O protocolo Junos XML confirma que trancou a configuração do candidato ao devolver uma etiqueta de abertura e <rpc-reply>
fechamento sem nada entre </rpc-reply>
eles.
<rpc-reply xmlns:junos="URL"> </rpc-reply>
Se o servidor de protocolo Junos XML não conseguir bloquear a configuração, a etiqueta incluirá um elemento explicando <rpc-reply>
<xnm:error>
o motivo da falha. Os motivos da falha podem incluir os seguintes:
Outro usuário ou aplicativo já trancou a configuração do candidato. A mensagem de erro informa a identidade de login do usuário ou aplicativo.
A configuração do candidato já inclui alterações que ainda não foram comprometidas. Para cometer as alterações, consulte Como comprometer a configuração do candidato usando o Protocolo Junos XML. Para descartar alterações não comprometidas, consulte Como substituir a configuração usando o Protocolo Junos XML.
Apenas uma aplicação pode manter o bloqueio na configuração do candidato por vez. Outros usuários e aplicativos podem ler a configuração do candidato enquanto estão trancados ou alterar suas cópias privadas. O bloqueio persiste até que a sessão de protocolo Junos XML termine ou o aplicativo cliente desbloqueie a configuração ao emitir a etiqueta, como descrito em Bloquear e Desbloquear a Configuração do Candidato ou criar uma cópia privada usando o <unlock-configuration/>
Protocolo Junos XML.
Caso a configuração do candidato não seja comprometida antes de o aplicativo cliente desbloqueá-la ou se a sessão de protocolo Junos XML terminar por qualquer motivo antes das alterações ser comprometidas, as alterações serão automaticamente descartadas. As configurações candidatos e comprometidas continuam inalteradas.
Desbloquear a configuração do candidato
Enquanto uma aplicação do cliente prender um bloqueio na configuração do candidato, outros aplicativos e usuários não podem alterar o candidato. Para desbloquear a configuração do candidato, o aplicativo do cliente inclui <unlock-configuration/>
a etiqueta em uma <rpc>
etiqueta:
<rpc> <unlock-configuration/> </rpc>
O servidor de protocolo Junos XML confirma que desbloqueou a configuração com sucesso, retornando uma etiqueta de abertura e <rpc-reply>
fechamento sem nada entre </rpc-reply>
eles.
<rpc-reply xmlns:junos="URL"> </rpc-reply>
Se o servidor de protocolo Junos XML não conseguir desbloquear a configuração, a etiqueta incluirá um elemento explicando <rpc-reply>
<xnm:error>
o motivo da falha.
Criação de uma cópia privada da configuração
Para criar uma cópia privada da configuração do candidato, uma aplicação do cliente emite a etiqueta fechada <private/>
<rpc>
e as <open-configuration>
tags.
<rpc> <open-configuration> <private/> </open-configuration> </rpc>
A aplicação do cliente pode realizar as mesmas operações na cópia privada como na configuração do candidato regular.
Depois de fazer alterações na cópia privada, o aplicativo cliente pode comprometer as alterações na configuração ativa no dispositivo que executa o Junos OS, emitindo o elemento de tags, quanto à configuração <commit-configuration>
do candidato regular. Entretanto, existem algumas restrições na operação de commit para uma cópia privada. Para obter mais informações, consulte Como comprometer uma cópia privada da configuração usando o Protocolo Junos XML.
Para descartar a cópia privada sem compromete-la, um aplicativo do cliente emite <close-configuration/>
a etiqueta fechada em um elemento de <rpc>
tags.
<rpc> <close-configuration/> </rpc>
Qualquer alteração na cópia privada está perdida. Alterações na cópia privada também são perdidas se a sessão de protocolo Junos XML terminar por qualquer motivo antes que as alterações sejam comprometidas. Não é possível salvar alterações em uma cópia privada que não seja por meio da emissão do <commit-configuration>
elemento de tags.
A partir da versão 18.2R1 Junos OS, a operação do protocolo Junos XML não emite uma mensagem de aviso " ao abrir uma cópia privada da configuração <open-configuration>
uncommitted changes will be discarded on exit
do candidato. No entanto, o Junos OS ainda descarta as alterações não comprometidas ao fechar a cópia privada.
O exemplo a seguir mostra como criar uma cópia privada da configuração. O servidor de protocolo Junos XML inclui um lembrete em sua resposta de confirmação de que as alterações são descartadas de uma cópia privada caso elas não sejam comprometidas antes do fim da sessão.
