configurar netconf/yang e valide o exemplo para ... · yang é uma língua baseada padrões da...
TRANSCRIPT
-
Configurar NETCONF/YANG e valide o exemplopara Plataformas do Cisco IOS XE 16.x ndice
IntroduoPr-requisitosRequisitosComponentes UtilizadosInformaes de ApoioModelos de dados - Programtico e padres baseou a configurao ea monitoraoContudo uns outros dados Modeling Language da prxima gerao (YANG) (RFC 6020)Protocolo da configurao de rede (NETCONF) (RFC 6241)Configurar1. Configurao bsica de um software sendo executado do catalizador 3850 IOS-XE 16.3.3 paraapoiar a modelagem de dados NETCONF/YANG2. Configurao (opcional) adicional para permitir o Syslog NETCONF/YANG e o monitoramentode evento SNMP3. Configurao da conectividade de rede do catalizador 3850 usado neste exemploVerifique NETCONF/YANG no catalizador 3850Configurar a plataforma do gerenciamento centralizado (o porttil)1. Instale o aplicativo do explorador de Yang em um porttil2. Use o aplicativo do explorador de Yang3. Subscreva s notificaes NETCONF (opcionais)Exemplos operacionais bsicos NETCONF/YANG1. Exemplo da recuperao de dadosPea uma lista de nomes da relao do catalizador 38502. Exemplo de configuraoFeche uma interface Ethernet no catalizador 3850Indicador da configurao da interface ambos do catalizador 3850 CLI antes e depois daalterao de configurao acima NETCONF/YANGSalvar a configurao em um catalizador 3850Indicador do catalizador 3850 CLI da configurao de inicializao salvar aps a operao acimada salvaguarda da configurao NETCONF/YANGConfigurar o catalizador 3850 do CLI3. Verifique que dados operacionais do SNMP MIB esto disponveis atravs das operaes dopedido GETCarregue modelos de dados adicionais de YANG1. Carregue os vrios arquivos do modelo de dados de YANG individualmente2. Aumenta a carga de todos os arquivos do modelo de dados de YANG imediatamenteModelos de dados notveis de YANGmodelo de dados cisco-ia.yangmodelo de dados ned.yangScript do pito
-
Gerencia um script do pito do aplicativo GUI do explorador de YangExecute um script do pito da plataforma do gerenciamento centralizado (o porttil)TroubleshootingMensagens de Erro NETCONFExemplo de erro RPCOutros exemplos do tipo de erro RPC
Introduo
Este documento descreve como configurar NETCONF/YANG em Plataformas baseadas 16.x doCisco IOS XE. O exemplo centra-se sobre testes de laboratrio com o catalizador 3850 contudo,a informao fornecida igualmente aplica ao outro Cisco IOS XE 16.x Plataformas tais como os1000 Series Router de Cisco ASR.
Pr-requisitos
Requisitos
NETCONF/YANG apoiado at data do software IO XE 16.3.1.
Nota: Nenhuma experincia prvia com NETCONF, YANG, ou script do pito exigida a fimusar este documento.
Componentes Utilizados
As informaes neste documento so baseadas nestas verses de software e hardware:
Neste exemplo um Cisco IOS XE running 16.3.3 WS-C3850-12X48U do interruptor sozinho dosuporte usado como o server NETCONF. Este o dispositivo que so configurados e do quedados (show command output (resultado do comando show)) est sendo recolhido atravs deNETCONF/YANG.
Um porttil (MacBook Pro de Apple que executa o navegador da serra 10.12.2 e do GoogleChrome macOS) usado como o cliente NETCONF. Atua comoa plataforma do gerenciamentocentralizado utilizando o aplicativo do explorador de Yang. o dispositivo que cria os pedidosformatados de YANG que so enviados ao catalizador 3850 atravs das mensagens NETCONFRPC (chamada de procedimento remoto) para configurar e recolher dados do catalizador 3850.
As informaes neste documento foram criadas a partir de dispositivos em um ambiente delaboratrio especfico. Todos os dispositivos utilizados neste documento foram iniciados com umaconfigurao (padro) inicial. Se a sua rede estiver ativa, certifique-se de que entende o impactopotencial de qualquer comando.
Informaes de Apoio
-
Modelos de dados - Programtico e padres baseou a configurao eamonitorao
Os modelos de dados fornecem uma substituio e uma maneira centralizadaconfigurardispositivos Cisco (em vez de usar a interface de linha do comando cisco (CLI) ou oSimple Network Management Protocol (SNMP)) e para recolher dados operacionais (comandosshow) dos dispositivos Cisco. Desde que os modelos de dados so baseados padres o mesmoprocedimento pode ser usado para configurar tambm ou recolher os dados dos dispositivos queno da Cisco que lhes fazem o ideal para clientes que apoiam fornecedores mltiplos. Umgerenciamento centralizado que a plataforma (por exemplo um porttil) pode ser usada paraconfigurar ou recolher dados dos dispositivos Cisco mltiplos e da arquitetura do modelo dedados permite automatizando estes procedimentos atravs do script do pito (dois benefciosprincipais adicionais).
Contudo uns outros dados Modeling Language da prxima gerao (YANG) (RFC6020)
YANG uma lngua baseada padres da modelagem de dados usada para criar pedidos daconfigurao de dispositivo ou os pedidos para dados operacionais (do comando show). Tem umformato estruturado similar a um programa informtico que seja compreensvel para o utilizador.Diversos aplicativos esto disponveis que pode ser sido executado em uma plataforma dogerenciamento centralizado (por exemplo um porttil) para criar este pedidos da configurao edos dados operacionais.
H os modelos de dados (comuns) padro de YANG que se aplicam a todos os vendedores (porexemplo, um pedido desabilitar ou fechar uma interface Ethernet deve ser idntico para Cisco edispositivos que no da Cisco) assim como a modelos de dados do dispositivo (nativo,especfico do vendedor) que facilitam configurar ou recolher os dados operacionais associadoscom as caractersticas proprietrias do vendedor.
Protocolo da configurao de rede (NETCONF) (RFC 6241)
NETCONF um padro baseado e o protocolo codificado do linguagem de marcao extensvel(XML) que fornece o transporte para comunicar o pedido formatado YANG da configurao oudos dados operacionais de um aplicativo que seja executado em uma plataforma dogerenciamento centralizado (por exemplo um porttil) ao dispositivo Cisco de que um usuriodeseja configurar ou pedir dados operacionais (do comando show). Proporciona serviosbaseados transao tais como o abortamento do pedido da configurao completa quando umaparcela desse pedido de configurao falha. NETCONF usa um mecanismo baseado simples dachamada de procedimento remoto (RPF) para facilitar uma comunicao entre um cliente (scriptou aplicativo da plataforma do gerenciamento centralizado) e um server (switch Cisco ouroteador). Usa o Shell Seguro (ssh) como a camada de transporte atravs dos dispositivos derede. As operaes algum NETCONF incluem obtm, GET-configurao, editar-configurao, eRPC.
Configurar
1. Configurao bsica de um software sendo executado do catalizador 3850 IOS-XE 16.3.3 para apoiar a modelagem de dados NETCONF/YANG
-
3850-1# show running-config
netconf-yang -------------------------------------> Enable NETCONF/YANG globally. It may take up
to 90 seconds to initialize
username cisco1 privilege 15 password 0 cisco1 ---> Username/password used for NETCONF-SSH
access
Nota: Esta a configurao completa exigida no catalizador 3850 para apoiar a modelagemde dados NETCONF/YANG mas supe que nenhum novo modelo aaa est configuradoglobalmente (o padro) tambm. Se se deseja permitir o AAA (o autenticao, autorizao erelatrio) configurando o novo modelo aaa a seguinte configurao exigido entoigualmente em um mnimo. Voc pode igualmente expandir este para usar o AAA com umTACACS+ ou uma configurao RADIUS mas esta alm do alcance deste exemplo.
aaa new-model
aaa authorization exec default local -------------> Required for NETCONF-SSH connectivity and
edit-config operations
2. Configurao (opcional) adicional para permitir o Syslog NETCONF/YANG e omonitoramento de evento SNMP
A obrigao destas configuraes de servidor snmp esta presente a fim permitir a gerao denotificaes NETCONF (RFC 5277 - https://tools.ietf.org/html/rfc5277) para mensagens do sysloge para que algum SNMP traps configurado igualmente gerencia notificaes NETCONF.
Note que quando estes forem o mnimo exigido, o servidor snmp adicional permite entradaspde esta presente tambm. Um cliente (plataforma do gerenciamento centralizado) registra-separa receber o crrego da notificao NETCONF de um server (catalizador 3850) e para enviaruma assinatura especfica RPC (veja a seo 3 de configurar a plataforma do gerenciamentocentralizado (porttil) ").
3850-1# show running-config
snmp-server community public RW --------------------------------> SNMP gateway in DMI requires
community public in 16.3.1 (a future software release should allow a configurable community
string)
snmp-server trap link ietf -------------------------------------> enable traps for IETF link
up/down
snmp-server enable traps snmp authentication linkdown linkup ---> enable traps for link up/down
snmp-server enable traps syslog --------------------------------> enable traps for Syslog so
notifications will be generated
snmp-server manager --------------------------------------------> enable snmp-server
Para o Syslog, esta obrigao da configurao esta presente para a relao do modelo de dados(DMI) no catalizador 3850 para ter a capacidade para gerar as notificaes NETCONF definidasno RFC 5277 quando os mensagens do syslog so gerados por IOSd no catalizador 3850.
logging history debugging -------> required for the generation of any NETCONF notification
messages for Syslog
logging snmp-trap emergencies ---> configure 1 or more of the following to control which levels
of Syslog messages are returned as notifications
logging snmp-trap alerts
logging snmp-trap critical
logging snmp-trap errors
logging snmp-trap warnings
logging snmp-trap notifications
logging snmp-trap informational
https://tools.ietf.org/html/rfc5277
-
logging snmp-trap debugging
Para o SNMP traps, esta configurao exigida para gerar notificaes NETCONF. No softwareIOS-XE 16.3.1 um mximo do SNMP traps 10 pode ser configurado para gerar notificaesNETCONF mas esta limitao ser removida em uma liberao futura. A gerao da notificaopara o SNMP traps permitida revelia. Para desabilitar a gerao de notificaes da armadilhade SNMP use este CLI nenhuma global-transmisso do SNMP-armadilha-controle de netconf-Yang Cisco-ia.
netconf-yang cisco-ia snmp-trap-control trap-list 1.3.6.1.6.3.1.1.5.3 --------> LinkDown trap
netconf-yang cisco-ia snmp-trap-control trap-list 1.3.6.1.6.3.1.1.5.4 --------> LinkUp trap
netconf-yang cisco-ia snmp-trap-control trap-list 1.3.6.1.4.1.9.9.41.2.0.1 ---> Syslog generated
notification trap
3. Configurao da conectividade de rede do catalizador 3850 usado nesteexemplo
A interface de gerenciamento GigabitEthernet0/0 do catalizador 3850 usada para conectar rede e plataforma do gerenciamento centralizado (um porttil ser usado) neste exemplo. Oprotocolo de configurao dinmica host (DHCP) foi usado para atribuir o endereo IP172.16.167.175 a esta relao. As configuraes alternadas podem ser usadas no catalizador3850 enquanto o porttil pode alcanar o catalizador 3850 na rede.
3850-1# show running-config
vrf definition Mgmt-vrf
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
interface GigabitEthernet0/0
vrf forwarding Mgmt-vrf
ip address dhcp
negotiation auto
ip route vrf Mgmt-vrf 0.0.0.0 0.0.0.0 172.16.167.161
3850-1# show ip interface brief
Interface IP-Address OK? Method Status Protocol
Vlan1 1.1.1.1 YES NVRAM up up
Vlan10 10.10.10.1 YES NVRAM up up
Vlan20 20.20.20.1 YES NVRAM up up
GigabitEthernet0/0 172.16.167.175 YES DHCP up up
Fo1/1/1 unassigned YES unset down down
Fo1/1/2 unassigned YES unset down down
GigabitEthernet1/0/1 unassigned YES manual up up
GigabitEthernet1/0/2 unassigned YES unset up up
GigabitEthernet1/0/3 unassigned YES unset down down
GigabitEthernet1/0/4 unassigned YES unset down down
GigabitEthernet1/0/5 unassigned YES unset down down
Verifique NETCONF/YANG no catalizador 3850
1. Do comando line interface(cli) do catalizador 3850, este comando pode ser usado paraassegurar-se de que os processos de software exigidos para apoiar a relao do modelo dedados (DMI) no catalizador 3850 netconf-Yang uma vez executado estejam configurados.
-
3850-1# show platform software yang-management process
confd : Running
nesd : Running
syncfd : Running
ncsshd : Running
dmiauthd : Running
vtyserverutild : Running
opdatamgrd : Running
ngnix : Running
As prximas etapas so executadas da plataforma do gerenciamento centralizado. Nesteexemplo, um porttil (MacBook Pro de Apple que executa a serra 10.12.2 macOS) usado quetenha o acesso de rede ao catalizador 3850. Os comandos so emitidos de uma alerta doterminal no porttil. No h nenhum aplicativo especial carregado no porttil neste momento.
2. Assegure-se de que a plataforma do gerenciamento centralizado (porttil) possa alcanar ocatalizador 3850 (172.16.167.175) na rede.
USER1-M-902T:~ USER1$ ping 172.16.167.175
PING 172.16.167.175 (172.16.167.175): 56 data bytes
64 bytes from 172.16.167.175: icmp_seq=0 ttl=247 time=3.912 ms
64 bytes from 172.16.167.175: icmp_seq=1 ttl=247 time=6.917 ms
64 bytes from 172.16.167.175: icmp_seq=2 ttl=247 time=4.063 ms
64 bytes from 172.16.167.175: icmp_seq=3 ttl=247 time=4.371 ms
^C
3. Verifique a Conectividade SSH ao catalizador 3850 (172.16.167.175 neste exemplo) daplataforma do gerenciamento centralizado (porttil) com o nome de usurio e senha(cisco1/cisco1) da configurao acima do catalizador 3850. A resposta ser uma lista longa decapacidades NETCONF do catalizador 3850 seguido por um mensagem Hello Messages. PortaTCP 830 = netconf-SSH.
Dica: Se este teste SSH no trabalha, assegure-se de que todo o Firewall entre o porttil e ocatalizador 3850 permita a porta TCP 830 (RFC 4742 da referncia:https://tools.ietf.org/html/rfc4742).
USER1-M-902T:~ USER1$ ssh -s [email protected] -p 830 netconf
[email protected] password: cisco1
urn:ietf:params:netconf:base:1.0
urn:ietf:params:netconf:base:1.1
urn:ietf:params:netconf:capability:writable-running:1.0
urn:ietf:params:netconf:capability:xpath:1.0
urn:ietf:params:netconf:capability:validate:1.0
urn:ietf:params:netconf:capability:validate:1.1
urn:ietf:params:netconf:capability:rollback-on-error:1.0]]>
Use < ^C > to exit
Configurar a plataforma do gerenciamento centralizado (oporttil)
https://tools.ietf.org/html/rfc4742
-
1. Instale o aplicativo do explorador de Yang em um porttil
Neste exemplo, o aplicativo do explorador de Yang usado em um porttil (MacBook Pro deApple que executa o navegador da serra 10.12.2, do Google Chrome macOS) atuar como aplataforma do gerenciamento centralizado. O explorador de Yang permite que o usurio faa este:
Transfira arquivos pela rede/compile modelos de dados de YANG da interface do utilizador ouda linha de comando Construa NETCONF RPC (as chamadas de procedimento remoto) Execute o RPC contra um server real NETCONF (catalizador 3850) Salvar RPC criados s colees para uso posterior Consulte rvores do modelo de dados e inspecione propriedades de YANG
A transferncia do aplicativo do explorador de Yang, as instrues setup, e o Guia do Usuriopodem ser encontrados aqui: https://github.com/CiscoDevNet/yang-explorer.
Nota: YANG explora o aplicativo apoiado igualmente em sistemas Linux.
2. Use o aplicativo do explorador de Yang
Comece o aplicativo do explorador de Yang - de uma alerta terminal no porttil execute ocomando & de ./start.sh do diretrio do Yang-explorador.
Nota: Mantenha esta sesso terminal aberta de outra maneira o explorador que de Yang oaplicativo fechar e dever ser reiniciado. Igualmente servir como um console log daatividade do aplicativo.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ ./start.sh &
Starting YangExplorer server ..
Use http://localhost:8088/static/YangExplorer.html
Performing system checks...
System check identified no issues (0 silenced).
January 19, 2017 - 23:12:20
Django version 1.8.3, using settings 'server.settings'
Starting development server at http://localhost:8088/
Quit the server with CONTROL-C.
Lance o explorador GUI de Yang - Lance o aplicativo GUI do explorador de Yang e cole esta URLno navegador de Google Chrome no porttil (refira o tiro de tela):http://localhost:8088/static/YangExplorer.html.
Incio de uma sesso - Incio de uma sesso ao aplicativo GUI do explorador de Yang como oconvidado/convidado no canto superior direito do menu principal do aplicativo GUI.
Recupere capacidades do catalizador 3850 - incorpore os detalhes do catalizador 3850 (endereoIP de Um ou Mais Servidores Cisco ICM NT, username/senha, porta TCP 830 para o SSH-netconf) e clique capacidadesde recuperar a lista das potencialidades operacionais de YANG dosoftware do catalizador 3850.
https://github.com/CiscoDevNet/yang-explorerhttp://localhost:8088/static/YangExplorer.html
-
Dica: Este igualmente um bom teste para confirmar que uma comunicao NETCONFtrabalha entre o aplicativo do explorador de Yang na plataforma do gerenciamentocentralizado (porttil) e o catalizador 3850.
Modelos de dados de Yang da carga - Os vrios modelos de dados de YANG podem sersubscritos a inferior controlam modelos. Uma vez que subscritos, aparecem na caixa doexplorador esquerda. Estes modelos de YANG permitem a Yang o aplicativo do explorador criaras mensagens formatadas YANG das chamadas de procedimento remoto NETCONF (RPC) (queso enviadas ao catalizador 3850 para o configurar ou recuperar dados dele) sem a necessidadede ter a experincia detalhada de YANG. Os exemplos de como fazer isto so cobertos nosexemplos operacionais bsicos da prxima seo NETCONF/YANG.
-
3. Subscreva s notificaes NETCONF (opcionais)
Um cliente (plataforma do gerenciamento centralizado) registra-se para receber crregos danotificao NETCONF de um server (catalizador 3850) enviando esta mensagem formatadaYANG NETCONFRPC. O catalizador 3850 envia notificaes NETCONF assincronamente acada cliente que subscreve. Antes que voc termine esta tarefa, assegure-se de que aconfigurao correta esteja no lugar no catalizador 3850 apoiar notificaes NETCONF (veja aseo 2) de configurar NETCONF/YANG no catalizador 3850. O server NETCONF (catalizador3850) comea a enviar as notificaes de evento ao cliente NETCONF (plataforma dogerenciamento centralizado) como os eventos ocorrem dentro do sistema. Estas notificaes deevento continuaro a ser enviadas at que ou a sesso NETCONF esteja terminada ou aassinatura terminar para alguma outra razo. Veja o RFC 5277 para mais detalhes relativo sopes https://tools.ietf.org/html/rfc5277 da assinatura.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ ./start.sh &
Starting YangExplorer server ..
Use http://localhost:8088/static/YangExplorer.html
Performing system checks...
System check identified no issues (0 silenced).
January 19, 2017 - 23:12:20
Django version 1.8.3, using settings 'server.settings'
Starting development server at http://localhost:8088/
Quit the server with CONTROL-C.
Para fazer isto, voc precisa de cortarar-col este no aplicativo GUI do explorador de Yang comoum costume RPC
https://tools.ietf.org/html/rfc5277
-
Em seguida, seja executado selecionado a fim enviar a mensagem do costume RPC aocatalizador 3850 atravs de NETCONF. As respostas do catalizador 3850 para trs com umamensagem aprovada para deixar o usurio saber que a operao era bem sucedida.
Nota: A verso atual do explorador de Yang usada neste exemplo no tem uma opo paraolhar as notificaes recebidas NETCONF. So armazenados tipicamente em um incio deuma sesso clickable da notificao o menu principal do aplicativo.
Exemplos operacionais bsicos NETCONF/YANG
-
Agora que o catalizador 3850 e a plataforma do gerenciamento centralizado so configurados ecomearam se comunicar, deixa o olhar em alguns exemplos operacionais bsicos.
Os exemplos demonstraro que YANG formatou as mensagens NETCONF RPC enviadasatravs de NETCONF do explorador que de Yang da plataforma do gerenciamento centralizado(porttil) o aplicativo ao catalizador 3850 convertido ao IOS Cisco CLI padro pelo processo desoftware do confd no catalizador 3850. Tambm, os dados do IOS Cisco CLI (dados do comandoshow) esto convertidos aos dados formatados de YANG pelo processo de software do confd nocatalizador 3850 antes que estejam enviados como a mensagem NETCONF RPC ao aplicativo doexplorador de Yang da plataforma do gerenciamento centralizado (porttil). Isto significa que oCLI regular pode ainda ser usado no catalizador 3850 para configurar o interruptor e para recolherdados do comando show alm do que o uso NETCONF/YANG fazer o mesmos.
1. Exemplo da recuperao de dados
Pea uma lista de nomes da relao do catalizador 3850
A operao desejada pode ser selecionada da seo do explorador do lado esquerdo doaplicativo GUI do explorador de Yang. Neste caso, os dados do nome da relao devem serrecuperada do catalizador 3850 e assim que a operao (para a operao) selecionada seguiupela GET-configurao sob o nome da relao deixa cair para baixo. O RPC selecionado emseguida a fim gerar o NETCONF (compreensvel para o utilizador) formatado YANG RPC que exigido ser enviado ao catalizador 3850 atravs de NETCONF a fim recuperar estes dados docatalizador 3850.
Depois que a mensagem formatada YANG NETCONF RPC gerada, seja executado selctedpara envi-la ao catalizador 3850. O catalizador 3850 responde com uma lista (compreensvelpara o utilizador) formatada YANG dos nomes da relao do catalizador 3850(GigabitEthernet1/1/1, GigabitEthernet1/1/2, etc.).
-
2. Exemplo de configurao
Feche uma interface Ethernet no catalizador 3850
A operao desejada selecionada do lado esquerdo da seo do explorador do aplicativo GUIdo explorador de Yang. Neste caso, configurar uma relao (que fecha uma relao) exigido nocatalizador 3850 e assim que na configurao (para a configurao) selcted seguiu pelosparmetros operacionais exigidos sob a relao deixa cair para baixo menus. O RPCselecionado em seguida a fim gerar o NETCONF (compreensvel para o utilizador) formatadoYANG RPC que exigido ser enviado ao catalizador 3850 atravs de NETCONF a fim executaras tarefas de configurao.
-
Depois que a mensagem formatada YANG NETCONF RPC gerada, seja executadoestselecionado a fim envi-la ao catalizador 3850. O catalizador 3850 responde com uma mensagem(compreensvel para o utilizador) formatada YANG esse estado que a operao da configuraoera bem sucedida (aprovado).
A fim confirmar que a mudana ocorreu a configurao pode ser verificada. Uma operao daGET-configurao (operao) pode ser usada onde o catalizador 3850 responde para trs que ogigabitethernet da relao 1/0/16 de configurao permitiu = falso agora que significa que arelao esteve fechada.
-
Dica: No general quando no claro que formato os valores devem ser na seo doexplorador do aplicativo do explorador de Yang, despejar a configurao formated YANG docatalizador 3850 como mostrado uma boa maneira de determinar o que so antes queuma tentativa esteja feita para os alterar. O lado direito das telasabaixo fornece algumasdescries e dependncias para estes valores tambm na propriedade e nas colunas devalor.
Depois que a mensagem formatada YANG NETCONF RPC gerada, seja executado estselecionado a fim envi-la ao catalizador 3850. O catalizador 3850 responde com YANG que omensagem formatada esse indica que o gigabitethernet da relao 1/0/16 de configuraopermitiu = falso agora que significa que a relao esteve fechada.
-
Indicador da configurao da interface ambos do catalizador 3850 CLI antes e depois daalterao de configurao acima NETCONF/YANG
Na altura da operao precedente da alterao de configurao do explorador de Yang,istooutput do CLI do catalizador 3850. O gigabitethernet 1/0/16 da relao no era no padronenhum estado de fechamento at que a mensagem NETCONF RPC esteja recebida como vistono mensagem de registro no catalizador 3850. Depois que a mensagem NETCONF RPC recebida que contm o pedido formatado de YANG parada programada a relao, a operao terminada, a relao parada programada, e a configurao running alterada para refletir esta.Isto igualmente demonstra como o processo de software do confd no catalizador 3850 converte amensagem formatada YANG recebida NETCONF RPC no IOS Cisco CLI padro. Isto significaque um usurio pode ainda usar o IOS Cisco CLI regular para alterar a configurao e paraexecutar comandos show alm do que a utilizao de NETCONF/YANG para fazer o mesmos.
3850-1# show running-config interface gigabitEthernet 1/0/16
Building configuration...
Current configuration : 39 bytes
!
interface GigabitEthernet1/0/16
end
3850-1# show startup-config | begin 1/0/16
interface GigabitEthernet1/0/16
!
*Jan 5 17:05:55.345: %DMI-5-CONFIG_I:Switch 1 R0/0: nesd: Configured from NETCONF/RESTCONF by
cisco1, transaction-id 31332
*Jan 5 17:05:57.335: %LINK-5-CHANGED: Interface GigabitEthernet1/0/16, changed state to
administratively down
3850-1# show running-config interface gigabitEthernet 1/0/16
Building configuration...
Current configuration : 49 bytes
-
!
interface GigabitEthernet1/0/16
shutdown -------------------------> the interface is shutdown now
end
3850-1#
Nota: A configurao no salvar (copiado de configurao running configurao deinicializao) no catalizador 3850 ainda.
3850-1# show startup-config | begin 1/0/16
interface GigabitEthernet1/0/16
!
Salvar a configurao em um catalizador 3850
A configurao running pode ser salvar configurao de inicializao no catalizador 3850enviando esta mensagem formatada YANG NETCONF RPC ao catalizador 3850 atravs deNETCONF.
Isto feito quando voc cortara-coleste no aplicativo do explorador de Yang como um costumeRPC.
Sido executado selecionado a fim enviar a mensagem do costume RPC ao catalizador 3850atravs de NETCONF. O catalizador 3850 responde para trs com uma mensagem bemsucedida.
//cisco.com/yang/cisco-ia"/
-
Indicador do catalizador 3850 CLI da configurao de inicializao salvar aps a operao acimada salvaguarda da configurao NETCONF/YANG
A configurao de inicializao combina agora a configurao running:
3850-1# show running-config interface gigabitEthernet 1/0/16
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/16
shutdown
end
3850-1# show startup-config | begin 1/0/16
interface GigabitEthernet1/0/16
shutdown
!
Configurar o catalizador 3850 do CLI
Como mencionado previamente, o catalizador regular 3850 CLI pode ainda ser usado paraconfigurar o interruptore para recolher dados do comando show alm do que a utilizao deNETCONF/YANG para fazer o mesmos. Quandoo catalizador 3850 CLI usado em vez deNETCONF/YANG para configurar o interruptor a executar-configurao nova est sincronizadacom a relao do modelo de dados (DMI) no catalizador 3850 atravs do processo de software dosyncfd.
3850-1# show running-config interface gigabitEthernet 1/0/16
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/16
shutdown
end
-
3850-1# config t
Enter configuration commands, one per line. End with CNTL/Z.
3850-1(config)# interface gigabitEthernet 1/0/16
3850-1(config-if)#no shutdown
3850-1(config-if)# exit
3850-1(config)# exit
3850-1#
*Jan 24 16:39:09.968: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/16, changed state to down
*Jan 24 16:39:13.479: %SYS-5-CONFIG_I: Configured from console by console
*Jan 24 16:39:15.208: %DMI-5-SYNC_START:Switch 1 R0/0: syncfd: External change to running
configuration detected. The running configuration will be synchronized to the DMI data store.
*Jan 24 16:39:43.290: %DMI-5-SYNC_COMPLETE:Switch 1 R0/0: syncfd: The running configuration has
been synchronized to the DMI data store.
3850-1#
A prxima vez os pedidos de aplicativo do explorador de Yang uma cpia da configurao dainterface depois que a mudana CLI, a mudana refletida corretamente na sada de YANG.
Sido executado selecionado a fim enviar a mensagem da GET-configurao RPC paraGigabitEthernet1/0/16 ao catalizador 3850 atravs de NETCONF. O catalizador 3850 respondepara trs coma configurao da interface GigabitEthernet1/0/16 que mostra que permitido =retifique.
-
3. Verifique que dados operacionais do SNMP MIB esto disponveis atravs dasoperaes do pedido GET
Os dados do SNMP MIB que podem ser retornados com operaes NETCONF GET no sousurio configurvel. Todos apoiaram o MIBs SNMP que convertido nos dados estruturadosdefinidos por YANG que os modelos de dados so parte do software IOS-XE no catalizador 3850.Para descobrir que dados MIB esto disponveis nos pedidos GET l seja trs opes indicadas.Todos MIBs apoiado incluiro smiv2 na resposta da capacidade.
Opo 1.O boto das capacidades pode ser selecionado no aplicativo GUI do explorador deYang. O catalizador 3850 responde para trs com sua lista da capacidade que contm asentradas de MIB smiv2.
-
Opo 2.Esta mensagem formatada YANG NETCONF RPC pode ser enviada ao catalizador3850 atravs de NETCONF a fim recuperar a lista das capacidades que inclui modelosdisponveis smiv2 MIB.
3850-1# show running-config interface gigabitEthernet 1/0/16
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/16
shutdown
end
3850-1# config t
Enter configuration commands, one per line. End with CNTL/Z.
3850-1(config)# interface gigabitEthernet 1/0/16
3850-1(config-if)#no shutdown
3850-1(config-if)# exit
3850-1(config)# exit
3850-1#
*Jan 24 16:39:09.968: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/16, changed state to down
*Jan 24 16:39:13.479: %SYS-5-CONFIG_I: Configured from console by console
*Jan 24 16:39:15.208: %DMI-5-SYNC_START:Switch 1 R0/0: syncfd: External change to running
configuration detected. The running configuration will be synchronized to the DMI data store.
*Jan 24 16:39:43.290: %DMI-5-SYNC_COMPLETE:Switch 1 R0/0: syncfd: The running configuration has
been synchronized to the DMI data store.
3850-1#
Isto feito quando voc cortara-colno aplicativo do explorador de Yang como um costume RPC.
-
Sido executado selecionado a fim enviar a mensagem do costume RPC ao catalizador 3850atravs de NETCONF. O catalizador 3850 responde para trs com uma lista da capacidade queinclua o MIBs smiv2 apoiado.
Option 3.Uma lista de modelos disponveis MIB pode ser vista nas capacidades e no mensagemHello Messages NETCONF retornados pelo catalizador 3850 em resposta a uma conexo deSSH da plataforma do gerenciamento centralizado (porttil).
USER1-M-902T:~ USER1$ ssh -s [email protected] -p 830 netconf
[email protected] password: cisco1
-
urn:ietf:params:netconf:base:1.0
urn:ietf:params:netconf:base:1.1
urn:ietf:params:netconf:capability:writable-running:1.0
urn:ietf:params:netconf:capability:xpath:1.0
urn:ietf:params:netconf:capability:validate:1.0
urn:ietf:params:netconf:capability:validate:1.1
urn:ietf:params:netconf:capability:rollback-on-error:1.0]]>
Use < ^C > to exit
Modelos de dados adicionais de YANG da carga
Este link contm arquivos adicionais do modelo de dados de YANG. Estes arquivos permitem queas operaes adicionais sejam executadas atravs de NETCONF/YANG que se relaciona aoutras caractersticas do catalizador 3850 tais como para configurar o roteamento do unicast doIPv4, o QoS, etc.
https://github.com/YangModels/yang
O padro (terra comum, Internet Engineering Task Force (IETF)) os modelos que se aplicam atodos os vendedores podem ser encontrados selecionando o padro, IETF, RFC. Isto fornece osmodelos de dados baseados padres de YANG tomados das publicaesRFC pelo corpo depadres de IETF.
https://github.com/YangModels/yang/tree/master/standard/ietf/RFC
Os modelos nativos de Cisco (dispositivo, especfico do vendedor) podem ser encontradosselecionando o vendedor, Cisco, xe, 1632. Isto fornece os modelos de dados proprietrios deYANG para a verso 16.3.2 do Software Cisco IOS XE para o catalizador 3850.
https://github.com/YangModels/yang/tree/master/vendor/cisco/xe/1632
https://github.com/YangModels/yanghttps://github.com/YangModels/yang/tree/master/standard/ietf/RFChttps://github.com/YangModels/yang/tree/master/vendor/cisco/xe/1632
-
Estes arquivos podem ser transferidos na plataforma do gerenciamento centralizado (porttil) eento por sua vez ser carregados no aplicativo do explorador de Yang. H duas maneiras defazer isto. O primeiro carregar individualmente nos vrios arquivos do modelo de dados deYANG, os segundos uma carga de maioria de todos os arquivos.
1. Carregue os vrios arquivos do modelo de dados de YANG individualmente
Dica: http://rawgit.com/pde ser exigido para transferir os arquivos de Github. Paratransferir arquivos do github selecione o botocru associado com o arquivo de YANG. Seuma URL dada em vez de uma opo da transferncia do arquivo, a URLpode ser coladaem http://rawgit.com/ que fornecero por sua vez uma produo URL. Colar esta produonova URL em um navegador deve fornecer a opo da transferncia do arquivo.
Neste exemplo cisco-ethernet.yang tem sido transferido j do github na plataforma dogerenciamento centralizado (porttil). Esto aqui as etapas para carregar o arquivo no aplicativoGUI e ento Subscribeto do explorador de Yang ele de modo que seja carregado na seo doexplorador da ferramenta.
Dica: A funcionalidade das capacidades NETCONF pode ser usada para determinar quemodelos de dados so apoiados pelo software do catalizador 3850. Veja a seo 2. deconfigurar a plataforma do gerenciamento centralizado (porttil).
http://rawgit.com/http://rawgit.com/
-
2. Aumenta a carga de todos os arquivos do modelo de dados de YANGimediatamente
Este procedimento mencionado igualmente na seo 5.2.2 aqui:https://github.com/CiscoDevNet/yang-explorer.
De uma alerta terminal na plataforma do gerenciamento centralizado (porttil - MacBook Pro deApple que executa a serra 10.12.2 macOS):
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
Todos os modelos de dados de Yang so considerados agora no aplicativo GUI do explorador deYang. Os arquivos associados com as caractersticas do interesse podem ser selecionadosquando voc o cliquesubscreve que as adiciona ento na seo do explorador da ferramenta.
Dica: A funcionalidade das capacidades NETCONF pode ser usada para determinar quemodelos de dados so apoiados pelo Catalyst Software. Veja a seo 2. de configurar a
https://github.com/CiscoDevNet/yang-explorer
-
plataforma do gerenciamento centralizado (porttil).
Outras tarefas podem agora ser terminadas como para gerar o NETCONF/YANG RPC exigidopara salvar a configurao no catalizador 3850. Isto feito quando voc selecionasalvaguarda-Conf RPC na seo do explorador no lado esquerdo do aplicativo do explorador de Yang. O RPC selecionado ento para gerar o NETCONF formatado YANG RPC que ser enviado aocatalizador 3850 atravs de NETCONF para salvar a configurao no catalizador 3850.
-
Sido executado selecionado para enviar a mensagem do costume RPC ao catalizador 3850atravs de NETCONF. O catalizador 3850 responde para trs com uma mensagem bemsucedida.
Modelos de dados notveis de YANG
modelo de dados cisco-ia.yang
Esto aqui alguns exemplos RPC para o modelo de dados cisco-ia.yang. So notveis desde que
-
envolvem operaes como para salvar a configurao do catalizador 3850, para sincronizar aexecutar-configurao do catalizador 3850 loja dos dados de Interfcae do modelo de dadoslocais (DMI), e para restaurar a relao DMI no catalizador 3850.
A primeira etapa subscrever ao modelo de dados cisco-ia.yang de modo que aparea na seodo explorador na esquerda do aplicativo GUI do explorador de YANG.
Uma vez que o modelo de dados de Cisco-ia expandido na seo do explorador na esquerdado aplicativo GUI do explorador de YANG as vrias opes operacionais esto consideradas.Como um exemplo para usar uma das opes disponveis do modelo de dados cisco-ia.yang, aoperao da salvaguarda-configurao est selecionada e o RPC associado gerado quandovoc seleciona o RPCBUTTON.
-
Em seguida,seja executado selecionado a fim enviar a mensagem RPC ao catalizador 3850atravs de NETCONF. As respostas do catalizador 3850 para trs com uma mensagem bemsucedida para deixar o usurio conhecer a operao eram bem sucedidas.
Todas as vrias operaes do modelo de dados cisco-ia.yang so descritas aqui:
sincronizao-de - Este RPC faz com que a relao NETCONF no catalizador 3850 sincronize arepresentao do datastore NETCONF da configurao running do dispositivo com aconfigurao running no dispositivo. Ambos existem no catalizador 3850 prprio.
USER1-M-902T:~ USER1$ cd yang-explorer
-
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
O comportamento padro deste RPC executar sem-padres de uma sincronizao que causa asada de um comando show running-configenviado ao dispositivo para ser sincronizado com odatastore NETCONF. Se os sincronizao-padres estam presente, a relao NETCONFigualmente l a informao de configurao padro fornecida pelo cdigo da caracterstica. Estaopo no usada na maioria dos casos. Isto seria usado tipicamente somente se o usurio darelao NETCONF quis usar o NETCONF substituicomandos substituir sees completas daconfigurao de dispositivo.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
salvaguarda-configurao - Este RPC executa um comando da memria da escrita (partida-configurao da executar-configurao da cpia) salvar a configurao running do dispositivoatual configurao de inicializao de dispositivo.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
-
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
ponto de verificao - Este RPC faz com que a relao NETCONF salvar a configurao runningao armazenamento permanente usando a caracterstica incorporado do arquivo de configuraode IOSd.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
rollback - Este RPC causa relao NETCONF ao rollback a executar-configurao dodispositivo a uma configurao running que salvar com o ponto de verificao RPC ou toda aoutra configurao running vlida salvar no dispositivo.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
-
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
reverta - Este RPC faz com a relao NETCONF reverta para fazer com que IOSd reverta configurao de execuo anterior imediatamente, aps uma demora de tempo, ou aps umtempo ocioso se nenhuma outra operao da configurao recebida.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
restaurao - A relao NETCONF pode ser reiniciada com este RPC. Se reinitialize verdadeiro,a relao NETCONF cancela toda a informao de estado que existe no datastore que podeescrever-se-sendo executado. Se falso (o padro) a informao de estado do datastore daconfigurao NETCONF preservada.
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ cd server
USER1-M-902T:server USER1$ python manage.py bulkupload --user guest --git
https://github.com/YangModels/yang.git --dir vendor/cisco/xe/1632
Git upload ..
Cloning into '/Users/USER1/yang-explorer/server/data/session/tmpk7V4O6'...
-
remote: Counting objects: 5610, done.
remote: Total 5610 (delta 0), reused 0 (delta 0), pack-reused 5610
Receiving objects: 100% (5610/5610), 11.80 MiB | 2.34 MiB/s, done.
Resolving deltas: 100% (3159/3159), done.
Checking out files: 100% (3529/3529), done.
Cleaning up /Users/USER1/yang-explorer/server/data/session/tmpk7V4O6
Compiling : user: guest, file: /Users/USER1/yang-explorer/server/data/session/tmpHTAEP3/cisco-
acl-oper.yang
DEBUG:root:Compiling session dependency ...
//anaconda/bin/pyang
DEBUG:root:Rebuilding dependencies for user guest
--snip--
Nota: Algumas verses das plataformas Cisco ou de Cisco IOS Software no puderamapoiar toda a funcionalidade dada neste tempo. Por exemplo, quando voc envia arestaurao acima a um catalizador 3850 IO sendo executado 16.3.3, da o erro noapoiado restaurao retornado pelo catalizador 3850 plataforma do gerenciamentocentralizado (porttil) como uma resposta RPC.
application
operation-failed
error
/nc:rpc/cisco-
ia:reset
Reset not
supported
reset
modelo de dados ned.yang
Os modelos de dados do direcionador dos elementos de rede (NED) tais como ned.yangfornecem a maioria de potncia em termos da configurao do dispositivo Cisco (catalizador3850). Esto aqui alguns screen shots que demonstram este.
A primeira etapa subscrever ao modelo de dados ned.yang de modo que aparea na seo doexplorador na esquerda do aplicativo GUI do explorador de YANG.
//cisco.com/yang/cisco-ia">/nc:rpc/cisco-ia:reset/nc:rpc/cisco-ia:reset pip install lxml ncclient
Running script: (save as example.py)
> python example.py -a 172.16.167.174 -u cisco1 -p cisco1 --port 830
"""
import lxml.etree as ET
from argparse import ArgumentParser
from ncclient import manager
-
from ncclient.operations import RPCError
payload = """
"""
if __name__ == '__main__':
parser = ArgumentParser(description='Usage:')
# script arguments
parser.add_argument('-a', '--host', type=str, required=True,
help="Device IP address or Hostname")
parser.add_argument('-u', '--username', type=str, required=True,
help="Device Username (netconf agent username)")
parser.add_argument('-p', '--password', type=str, required=True,
help="Device Password (netconf agent password)")
parser.add_argument('--port', type=int, default=830,
help="Netconf agent port")
args = parser.parse_args()
# connect to netconf agent
with manager.connect(host=args.host,
port=args.port,
username=args.username,
password=args.password,
timeout=90,
hostkey_verify=False,
device_params={'name': 'csr'}) as m:
# execute netconf operation
try:
response = m.dispatch(ET.fromstring(payload)).xml
data = ET.fromstring(response)
except RPCError as e:
data = e._raw
# beautify output
print(ET.tostring(data, pretty_print=True))
Execute um script do pito da plataforma do gerenciamento centralizado (o porttil)
Est aqui a verificao do catalizador 3850 CLI antes que voc execute o script example.py dopito que salvar a executar-configurao partida-configurao. Neste momento oshutdowncommand est na executar-configurao mas no na partida-configurao para arelao GigabitEthernet1/0/10.
3850-1# show running-config interface gigabitEthernet 1/0/10
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/10
shutdown
end
3850-1# show startup-config | begin 1/0/10
interface GigabitEthernet1/0/10
!
interface GigabitEthernet1/0/11
!
interface GigabitEthernet1/0/12
!
interface GigabitEthernet1/0/13
!
De uma alerta regular do terminal na plataforma do gerenciamento centralizado (porttil), o
-
arquivo example.py do pito que foi gerado pelo aplicativo GUI do explorador de Yang copiadoprimeiramente ao diretrio da Yang-explorao no porttil.
USER1-M-902T:~ USER1$ pwd
/Users/USER1
USER1-M-902T:~ USER1$ cp /Users/USER1/Desktop/example.py /Users/USER1/yang-explorer
USER1-M-902T:~ USER1$ cd yang-explorer
USER1-M-902T:yang-explorer USER1$ ls -l
total 112
-rw-r--r-- 1 USER1 staff 11358 Jan 4 17:59 LICENSE
-rw-r--r-- 1 USER1 staff 13635 Jan 4 17:59 README.md
drwxr-xr-x 12 USER1 staff 408 Jan 4 17:59 YangExplorer
drwxr-xr-x 7 USER1 staff 238 Jan 4 17:59 default-models
drwxr-xr-x 3 USER1 staff 102 Jan 4 17:59 docs
-rw-r--r-- 1 USER1 staff 72 Jan 4 17:59 env.sh
-rw-r--r--@ 1 USER1 staff 1990 Jan 30 17:50 example.py
-rw-r--r-- 1 USER1 staff 207 Jan 4 17:59 requirements.txt
drwxr-xr-x 11 USER1 staff 374 Jan 5 14:37 server
-rwxr-xr-x 1 USER1 staff 4038 Jan 4 17:59 setup.sh
-rwxr-xr-x 1 USER1 staff 640 Jan 4 17:59 start.sh
drwxr-xr-x 5 USER1 staff 170 Jan 4 18:00 v
USER1-M-902T:yang-explorer USER1$
Em seguida, de uma alerta regular do terminal na plataforma do gerenciamento centralizado(porttil), estes dois comandos so executados que foram fornecidos na seo de comentrio noincio do arquivo example.py que foi gerado pelo aplicativo GUI do explorador de Yang (refira aseo anterior que gerencie um script do pito do aplicativo GUI do explorador de Yang).
USER1-M-902T:yang-explorer USER1$ pip install lxml ncclient
Collecting lxml
Downloading lxml-3.7.2.tar.gz (3.8MB)
100% || 3.8MB 328kB/s
Collecting ncclient
Downloading ncclient-0.5.3.tar.gz (63kB)
100% || 71kB 3.5MB/s
Requirement already satisfied: setuptools>0.6 in
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages (from ncclient)
Collecting paramiko>=1.15.0 (from ncclient)
Downloading paramiko-2.1.1-py2.py3-none-any.whl (172kB)
100% || 174kB 3.1MB/s
Collecting six (from ncclient)
Using cached six-1.10.0-py2.py3-none-any.whl
Collecting cryptography>=1.1 (from paramiko>=1.15.0->ncclient)
Using cached cryptography-1.7.2-cp27-cp27m-macosx_10_6_intel.whl
Collecting pyasn1>=0.1.7 (from paramiko>=1.15.0->ncclient)
Using cached pyasn1-0.1.9-py2.py3-none-any.whl
Collecting cffi>=1.4.1 (from cryptography>=1.1->paramiko>=1.15.0->ncclient)
Using cached cffi-1.9.1-cp27-cp27m-macosx_10_10_intel.whl
Collecting enum34 (from cryptography>=1.1->paramiko>=1.15.0->ncclient)
Using cached enum34-1.1.6-py2-none-any.whl
Collecting ipaddress (from cryptography>=1.1->paramiko>=1.15.0->ncclient)
Using cached ipaddress-1.0.18-py2-none-any.whl
Collecting idna>=2.0 (from cryptography>=1.1->paramiko>=1.15.0->ncclient)
Using cached idna-2.2-py2.py3-none-any.whl
Collecting pycparser (from cffi>=1.4.1->cryptography>=1.1->paramiko>=1.15.0->ncclient)
Downloading pycparser-2.17.tar.gz (231kB)
100% || 235kB 2.6MB/s
Installing collected packages: lxml, six, pycparser, cffi, pyasn1, enum34, ipaddress, idna,
cryptography, paramiko, ncclient
Running setup.py install for lxml ... -
done
Running setup.py install for pycparser ... done
-
Running setup.py install for ncclient ... done
Successfully installed cffi-1.9.1 cryptography-1.7.2 enum34-1.1.6 idna-2.2 ipaddress-1.0.18
lxml-3.7.2 ncclient-0.5.3 paramiko-2.1.1 pyasn1-0.1.9 pycparser-2.17 six-1.10.0
USER1-M-902T:yang-explorer USER1$
O comando executa o script example.py do pito contra o catalizador 3850 no endereo IP172.16.167.174 com o username/senha cisco1/cisco1 atravs da porta TCP 830 (netconf-SSH). Ocatalizador 3850 envia uma resposta RPC de volta plataforma do gerenciamento centralizado(porttil) que a operao da salvaguarda-configurao era bem sucedida.
USER1-M-902T:yang-explorer USER1$ python example.py -a 172.16.167.174 -u cisco1 -p cisco1 --port
830
Save running-config successful
USER1-M-902T:yang-explorer USER1
Est aqui a verificao do catalizador 3850 CLI depois que voc executa o script example.py dopito que salvar a executar-configurao configurao start-up. O shutdowncommand estagora atual na executar-configurao e na partida-configurao para a relaoGigabitEthernet1/0/10 devido operao bem sucedida da salvaguarda-configuraoNETCONF/YANG.
3850-1# show running-config interface gigabitEthernet 1/0/10
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/10
shutdown
end
3850-1# show startup-config | begin 1/0/10
interface GigabitEthernet1/0/10
shutdown
!
interface GigabitEthernet1/0/11
!
interface GigabitEthernet1/0/12
!
interface GigabitEthernet1/0/13
!
Troubleshooting
Esta seo fornece informaes que podem ser usadas para o troubleshooting da suaconfigurao.
Mensagens de Erro NETCONF
O protocolo NETCONF definem um grupo de operaes e as mensagens que so trocados entreo cliente NETCONF (plataforma do gerenciamento centralizado (o porttil)) e a aplicaoNETCONF no dispositivo do server (catalizador 3850). As operaes de uso geral NETCONFincluem:
, , , e
//cisco.com/yang/cisco-ia
-
O formato e outras limitaes no contedo de mensagem NETCONF so definidos por modelosde dados de YANG. O cliente e servidor NETCONF interativo enviando RPC.
Se h um erro no formato da mensagem NETCONF ou o ndice da mensagem no combina asdefinies nos modelos de dados de YANG executados pelo dispositivo, o server NETCONF nodispositivo retornar um erro RPC.
3850-1# show running-config interface gigabitEthernet 1/0/10
Building configuration...
Current configuration : 49 bytes
!
interface GigabitEthernet1/0/10
shutdown
end
3850-1# show startup-config | begin 1/0/10
interface GigabitEthernet1/0/10
shutdown
!
interface GigabitEthernet1/0/11
!
interface GigabitEthernet1/0/12
!
interface GigabitEthernet1/0/13
!
Estes erros RPC no indicam que a relao NETCONF no est trabalhando, estes erros indicamque o cliente est tentando executar uma operao que no seja apoiada pelos modelos dedados de YANG executados no dispositivo do server. Os usurios devem rever os modelos dedados de YANG executados no dispositivo do server para identificar e resolver as causas paraestes erros.
Exemplo de erro RPC
Neste exemplo um tipo de interface incorreta ianaift: o fastEtherFX usado para gerar amensagem formatada YANG do NETCONF RPC para enviar atravs de NETCONFao catalizador 3850.
-
A corrida selecionada uma vez para enviar a mensagem RPC ao catalizador 3850, as respostasdo catalizador 3850 com um Mensagem de Erro.
Est aqui o erro que foi retornado pelo catalizador 3850. Observe que contm uma etiqueta doerro operao-falhou e um detalhe mais adicional que se refira ao erro indicando Unsupported -o valor deve ser o ethernetCsmacd ou o softwareLoopback " .
application
operation-failed
error
-
/rpc/edit-
config/config/if:interfaces/if:interface[if:name='GigabitEthernet1/0/16']/if:type
/interfaces/interface[name='GigabitEthernet1/0/16']
/type: "Unsupported - value must be ethernetCsmacd or softwareLoopback"
type
Em seguida, deixe-nos fixar o erro especificando o ianaift correto do tipo de interface:ethernetCsmacd na mensagem RPC enviada ao catalizador 3850 de modo que o catalizador3850 responda com uma mensagem aprovada em vez de um erro.
Esta vez, executado uma vez selecionada para enviar a mensagem RPC ao catalizador 3850,o catalizador 3850 responde com uma mensagem aprovada para indicar que a operao era bemsucedida.
http://www.w3.org/XML/1998/namespace">/interfaces/interface[name='GigabitEthernet1/0/16']/typehttp://www.w3.org/XML/1998/namespace">/interfaces/interface[name='GigabitEthernet1/0/16']/type
-
Dica: Quando incerto o que o formato correto dos valores do explorador deve ser, aconfigurao que existe pode ser olhada antes que voc tente fazer uma mudana a ela parmetros. Isto pode ser feito com a operao da GET-configurao (operao) comomostrado.
A corrida selecionada uma vez para enviar a mensagem RPC ao catalizador 3850, as respostasdo catalizador 3850 com a configurao da interface formatada YANG que mostra que o tipo deinterface ianaift: ethernetCsmacd.
-
Outros exemplos do tipo de erro RPC
1. Mensagem (configurao-fechado) em uso da resposta do erro RPC
Esta uma resposta de erro NETCONF a um pedido do . O indica emuso. A resposta indica que o dispositivo do server (catalizador 3850) NETCONF que o datastorerunning travado atualmente e a operao do NETCONF no poderia serexecutada neste tempo. Isto no indica um erro na aplicao da relao NETCONF. Se umcliente NETCONF tenta uma escrita ao datastore running NETCONF quando o datastore est nouso, o cliente recebe esta resposta RPC. O cliente NETCONF deve experimentar de novo amensagem da editar-configurao NETCONF. Esta resposta pde ser recebida quando odispositivo est executando uma operao interna do sincronizao--dispositivo para sincronizaro datastore running NETCONF com a configurao de IOSd do dispositivo.
Resposta NETCONF do server (catalizador 3850) ao cliente (plataforma do gerenciamentocentralizado (porttil)).
application
in-use
error
config-locked
0
2. mensagem DATA-faltante da resposta do erro RPC
Neste exemplo um RPC foi enviado ao catalizador 3850 para uma interface deloopback que no fosse configurada. Um erro foi retornado desde que voc no pode configurar
-
uma relao que no existisse no catalizador 3850.
application
data-missing
error
/rpc/edit-
config/config/if:interfaces/if:interface[if:name='Loopback1111']/if:type
/interfaces/interface[name='Loopback1111']/type is not
configured
type
3. Mensagem faltante da resposta do erro do modelo de dados RPC
Se um pedido est feito para um modelo de dados que no exista no catalizador 3850 ou em umpedido feito para uma folha que no esteja executada em um modelo de dados, o server(catalizador 3850) responde com uma resposta vazia dos dados. Este um comportamentoesperado.
Dica: Use a funcionalidade das capacidades NETCONF para determinar que modelos dedados so apoiados pelo Catalyst Software. Veja a seo 2. de configurar a plataforma dogerenciamento centralizado (porttil).
4. mensagem da resposta do erro RPC do Invlido-valor
Em alguns casos uma mensagem NETCONF pde conter o ndice que vlido baseado nosmodelos de dados de YANG, contudo, o dispositivo (catalizador 3850) incapaz de executar oque pedido. Quando a relao NETCONF no catalizador 3850 envia configuraes a IOSd queIOSd no pode com sucesso aplicar, uma resposta de erro especfica RPC retornada ao clienteNETCONF.
Neste exemplo, um valor protegido de registro invlido de falso enviado na mensagem RPC aocatalizador 3850. A erro-etiqueta na resposta do catalizador 3850 indica o invlido-valor. OMensagem de Erro indica que o Parser do catalizador 3850 IO era incapaz de configurar o nvelde seriedade protegido de registro a falso desde que este no um valor vlido.
application
invalid-value
error
http://cisco.com/ns/yang/ned/ios
inconsistent value: Device refused command "logging buffered
bogus" at column 20
//cisco.com/ns/yang/ned/ios