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 YANG Suite para executar exemplos de Chamadas de Procedimento Remoto de Telemetria (RPCs).
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:
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. 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, Cisco ASR 1000, ISR 4000 e roteadores 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.
NETCONF-YANG deve ser configurado e executado no dispositivo, mesmo que 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 Managing Device Profiles.
Telemetria é um processo de comunicação automatizado pelo qual as medidas e outros dados são coletados em pontos remotos ou inacessíveis e transmitidos ao equipamento receptor para monitoramento. A telemetria orientada por modelo fornece um mecanismo para transmitir dados modelados por YANG para um coletor de dados.
Os aplicativos podem se inscrever em itens de dados específicos de que precisam com o uso de modelos de dados YANG baseados em padrões em 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 uma cadência definida (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, essas 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 em 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, elas são consideradas discagem. As assinaturas configuradas fazem com que o editor inicie conexões com os receptores e, como resultado, elas são consideradas como 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 fontes de dados de telemetria em uma assinatura são especificadas pelo uso de um fluxo e de um filtro. O termo fluxo refere-se 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 editor e chamam a criação de assinaturas usando um mecanismo nessa conexão, geralmente um RPC. O tempo de vida da assinatura é limitado ao tempo de vida da conexão entre o assinante e o editor, e os dados de telemetria são enviados apenas para esse assinante. Essas assinaturas não persistem se o editor ou o assinante for reinicializado. Você pode criar assinaturas dinâmicas usando o RPC <established-subscription-subscription> na banda. O <established-subscription> RPC é 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 YANG Suite para configurar uma assinatura periódica.
Para obter o filtro XPath, você pode aproveitar o YANG Suite depois de definir os dados que precisam ser transmitidos. Neste exemplo, as informações de estatísticas de memória são os dados a serem transmitidos.
Etapa 1. Em YANG Suit em Protocols > NETCONF, selecione o conjunto YANG associado ao dispositivo em uso. Neste exemplo, o YANG Set é 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 da memória, clique com o botão direito do mouse nele e selecione Propriedades.
Etapa 4. Na janela pop-up exibida, há 2 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 YANG Suit em Protocols > NETCONF, selecione o conjunto YANG associado ao dispositivo em uso. Neste exemplo, o YANG Set é chamado CSR1000V.
Etapa 2. Carregue o módulo IETF-event-notification 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 é aberta, clique em Iniciar sessão 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 na árvore ietf-event-notification, expanda o nó set-subscription e escolha input.
Passo 7. Você precisa definir valores de fluxo, filtro e disparador de atualização.
fluxo: Yang-push.
filtro: xpath-filter
O filtro XPath deve ter este formato:
/prefixo:xpath
Neste exemplo, com o uso dos parâmetros obtidos na seção Steps to Obtain the XPath Filter.
/memory-ios-xe-oper:memory-statistics/memory-statistics
Tip: Preste atenção à posição do "/" no filtro XPath
Etapa 8. O update-trigger é um valor em centésimos de segundo (1/100 de segundo). Um período de 1000 resulta na obtenção de atualizações a cada 10 segundos.
Etapa 9. Depois de fornecer os valores de fluxo, filtro e disparador de atualização, clique em Criar RPC e um RPC como o mostrado nesta imagem será exibido.
Etapa 10. Agora você pode clicar em Executar RPC e criar uma assinatura de discagem NETCONF periódica.
Etapa 11. As mensagens RPC aparecem agora na janela onde a Sessão NETCONF foi estabelecida.
Esta imagem é um exemplo do RPC enviado e a resposta RPC recebida com uma mensagem OK, o que significa que a assinatura foi bem-sucedida.
Esta imagem é um exemplo dos dados de estatísticas de memória recebidos a cada 10 segundos.
Todas as etapas indicadas na seção Configurar uma assinatura periódica com o YANG Suite se aplicam a esta seção, a única diferença está no valor update-trigger, onde você deve definir um período de atenuação com um valor 0, nenhum outro valor é possível.
Este é um exemplo de um RPC para estabelecer uma assinatura durante a 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, mostra como enviar uma mensagem NETCONF RPC do YANG Suite 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 KvGPB (Key-value Google Protocol Buffers) é suportada com o protocolo de transporte gRPC.
Você pode usar o YANG Suite como receptor para testar exemplos de assinaturas de discagem externa.
Para criar uma assinatura configurada periódica, você precisa usar o módulo YANG Cisco-IOS-XE-mdt-cfg.
Etapa 1. No YANG Suite, em Protocols > gRPC Telemetry, insira o endereço IP e a porta e clique em Start telemetry Recver for YANG Suite para começar a ouvir o endereço IP e a porta indicados.
Note: Se a opção de telemetria gRPC não estiver disponível, o plug-in poderá ser instalado através da página Admin > Gerenciar plug-ins no YANG Suite
Etapa 2. Em Protocols > NETCONF, selecione o conjunto de YANG associado ao dispositivo em uso. Neste exemplo, o YANG Set é 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, stream, codificação, period e xpath-filter. E também, a informação sobre o receptor: Endereço IP, porta e protocolo.
Passo 7. Esses valores são usados para este exemplo:
ID de assinatura: 100
fluxo: yang-push
codificação: encode-kvgpb
período: 1000
filtro xpath: /memory-ios-xe-oper:memory-statistics/memory-statistics
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 Build RPC.
Etapa 9. Clique em Executar RPC.
Etapa 10. Se bem-sucedido, em Protocolos > Telemetria gRPC, as informações serão recebidas agora.
Para configurar uma assinatura de discagem de alteração, o mesmo processo descrito na seção Configurar uma assinatura configurada periódica com o conjunto YANG é seguido, o único valor que muda é a folha no-sync-on-start que deve ser definida como false.
Esta imagem é um exemplo de RPC para uma assinatura configurada na alteração.
Use esta seção para confirmar se a sua configuração funciona corretamente.
Exibir 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 detalhes sobre uma subscrição com show telemtry 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 estiver Conectando, verifique a conectividade correta entre o editor e o receptor.
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 se a porta especificada é a correta.
Nos dispositivos que usam VRFs, você precisa especificar o endereço de origem/VRF 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 que a sintaxe do filtro XPath, que tem um "/" extra após o ":", o filtro XPath correto é:
/memory-ios-xe-oper:memory-statistics/memory-statistics
Qualquer erro de sintaxe, como letras ausentes ou caracteres extras no filtro XPath, pode levar a uma assinatura inválida.
Se precisar de suporte para a ferramenta YANG Suite, entre em contato com o correio 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 |