Introducción
Este documento describe cómo implementar Yang Suite en un entorno Python y probar XPath en Cisco Catalyst 9800 WLC.
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
- Configuración de WLC de Catalyst 9800
- Conocimientos básicos de Python y entornos virtuales
Componentes Utilizados
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.
Configurar
Paso 1. Instalar Python en PC con Windows.
Descargue e instale Python 3.8.2 para Windows.
Enlace de descarga: Versiones de Python para Windows
Explicación:
Python es necesario para ejecutar YANG Suite. La versión 3.8.2 se utiliza aquí por compatibilidad.
Paso 2. Verificar la instalación de Python y PIP.
Después de la instalación, confirme que Python y PIP funcionan correctamente.
Comandos:
C:\Users\Administrator>python --version
C:\Users\Administrator>pip --version
Resultado esperado (ejemplo):
C:\Users\Administrator>python --version
Python 3.8.2
C:\Users\Administrator>pip --version
pip 25.0.1 from c:\users\administrator\appdata\local\programs\python\python38-32\lib\site-packages\pip (python 3.8)
Paso 3. Actualice PIP a la última versión para garantizar la compatibilidad con YANG Suite.
Comando:
C:\Users\Administrator>python -m pip install --upgrade pip
Explicación:
Este comando desinstala la versión antigua de PIP e instala la más reciente para garantizar la compatibilidad con YANG Suite.
Resultado esperado (ejemplo):
- La versión anterior (por ejemplo, pip 19.2.3) está desinstalada.
- La nueva versión (por ejemplo, pip 25.0.1) se ha instalado correctamente.
Paso 4. Crear un entorno virtual para mantener las dependencias aisladas del sistema Python.
Comando:
C:\Users\Administrator>python -m venv yangsuitevenv
Resultado esperado:
Se crea una nueva carpeta denominada yangsuitevenv en el equipo C:\Users\Administrator.

Paso 5. Active el entorno virtual.
Active el entorno antes de instalar los paquetes.
Comando:
C:\Users\Administrator>.\yangsuitevenv\Scripts\activate
Resultado esperado:
El símbolo del sistema cambia para mostrar el entorno activo, por ejemplo:
(yangsuitevenv) C:\Users\Administrator>

Paso 6. Instale YANG Suite.
Instale YANG Suite y sus módulos requeridos para asegurarse de que YANG Suite y sus dependencias se instalen sin errores.
Comando:
(yangsuitevenv) C:\Users\Administrator>pip install yangsuite[core]
Si encuentra errores de proxy:
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Your proxy appears to only use HTTP and not HTTPS, try changing your proxy URL to be HTTP. See: https://xxx.xxx.xx/en/1.26.x/advanced-usage.html#https-proxy-error-http-proxy', SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1108)')))': /simple/yangsuite/
Compruebe la conectividad de red o el proxy. Si su entorno requiere el uso de un proxy, utilice este comando en su lugar:
Comando:
(yangsuitevenv) C:\Users\Administrator>pip install yangsuite[core] --proxy http://x.x.x.x:port
Paso 7. Actualización de los módulos YANG Suite.
Actualice todos los módulos de YANG Suite para garantizar la funcionalidad completa.
Comando:
pip3 install --upgrade yangsuite yangsuite-devices yangsuite-filemanager yangsuite-yangtree yangsuite-coverage yangsuite-gnmi yangsuite-grpc-telemetry yangsuite-netconf yangsuite-restconf
Explicación:
Este paso garantiza que YANG Suite tenga los últimos plugins para NETCONF, RESTCONF, gNMI y telemetría.
Paso 8. Inicialice YANG Suite.
Ejecute el proceso de inicialización para ingresar al modo de configuración interactivo.
Comando:
(yangsuitevenv) C:\Users\Administrator>yangsuite
Paso 9. Configuración de YANG Suite Settings.
Durante la inicialización, se le solicita que configure el puerto de servicio, el nombre de host, el nombre de usuario y la contraseña :
Cree una carpeta denominada yangsuitespecificdata para almacenar los datos específicos del usuario (módulos YANG, perfiles de dispositivo, etc.).

Número de puerto de servicio: predeterminado es 8480.

Nombre del host: se recomienda utilizar localhost o 127.0.0.1.

Guardar configuración: confirme con y.

Crear nombre de usuario y contraseña: para acceder a la interfaz de usuario web de YANG Suite.

Resultado esperado:
La configuración se guarda y los servicios se pueden iniciar con el comando yangsuite:
(yangsuitevenv) C:\Users\Administrator>yangsuite
Paso 10. Inicie sesión en Yang Suite a través del navegador: http://localhost:8480/ para acceder a Cisco Yang Suite:

Verificación
Paso 1. Configure el WLC Catalyst 9800.
Asegúrese de que Netconf Yang Status y SSH Port estén habilitados en el WLC.
Navegue hasta WLC > Administration > Management > HTTP/HTTPS/Netconf/VTY para habilitar el estado de configuración de Yang de Netconf y habilitar el puerto SSH 830.

Configuración de CLI:
9800(config)#netconf-yang
Configure los parámetros AAA.
Configuración de CLI:
9800(config)#aaa authentication login default local
9800(config)#aaa authorization exec default local
Paso 2. Agregue el WLC a YANG Suite.
En YANG Suite, navegue hasta Setup > Device Profiles > Create New Device.

Introduzca el nombre del perfil, la dirección IP del WLC, el nombre de usuario y la contraseña.

Active netconf haciendo clic en Device supported NETCONF y haciendo clic en Skip SSH key validation para este dispositivo.

Active Restconf haciendo clic en Device supported RESTCONF y borre la URL base RESTCONF predeterminada para vaciarla.

Active SSH haciendo clic en Device allow SSH login y verifique la información del WLC.

Paso 3. Verifique el alcance del dispositivo.
Haga clic en Verificar la disponibilidad del dispositivo seleccionado y seleccionó el perfil del dispositivo para verificar si el WLC se puede alcanzar desde YANG Suite.

Paso 4. Crear un repositorio de YANG Suite.
Cree un repositorio para almacenar los modelos WLC YANG necesarios.

Seleccione NETCONF y Select device profile para obtener la lista de esquemas para descargar todo el esquema del WLC

Paso 5. Crear un módulo YANG Nuevo establecido en el repositorio de archivos YANG asociado.

Por ejemplo, si se requiere la información inalámbrica de los modelos YANG específicos de Catalyst 9800, ingrese wireless para elegir todos los módulos y haga clic en Add selected.

Si necesita algo más que los componentes inalámbricos, simplemente haga clic en Agregar repositorio completo en este paso.
Si sólo agrega los módulos inalámbricos, también hay un botón llamado Locate and add missing units. Al hacer clic en él, se incorporarán automáticamente los módulos adicionales que necesite el módulo inalámbrico.

Paso 6. Probar consultas XPath.
Utilice la XPath proporcionada por YANG Suite para obtener datos del WLC.
Obtenga el XPath necesario en YANG Suite.
Aquí puede tomar como ejemplo el nombre de la interfaz de administración del controlador.

Configuración de la interfaz de telemetría en WLC CLI
C9800(config)#telemetry ietf subscription <subscription-id>
C9800(config-mdt-subs)#encoding encode-kvgpb
C9800(config-mdt-subs)#filter xpath <xpath-expression>
C9800(config-mdt-subs)#source-address <wlc-ip>
C9800(config-mdt-subs)#stream yang-push
C9800(config-mdt-subs)#update-policy periodic <interval-in-centiseconds>
C9800(config-mdt-subs)#receiver ip address <collector-ip> <collector-port> protocol grpc-tcp
Por ejemplo:
C9800(config)#telemetry ietf subscription 104
C9800(config-mdt-subs)#encoding encode-kvgpb
C9800(config-mdt-subs)#filter xpath /general-oper-data/mgmt-intf-data/intf-name
C9800(config-mdt-subs)#source-address 10.124.38.111
C9800(config-mdt-subs)#stream yang-push
C9800(config-mdt-subs)#update-policy periodic 2500
C9800(config-mdt-subs)#receiver ip address 10.124.41.144 18800 protocol grpc-tcp
Habilite el monitoreo en la telemetría gRPC para obtener los datos necesarios enviados por el WLC.

Información Relacionada