Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Use o Junos PyEZ para comparar a configuração do candidato e uma configuração previamente comprometida

RESUMO Use o Junos PyEZ diff() e pdiff() os métodos para comparar a configuração do candidato com uma configuração previamente comprometida.

Os dispositivos Junos armazenam uma cópia da configuração mais recentemente comprometida e até 49 configurações anteriores. O utilitário Junos PyEZ jnpr.junos.utils.config.Config permite que você compare a configuração do candidato com uma configuração previamente comprometida e imprima ou devolva a diferença. A Tabela 1 descreve os métodos, que são equivalentes à emissão do comando de show | compare rollback n modo de configuração no Junos OS CLI.

Tabela 1: Métodos Junos PyEZ para comparar configurações

Método

Descrição

diff()

Compare a configuração do candidato com a configuração de reversão especificada e devolva a diferença como um objeto.

pdiff()

Compare a configuração do candidato com a configuração de reversão especificada e imprima a diferença diretamente à saída padrão.

Nota:

O banco de dados de configuração efêmero armazena apenas a versão atual dos dados de configuração efêmeros comprometidos e, como resultado, não suporta comparar a configuração efêmera modificada com configurações previamente comprometidas.

Os diff() métodos e pdiff() os métodos recuperam a diferença entre a configuração do candidato e uma configuração previamente comprometida, que é mencionada pelo parâmetro de ID de reversão, rb_idna chamada do método. Se o parâmetro for omitido, a ID de reversão é padrão para 0, o que corresponde à configuração ativa.

A diferença é devolvida no formato de patch, onde:

  • As declarações que existem apenas na configuração do candidato são prefixadas com um sinal plus (+)

  • As declarações que existem apenas na configuração de comparação e não na configuração do candidato são prefixadas com um sinal negativo (-)

  • Os métodos retornam ou imprimem None se não houver diferença entre as configurações.

Em um aplicativo Junos PyEZ, após estabelecer uma conexão com o dispositivo, você pode chamar o método ou pdiff() o diff() método de um Config objeto ou tabela para comparar as configurações do candidato e da reversão. O exemplo a seguir usa a Config classe para carregar alterações de configuração na configuração do candidato e, em seguida, chama o pdiff() método para impressão das diferenças entre a configuração modificada do candidato e a configuração ativa antes de comprometer as mudanças.

Quando você executa o código, ele imprime as diferenças para a saída padrão. Por exemplo:

Para recuperar a diferença entre as configurações como um objeto para mais manipulação, ligue para o diff() método em vez do pdiff() método e armazene a saída em uma variável. Por exemplo:

Quando você usa tabelas e visualizações de configuração do Junos PyEZ para fazer alterações de configuração estruturadas em um dispositivo, você pode carregar e comprometer os dados de configuração, seja ligando para olock(), commit() load()e unlock() métodos individualmente, ou ligando para o set() método, que chama todos esses métodos automaticamente. Se você usa tabelas de configuração para configurar um dispositivo e deseja comparar a configuração atualizada do candidato com uma configuração previamente comprometida usando os diff() métodos ou pdiff() em seu aplicativo, você deve usar os métodos e os commit() load() métodos em vez do set() método. Fazer isso permite que você recuperar as diferenças após o carregamento dos dados de configuração na configuração do candidato, mas antes que eles sejam comprometidos. Por exemplo:

O exemplo a seguir compara a configuração do candidato com a configuração com o ID 5 de reversão, mas não faz nenhuma alteração na configuração: