Entendendo os módulos YANG que definem a configuração do Junos OS
A Juniper Networks publica o esquema de configuração do Junos OS usando modelos YANG. No Junos OS Release 17.3 e anterior, o esquema de configuração do Junos OS é publicado em um único módulo YANG. A partir do Junos OS Release 17.4R1, o esquema de configuração do Junos OS é publicado usando um módulo de configuração raiz que é aumentado por vários módulos menores. Isso permite que os consumidores do esquema importem apenas os módulos necessários para suas tarefas.
A partir do Junos OS Release 17.4R1, os módulos YANG do Junos OS usam uma nova convenção de nomenclatura para nome, nome de arquivo e namespace do módulo. Para obter mais informações, veja Entendendo os módulos YANG do Junos.
O módulo de configuração raiz inclui o nó de configuração de nível superior e quaisquer nós que não sejam emitidos como módulos separados. Módulos menores separados aumentam o módulo de configuração raiz para as diferentes hierarquias de declaração de configuração. Os módulos de configuração que aumentam o módulo raiz contêm o esquema para o nível de hierarquia de declaração de configuração indicado no nome, nome do arquivo e namespace do módulo.
O exemplo a seguir mostra uma parte do módulo que contém o modelo YANG para a [edit interfaces]
hierarquia:
/* * Copyright (c) 2017 Juniper Networks, Inc. * All rights reserved. */ module junos-conf-interfaces { namespace "http://yang.juniper.net/junos/conf/interfaces"; prefix jc-interfaces; import junos-common-types { prefix jt; } import junos-conf-root { prefix jc; } organization "Juniper Networks, Inc."; contact "yang-support@juniper.net"; description "Junos interfaces configuration module"; revision 2017-01-01 { description "Junos: 17.4R1.17"; } augment /jc:configuration { uses interfaces-group; } augment /jc:configuration/jc:groups { uses interfaces-group; } ...
As concessionárias YANG precisam importar apenas os módulos necessários para a tarefa de configuração específica em questão. Como resultado, as ferramentas que consomem os módulos de configuração exigem menos tempo para compilar, validar ou executar outras funções nos módulos do que quando importam um único módulo grande.
Para determinar o módulo YANG de configuração correspondente a uma área específica da configuração, emita o comando do show | display detail
modo de configuração. No exemplo a seguir, o esquema para o [edit protocols ospf]
nível de hierarquia está incluído no módulo junos-conf-protocols@2017-01-01.yang .
user@host# show protocols ospf | display detail ## ## ospf: OSPF configuration ## YANG module: junos-conf-protocols@2017-01-01.yang ## lsa-refresh-interval: LSA refresh interval (minutes) ## range: 25 .. 50 ## ## default: 50 ## ...
Você pode baixar os módulos YANG nativos do Junos no site de download da Juniper Networks ou no repositório Juniper/yang GitHub, ou pode gerar os módulos no dispositivo local. Para gerar os módulos de configuração no dispositivo local, emita o show system schema format yang module module
comando. A versão do Junos OS determina as opções de comando disponíveis.
-
No Junos OS Release 17.3 e anterior, especifique o
configuration
módulo.user@host> show system schema format yang module configuration
-
No Junos OS Release 17.4 e posterior, especifique o nome de um módulo individual para devolver um único módulo de configuração ou especifique
all-conf
o retorno de todos os módulos de configuração.user@host> show system schema format yang module all-conf output-directory /var/tmp/yang
Se você especificar module configuration
ou module all-conf
, os arquivos de saída incluem módulos de configuração nativos do Junos OS, bem como quaisquer módulos de configuração padrão ou personalizados que tenham sido adicionados ao dispositivo.
A partir do Junos OS Release 19.1R2 e 19.2R1, o show system schema
comando deve incluir a opção output-directory
de comando e especificar o diretório no qual gerar o arquivo ou arquivos. Em versões anteriores, você pode omitir a opção output-directory
ao solicitar um único módulo para exibir o módulo na saída padrão.
Para gerar os módulos a partir de uma sessão remota, execute a <get-yang-schema>
operação Junos OS RPC ou o <get-schema>
Protocolo de Configuração de Rede (NETCONF) com as opções apropriadas.
A partir do Junos OS Release 17.4R1, os módulos YANG nativos gerados em um dispositivo local contêm esquemas específicos da família, que são idênticos em todos os dispositivos da família de dispositivos. Em versões anteriores, os módulos gerados contêm esquemas específicos do dispositivo. Para gerar módulos específicos do dispositivo no Junos OS Release 17.4R1 e posterior, configure a declaração de device-specific
configuração no nível de [edit system services netconf yang-modules]
hierarquia.
junos
família de dispositivos em vez de
junos-qfx
.
show system schema
comando deve incluir a opção
output-directory
de comando e especificar o diretório no qual gerar o arquivo ou arquivos.