O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve como configurar a telemetria orientada por modelo em dispositivos Cisco IOS®-XE com o uso do Conjunto YANG para executar chamadas de procedimento remoto (RPCs) de telemetria de exemplo.
A Cisco recomenda que você tenha conhecimento destes tópicos:
As informações neste documento são baseadas nestas versões de software e hardware:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Este documento também pode ser usado com estas versões de hardware e software: dispositivos Cisco IOS XE, incluindo switches Cisco Catalyst 9000, roteadores Cisco ASR 1000, ISR 4000 e CSR 1000.
O YANG Suite precisa ser instalado. Para obter mais informações sobre a instalação do YANG Suite, visite a documentação ou o repositório Github.
O NETCONF-YANG deve ser configurado e estar em execução no dispositivo, mesmo que o NETCONF não seja usado. Para obter mais informações sobre a configuração do NETCONF, visite a documentação.
Um perfil de dispositivo, um repositório YANG e um conjunto de módulos YANG associados ao dispositivo de interesse devem existir no YANG Suite. Para obter mais informações sobre como criar um perfil de dispositivo, um repositório YANG e um conjunto de módulos YANG, visite a documentação do YANG Suite em Gerenciando perfis de dispositivo.
A telemetria é um processo de comunicação automatizado pelo qual as medições e outros dados são coletados em pontos remotos ou inacessíveis e transmitidos para o equipamento receptor para monitoramento. A telemetria orientada a modelos fornece um mecanismo para transmitir dados modelados em YANG para um coletor de dados.
Os aplicativos podem assinar itens de dados específicos de que precisam com o uso de modelos de dados YANG baseados em padrões sobre protocolos NETCONF, RESTCONF ou gRPC Network Management Interface (gNMI). As assinaturas também podem ser criadas com a linha de comando (CLI).
Os dados estruturados são publicados em um ritmo definido (periodicamente), ou em alteração, com base nos critérios de assinatura e no tipo de dados.
Em sistemas que usam telemetria, diferentes funções estão envolvidas. Neste documento, estas funções de telemetria são descritas:
As assinaturas são itens que criam associações entre funções de telemetria e definem os dados enviados entre elas.
Dois tipos de assinaturas são usados em telemetria nos sistemas Cisco IOS XE: assinaturas dinâmicas e configuradas.
As assinaturas dinâmicas são criadas por clientes (o assinante) que se conectam ao editor, sendo consideradas discagem. As assinaturas configuradas fazem com que o editor inicie conexões com os receptores e, como resultado, elas são consideradas discagem externa.
As assinaturas são identificadas por um valor inteiro positivo de 32 bits. As IDs para assinaturas configuradas são definidas pelo controlador e para assinaturas dinâmicas são definidas pelo editor.
As origens de dados de telemetria em uma assinatura são especificadas pelo uso de um fluxo e um filtro. O termo fluxo se refere a um conjunto relacionado de eventos. O RFC 5277 define um fluxo de eventos como um conjunto de notificações de eventos que correspondem a alguns critérios de encaminhamento.
O Cisco IOS XE suporta dois fluxos: yang-push e yang-notif-native.
Normalmente, o conjunto de eventos de um fluxo é filtrado. Diferentes tipos de filtro são usados para diferentes tipos de fluxo.
Este documento usa yang-push como o tipo de fluxo e aproveita os filtros XPath.
As assinaturas dinâmicas são criadas por assinantes que se conectam ao publicador e solicitam a criação de assinaturas usando um mecanismo dentro dessa conexão, geralmente, um RPC. O tempo de vida da assinatura é limitado ao tempo de vida da conexão entre o assinante e o publicador, e os dados de telemetria são enviados somente para esse assinante. Essas assinaturas não persistirão se o editor ou o assinante for reinicializado. Você pode criar assinaturas dinâmicas usando o <establish-subscription> RPC in-band. O RPC <establish-subscription> é enviado de um assinante de telemetria IETF para o dispositivo de rede. Os campos stream, xpath-filter e period no RPC são obrigatórios.
Quando um RPC é enviado, a resposta RPC de um editor contém uma mensagem com um elemento que contém uma cadeia de caracteres de resultado.
Esta tabela exibe a resposta e o motivo da resposta em uma mensagem <rpc-reply>:
Você pode enviar um RPC do Conjunto YANG para configurar uma inscrição periódica.
Para obter o filtro XPath, você pode aproveitar o YANG Suite uma vez que você define os dados que você precisa para transmitir. Neste exemplo, as informações de estatísticas de memória são os dados a serem transmitidos.
Etapa 1. Em Conjunto YANG em Protocolos > NETCONF, selecione o conjunto YANG associado ao dispositivo em uso. Neste exemplo, o conjunto YANG é chamado CSR1000V.
Etapa 2. Carregue o módulo YANG que contém os dados de interesse. Neste exemplo, é Cisco-IOS-XE-memory-oper.
Etapa 3. Na árvore YANG, localize o nó para o qual deseja obter o filtro XPath, neste exemplo é a estatística de memória, clique com o botão direito do mouse nele e selecione Propriedades.
Etapa 4. Na janela pop-up exibida, há duas propriedades que, juntas, definem o filtro XPath. Esses valores são Xpath e Prefix.
Para criar uma assinatura dinâmica NETCONF periódica, você precisa usar o módulo IETF-event-notification YANG.
Etapa 1. Em Conjunto YANG em Protocolos > NETCONF, selecione o conjunto YANG associado ao dispositivo em uso. Neste exemplo, o conjunto YANG é chamado CSR1000V.
Etapa 2. Carregue o módulo IETF-event-notifications YANG.
Etapa 3. A operação NETCONF deve ser Outro RPC.
Etapa 4. No menu suspenso Dispositivo, selecione o dispositivo de interesse e clique em Abrir janela do dispositivo em uma nova janela ou em uma nova guia.
Etapa 5. Na janela separada que se abre, clique em Start Session para estabelecer uma sessão NETCONF ativa com o dispositivo. Este é um exemplo de uma janela de sessão NETCONF estabelecida.
Etapa 6. Retorne à janela anterior. Nos nós sob a árvore ietf-event-notification, expanda o nó establish-subscription e escolha entrada.
Etapa 7. Você precisa definir os valores de fluxo, filtro e gatilho de atualização.
fluxo: yang-push.
filtro: xpath-filter
O filtro XPath deve ter este formato:
/prefix:xpath
Neste exemplo, com o uso dos parâmetros obtidos na seção Etapas para obter o filtro XPath.
/memory-ios-xe-oper:memory-statistics/memory-statistic
Tip: Preste atenção à posição do "/" no filtro XPath
Etapa 8. O gatilho de atualização é um valor em centésimos de segundo (1/100 de segundo). Um período de 1000 resulta em atualizações a cada 10 segundos.
Etapa 9. Depois que os valores de fluxo, filtro e gatilho de atualização forem fornecidos, clique em Construir RPC e um RPC como o mostrado nesta imagem será exibido.
Etapa 10. Agora você pode clicar em Executar RPC e criar uma inscrição de discagem NETCONF periódica.
Etapa 11. As mensagens RPC são exibidas agora na janela onde a Sessão NETCONF foi estabelecida.
Esta imagem é um exemplo da RPC enviada e da resposta RPC recebida com uma mensagem OK; isso significa que a assinatura foi bem-sucedida.
Esta imagem é um exemplo dos dados estatísticos de memória que são recebidos a cada 10 segundos.
Todas as etapas indicadas na seção Configurar uma assinatura periódica com o Conjunto YANG se aplicam a esta seção, a única diferença é no valor de atualização-gatilho, onde você deve definir um período de atenuação com um valor de 0, nenhum outro valor é possível.
Este é um exemplo de RPC para estabelecer uma assinatura em alteração para dados de vizinhos CDP.
As assinaturas configuradas são criadas por operações de gerenciamento no editor por controladores e incluem explicitamente a especificação do receptor dos dados de telemetria definidos por uma assinatura. Essas assinaturas persistem nas reinicializações do editor, à medida que se tornam parte da configuração do dispositivo.
As assinaturas de discagem externa configuradas são configuradas no dispositivo com qualquer um destes métodos:
Este documento não aborda como configurar uma assinatura de discagem externa com a CLI. Em vez disso, ele mostra como enviar uma mensagem NETCONF RPC do Conjunto YANG para configurar uma assinatura de discagem externa.
Para assinaturas configuradas, o protocolo gRPC está disponível e só pode ser usado com o fluxo yang-push. Somente a codificação Key-value Google Protocol Buffers (kvGPB) é suportada com o protocolo de transporte gRPC.
Você pode usar o YANG Suite como um receptor para testar as assinaturas de discagem de exemplo.
Para criar uma assinatura configurada periodicamente, você precisa usar o módulo Cisco-IOS-XE-mdt-cfg YANG.
Etapa 1. No YANG Suite, em Protocolos > Telemetria gRPC, insira o endereço IP e a porta e clique em Iniciar receptor de telemetria para o YANG Suite para começar a escutar no endereço IP e na porta indicados.
Note: Se a opção Telemetria gRPC não estiver disponível, o plug-in pode ser instalado através da página Admin > Gerenciar plug-ins no Conjunto YANG
Etapa 2. Em Protocolos > NETCONF, selecione o conjunto YANG associado ao dispositivo em uso. Neste exemplo, o conjunto YANG é chamado CSR1000V.
Etapa 3. Carregue o módulo Cisco-IOS-XE-mdt-cfg YANG.
Etapa 4. A operação NETCONF deve ser edit-config.
Etapa 5. Escolha o dispositivo de interesse.
Etapa 6. Na árvore Cisco-IOS-XE-mdt-cfg, esses valores precisam ser definidos no nó mdt-subscription: subscription-id, fluxo, codificação, período e filtro xpath. Além disso, as informações sobre o receptor: Endereço IP, porta e protocolo.
Etapa 7. Esses valores são usados para este exemplo:
id da assinatura: 100
fluxo: yang-push
codificação: encode- kvgpb
período: 1000
filtro xpath: /memory-ios-xe-oper:estatística-de-memória/estatística-de-memória
As informações sobre o receptor precisam ser definidas
endereço: <Endereço IP>
porta: <porta>
protocolo: grpc-tcp
Etapa 8. Clique no botão Construir RPC.
Etapa 9. Clique em Executar RPC.
Etapa 10. Se obtiver êxito, em Protocolos > Telemetria RPC, as informações serão recebidas.
Para configurar uma inscrição de discagem externa Ao alterar, segue-se o mesmo processo descrito na seção Configurar uma inscrição configurada periodicamente com o YANG Suite. O único valor alterado é a folha sem sincronização no início, que deve ser definida como falsa.
Esta imagem é um RPC de exemplo para uma assinatura configurada inalterada.
Use esta seção para confirmar se a sua configuração funciona corretamente.
Exiba informações sobre assinaturas de telemetria em um Cisco IOS XE com show telemetry ietf subscription all.
Device#
show telemetry ietf subscription all Telemetry subscription brief ID Type State Filter type -------------------------------------------------------- 100 Configured Valid xpath 2147483651 Dynamic Valid xpath
Liste os detalhes sobre uma assinatura com show telemetry ietf <subscriptionID> detail.
Device#show telemetry ietf 100 detail
Telemetry subscription detail:
Subscription ID: 2147483651
Type: Dynamic
State: Valid
Stream: yang-push
Filter:
Filter type: xpath
XPath: /memory-ios-xe-oper:memory-statistics/memory-statistic
Update policy:
Update Trigger: periodic
Period: 10000
Encoding: encode-xml
Source VRF:
Source Address:
Notes:
Receivers:
Address Port Protocol Protocol Profile
-----------------------------------------------------------------------------------------
10.88.246.10 57344 netconf
Verifique o status da conexão com o receptor com show telemetry internal connection.
Device# show telemetry internal connection
Telemetry connection
Peer Address Port VRF Source Address Transport State Profile
--------------- ----- --- --------------- ---------- ------------- -------------
10.88.246.10 57344 0 10.88.246.2 grpc-tcp Active
Esta seção disponibiliza informações para a solução de problemas de configuração.
Cenário 1. Se o estado da assinatura de telemetria for válido e você não receber fluxos no receptor.
Verifique o status da conexão com o receptor.
Device#show telemetry internal connection
Telemetry connection
Peer Address Port VRF Source Address Transport State Profile
--------------- ----- --- --------------- ---------- ------------- -------------
10.88.246.10 57350 0 10.88.247.86 grpc-tcp Connecting
Se o estado for Conectando, verifique se a conectividade entre o editor e o receptor está correta.
Device# ping
Verifique se a porta em uso está aberta.
Device# telnet
Trying 10.88.246.10, 57350 ...
% Connection refused by remote host
Neste exemplo, a porta não está aberta/acessível. Verifique se não há um firewall que possa bloquear a porta e verifique se a porta especificada está correta.
Em dispositivos que usam VRFs, você precisa especificar o VRF/endereço de origem no RPC para assinaturas configuradas. Esta imagem mostra um RPC onde o VRF de origem é especificado.
Cenário 2. Se o estado da assinatura de telemetria for inválido.
Device# show telemetry ietf subscription all
Telemetry subscription brief
ID Type State Filter type
--------------------------------------------------------
200 Configured Invalid xpath
Verifique os detalhes da assinatura.
Device# show telemetry ietf subscription 200 detail
Telemetry subscription detail:
Subscription ID: 200
Type: Configured
State: Invalid
Stream: yang-push
Filter:
Filter type: xpath
XPath: /memory-ios-xe-oper:/memory-statistics/memory-statistic
Update policy:
Update Trigger: periodic
Period: 1000
Encoding: encode-kvgpb
Source VRF:
Source Address:
Notes: XPath parse error 'Invalid expression: offset(21)' 58.
Receivers:
Address Port Protocol Protocol Profile
-----------------------------------------------------------------------------------------
10.88.247.89 57344 grpc-tcp
Observe a sintaxe do filtro XPath, ele tem um "/" extra após o ":", o filtro XPath correto é:
/memory-ios-xe-oper:memory-statistics/memory-statistic
Qualquer erro de sintaxe, como letras ausentes ou caracteres extras no filtro XPath, pode levar a uma assinatura inválida.
Se você precisar de suporte para a ferramenta YANG Suite, entre em contato com o mensageiro de suporte ou com o fórum de suporte.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
30-Sep-2021
|
Versão inicial |