El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe cómo configurar la telemetría basada en modelos en dispositivos Cisco IOS®-XE con el uso de YANG Suite para realizar llamadas de procedimiento remoto (RPC) de telemetría de ejemplo.
Cisco recomienda que tenga conocimiento sobre estos temas:
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Este documento también se puede utilizar con estas versiones de hardware y software: dispositivos Cisco IOS XE, incluidos los switches Cisco Catalyst 9000, routers Cisco ASR 1000, ISR 4000 y CSR 1000.
Es necesario instalar YANG Suite. Para obtener más información sobre la instalación de YANG Suite, visite la documentación o el repositorio de Github.
NETCONF-YANG se debe configurar y ejecutar en el dispositivo, incluso si no se utiliza NETCONF. Para obtener más información sobre la configuración de NETCONF, visite la documentación.
En YANG Suite debe existir un perfil de dispositivo, un repositorio YANG y un conjunto de módulos YANG asociados al dispositivo de interés. Para obtener más información sobre cómo crear un perfil de dispositivo, un repositorio YANG y un conjunto de módulos YANG, visite la documentación de YANG Suite en Administración de perfiles de dispositivo.
La telemetría es un proceso de comunicación automatizado mediante el cual se recopilan mediciones y otros datos en puntos remotos o inaccesibles y se transmiten al equipo receptor para su supervisión. La telemetría basada en modelos proporciona un mecanismo para transmitir datos modelados en YANG a un recopilador de datos.
Las aplicaciones pueden suscribirse a elementos de datos específicos que necesiten mediante el uso de modelos de datos YANG basados en estándares en protocolos NETCONF, RESTCONF o gRPC Network Management Interface (gNMI). Las suscripciones también se pueden crear con la línea de comandos (CLI).
Los datos estructurados se publican a una cadencia definida (periódicamente) o sin cambios, en función de los criterios de suscripción y el tipo de datos.
En los sistemas que utilizan telemetría, intervienen diferentes funciones. En este documento se describen estas funciones de telemetría:
Las suscripciones son elementos que crean asociaciones entre funciones de telemetría y definen los datos que se envían entre ellas.
En la telemetría de los sistemas Cisco IOS XE se utilizan dos tipos de suscripciones: suscripciones dinámicas y configuradas.
Las suscripciones dinámicas las crean los clientes (el suscriptor) que se conectan al editor, se consideran de acceso telefónico. Las suscripciones configuradas hacen que el editor inicie conexiones con los receptores y, como resultado, se consideran de marcado externo.
Las suscripciones se identifican por un valor entero positivo de 32 bits. Los ID para las suscripciones configuradas los establece el controlador y para las suscripciones dinámicas los establece el editor.
Las fuentes de datos de telemetría de una suscripción se especifican mediante el uso de una secuencia y un filtro. El término secuencia se refiere a un conjunto relacionado de eventos. RFC 5277 define un flujo de eventos como un conjunto de notificaciones de eventos que coinciden con algunos criterios de reenvío.
Cisco IOS XE admite dos secuencias: yang-push y yang-notif-native.
Normalmente, el conjunto de eventos de una secuencia se filtra. Se utilizan diferentes tipos de filtro para diferentes tipos de flujo.
Este documento utiliza yang-push como tipo de flujo y aprovecha los filtros XPath.
Las suscripciones dinámicas las crean los suscriptores que se conectan al editor y solicitan la creación de suscripciones mediante un mecanismo dentro de esa conexión, normalmente, una RPC. La duración de la suscripción está limitada a la duración de la conexión entre el suscriptor y el editor, y los datos de telemetría se envían únicamente a ese suscriptor. Estas suscripciones no persisten si se reinicia el editor o el suscriptor. Puede crear suscripciones dinámicas mediante el <establecer suscripción> RPC en banda. El RPC <set-subscription> se envía desde un suscriptor de telemetría IETF al dispositivo de red. Los campos secuencia, xpath-filter y punto del RPC son obligatorios.
Cuando se envía una llamada RPC, la respuesta RPC de un editor contiene un mensaje con un elemento que contiene una cadena de resultado.
Esta tabla muestra la respuesta y el motivo de la respuesta en un mensaje <rpc-reply>:
Puede enviar una RPC desde YANG Suite para configurar una suscripción periódica.
Para obtener el filtro XPath puede aprovechar YANG Suite una vez que defina los datos que necesita transmitir. En este ejemplo, la información de estadísticas de memoria son los datos que se van a transmitir.
Paso 1. En YANG Suit bajo Protocols > NETCONF, seleccione el conjunto YANG asociado al dispositivo en uso. En este ejemplo, el conjunto YANG se denomina CSR1000V.
Paso 2. Cargue el módulo YANG que contiene los datos de interés. En este ejemplo es Cisco-IOS-XE-memory-oper.
Paso 3. En el árbol YANG busque el nodo para el que desea obtener el filtro XPath, en este ejemplo es memory-statistic, haga clic derecho sobre él y seleccione Properties .
Paso 4. En la ventana emergente que aparece hay 2 propiedades que juntas definen el filtro XPath. Esos valores son Xpath y Prefix.
Para crear una suscripción dinámica de NETCONF periódica, debe utilizar el módulo YANG IETF-event-notification.
Paso 1. En YANG Suit bajo Protocols > NETCONF, seleccione el conjunto YANG asociado al dispositivo en uso. En este ejemplo, el conjunto YANG se denomina CSR1000V.
Paso 2. Cargue el módulo YANG IETF-event-notifications.
Paso 3. La operación NETCONF debe ser Otro RPC.
Paso 4. En el menú desplegable Dispositivo, seleccione el dispositivo de interés y, a continuación, haga clic en Abrir ventana del dispositivo en una ventana nueva o en una pestaña nueva.
Paso 5. En la ventana independiente que se abre, haga clic en Start Session para establecer una sesión NETCONF activa con el dispositivo. Este es un ejemplo de una ventana de sesión de NETCONF establecida.
Paso 6. Vuelva a la ventana anterior. En los nodos del árbol ietf-event-notification, expanda el nodo set-subscription y elija input.
Paso 7. Necesita definir valores de secuencia, filtro y disparador de actualización.
secuencia: Yang-push.
filtro: xpath-filter
El filtro XPath debe tener este formato:
/prefix:xpath
En este ejemplo, con el uso de los parámetros obtenidos en la sección Pasos para obtener el filtro XPath.
/memory-ios-xe-oper:memory-statistics/memory-statistic
Consejo: Preste atención a la posición de "/" en el filtro XPath
Paso 8. El disparador de actualización es un valor en centisegundos (1/100 de segundo). Un período de 1000 da como resultado actualizaciones cada 10 segundos.
Paso 9. Una vez que se hayan proporcionado los valores de secuencia, filtro y disparador de actualización, haga clic en Build RPC y aparecerá una RPC como la que se muestra en esta imagen.
Paso 10. Ahora puede hacer clic en Ejecutar RPC y crear una suscripción de marcado de entrada NETCONF periódica.
Paso 11. Los mensajes RPC aparecen ahora en la ventana donde se estableció la sesión NETCONF.
Esta imagen es un ejemplo del RPC enviado y la respuesta RPC recibida con un mensaje OK, esto significa que la suscripción fue exitosa.
Esta imagen es un ejemplo de los datos de estadísticas de memoria que se reciben cada 10 segundos.
Todos los pasos indicados en la sección Configure a Periodic Subscription with YANG Suite se aplican a esta sección, la única diferencia está en el valor de disparador de actualización, donde debe definir un período de dampening con un valor de 0, no es posible ningún otro valor.
Este es un ejemplo de un RPC para establecer una suscripción de cambio para los datos de vecinos CDP.
Las suscripciones configuradas se crean mediante operaciones de administración en el editor por parte de los controladores e incluyen explícitamente la especificación del receptor de los datos de telemetría definidos por una suscripción. Estas suscripciones persisten tras los reinicios del publicador a medida que forman parte de la configuración del dispositivo.
Las suscripciones de marcado de salida configuradas se configuran en el dispositivo con cualquiera de estos métodos:
Este documento no trata cómo configurar una suscripción de marcado de salida con la CLI, sino que muestra cómo enviar un mensaje NETCONF RPC desde YANG Suite para configurar una suscripción de marcado de salida.
Para las suscripciones configuradas, el protocolo gRPC está disponible y sólo se puede utilizar con la secuencia yang-push. Con el protocolo de transporte gRPC sólo se admite la codificación de valores clave de búferes de protocolo de Google (kvGPB).
Puede utilizar YANG Suite como receptor para probar las suscripciones de marcado de salida de muestra.
Para crear una suscripción configurada periódicamente, debe utilizar el módulo Cisco-IOS-XE-mdt-cfg YANG.
Paso 1. En YANG Suite, en Protocolos > gRPC Telemetry, ingrese dirección IP y puerto, y luego haga clic en Iniciar receptor de telemetría para YANG Suite para comenzar a escuchar en la dirección IP y puerto indicados.
Nota: Si la opción de telemetría gRPC no está disponible, el complemento se puede instalar a través de la página Admin > Manage plugins en YANG Suite
Paso 2. En Protocolos > NETCONF, seleccione el conjunto YANG asociado al dispositivo en uso. En este ejemplo, el conjunto YANG se denomina CSR1000V.
Paso 3. Cargue el módulo Cisco-IOS-XE-mdt-cfg YANG.
Paso 4. La operación NETCONF debe ser edit-config.
Paso 5. Elija el dispositivo que le interese.
Paso 6. Bajo el árbol Cisco-IOS-XE-mdt-cfg, estos valores deben definirse en el nodo mdt-subscription: subscription-id, stream, encoding, period y xpath-filter. Y también, la información sobre el receptor: Dirección IP, puerto y protocolo.
Paso 7. Estos valores se utilizan para este ejemplo:
id de suscripción: 100
secuencia: Yang-push
codificación: encode-kvgpb
período: 1000
filtro xpath: /memory-ios-xe-oper:memory-statistics/memory-statistic
Es necesario definir la información sobre el receptor
dirección: <IP address>
puerto: <port>
protocolo: grpc-tcp
Paso 8. Haga clic en el botón Generar RPC.
Paso 9. Haga clic en Ejecutar RPC.
Paso 10. Si es exitoso, en Protocolos > gRPC Telemetry, la información se recibe ahora.
Para configurar una suscripción de marcado de salida sin cambios, se sigue el mismo proceso descrito en la sección Configuración de una suscripción configurada periódica con YANG Suite, el único valor que cambia es la hoja sin sincronización al iniciar que debe establecerse en false.
Esta imagen es un ejemplo de RPC para una suscripción configurada en el momento del cambio.
Utilize esta sección para confirmar que su configuración funcione correctamente.
Mostrar información sobre suscripciones de telemetría en un Cisco IOS XE con 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
Enumere detalles sobre una suscripción con 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 el estado de la conexión al receptor con la conexión interna show telemetry.
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
En esta sección se brinda información que puede utilizar para resolver problemas en su configuración.
Situación 1. Si el estado de la suscripción de telemetría es válido y no recibe secuencias en el receptor.
Verifique el estado de la conexión al 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
Si el estado es Conexión, asegúrese de que la conectividad entre el editor y el receptor sea correcta.
Device# ping
Asegúrese de que el puerto en uso esté abierto.
Device# telnet
Trying 10.88.246.10, 57350 ...
% Connection refused by remote host
En este ejemplo, el puerto no es abierto/alcanzable. Verifique que no haya un firewall que pueda bloquear el puerto y asegúrese de que el puerto especificado sea el correcto.
En los dispositivos que utilizan VRF, debe especificar la dirección VRF/de origen en el RPC para las suscripciones configuradas. Esta imagen muestra una RPC donde se especifica el VRF de origen.
Situación 2. Si el estado de la suscripción de telemetría no es válido.
Device# show telemetry ietf subscription all
Telemetry subscription brief
ID Type State Filter type
--------------------------------------------------------
200 Configured Invalid xpath
Verifique los detalles de suscripción.
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 la sintaxis del filtro XPath, tiene un "/" adicional después de ":", el filtro XPath correcto es:
/memory-ios-xe-oper:memory-statistics/memory-statistic
Cualquier error de sintaxis, como la falta de letras o caracteres adicionales en el filtro XPath, puede dar lugar a una suscripción no válida.
Si necesita soporte para la herramienta YANG Suite, póngase en contacto con el correo de soporte o el foro de soporte.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
30-Sep-2021
|
Versión inicial |