Perfiles de dispositivo (dispositivos)
Descripción general del perfil del dispositivo
Los perfiles de dispositivos definen las capacidades de los dispositivos de hardware compatibles. Algunas funciones tienen diferentes comportamientos en las versiones de NOS y, por lo tanto, las capacidades se expresan según la versión de NOS. De forma predeterminada, la versión coincide con todas las versiones compatibles. A medida que se cumplen los requisitos de los modelos de hardware adicionales, se agregan a la lista de dispositivos calificados.
Los perfiles de dispositivos se asocian con dispositivos lógicos (abstracciones de dispositivos físicos) para crear mapas de interfaz.
En las siguientes secciones se describen los parámetros del perfil del dispositivo.
- Resumen
- Selector
- Capacidades
- Funciones compatibles (solo Cisco)
- Puertos
- Ver perfiles de dispositivos
Resumen
Descripción | de la sección de resumen |
---|---|
Nombre | Nombre del perfil del dispositivo. 64 caracteres o menos. |
Número de ranuras | Número de ranuras o módulos en el dispositivo. Los conmutadores modulares tienen varias ranuras. |
Empezar desde el ID |
Selector
La sección Selector contiene información específica del dispositivo para que coincida con el dispositivo de hardware con el perfil del dispositivo como se describe a continuación:
Descripción | de la sección del selector |
---|---|
Fabricante | Seleccionado en la lista desplegable |
Modelo | Determina si se puede aplicar un perfil de dispositivo a un hardware específico. Seleccionado de la lista desplegable o introducido como expresión regular (regex). |
Familia de SO | Define cómo se genera la configuración, cómo se representan los comandos de telemetría y cómo se despliega la configuración en un dispositivo. Seleccionado en la lista desplegable. |
Versión | Determina si se puede aplicar un perfil de dispositivo a un hardware específico. Seleccionado de la lista desplegable o introducido como regex. |
Capacidades
Puede aprovechar las capacidades de hardware y software definidas en esta sección en otras partes del entorno de Apstra para adaptar la configuración generada o para evitar una situación incompatible. Con la excepción de ECMP, las capacidades de hardware modifican la representación o el despliegue de la configuración. Las capacidades incluyen los siguientes detalles:
Descripción | de la sección capacidades |
---|---|
CPU (cpu:string) | Describe la arquitectura de CPU del dispositivo. Por ejemplo: "x86" |
Userland (bits) (userland:integer) | Tipo de país de usuario (binario de aplicación/kernel) que admite el dispositivo. Por ejemplo: "32" o "64". |
RAM (GB) (ram:entero) | Cantidad de memoria en el dispositivo. Por ejemplo: "16" |
Límite de ECMP (ecmp_limit:entero) | Número máximo de rutas multi rutas de costo igual. Por ejemplo: "64". Este campo cambia la configuración del BGP en el dispositivo (ecmp max-paths). |
Factor de forma (form_factor:string) | Número de unidades de bastidor (RU) en el dispositivo. Por ejemplo: "1RU", "2RU", "6RU", "7RU", "11RU", "13RU" |
ASIC (asic:string) | Asic del conjunto de chips del conmutador. Por ejemplo: "T2", "T2(3)", "T2(6)", "Arad(3)", "Alta", "TH", "Spectrum", "XPliant XP80", "ASE2", "Jericho". Se utiliza para ayudar a la telemetría, la representación de la configuración y la semántica de enrutamiento VXLAN |
LXC (lxc_support: booleano) | Seleccionado si el dispositivo admite contenedores LXC. |
ONIE (onie: booleano) | Seleccionado si el dispositivo es compatible con ONIE. |
Funciones compatibles (solo Cisco)
COPP : cuando se habilita la supervisión del plano de control (COPP), se representa la configuración estricta del perfil de CoPP para la versión especificada de NX-OS, lo que da como resultado la siguiente representación de configuración:
terminal dont-ask copp profile strict
Este terminal no requiere configuración solo cuando se habilita la configuración estricta del perfil de CoPP, ya que no queremos que NX-OS espere la confirmación:
switch(config)# copp profile strict This operation can cause disruption of control traffic. Proceed (y/n)? [no] ^C switch(config)# switch(config)# terminal dont-ask switch(config)# copp profile strict switch(config)#
El CoPP se habilita de forma predeterminada, excepto para Cisco 3172PQ NXOS. Puede especificar varias versiones.
Ruptura : habilite la ruptura para indicar que los puertos en módulos especificados se pueden dividir para reducir la velocidad de los puertos divididos.
El software Apstra primero elimina todos los puertos con capacidad de ruptura y, luego, aplica los comandos de ruptura adecuados según la intención. Esto se basa en la suposición de que el comando no interface breakout module<module_number>
de negación global siempre se puede aplicar correctamente a un módulo con puertos compatibles de ruptura. (Esto es idempotente cuando se aplica en puertos que no se rompen.) Sin embargo, reconocemos que esta suposición puede romperse en versiones futuras de NX-OS, o con una cierta combinación de cables/transceptores insertados en puertos compatibles con rupturas.
El ejemplo siguiente es para el comando de negación para un módulo (1) que se establece en True:
no interface breakout module 1 !
Dado que el comando de negación siempre es aplicable por módulo, cada módulo se especifica individualmente. Las ventajas de esto incluyen:
- En los sistemas modulares, no todas las tarjetas de línea tienen puertos compatibles con saltos.
- En sistemas no modulares, es posible que los puertos compatibles con ruptura no siempre estén en el módulo 1.
La ruptura está habilitada de forma predeterminada, excepto para los siguientes dispositivos con módulos incapaces de romper puertos: 3172PQ NXOS, 9372TX NXOS, C9372PX NXOS, C9396PX NXOS, NXOSv.
Contexto histórico: con una versión particular de NX-OS, la etapa POAP aplicaría la configuración de ruptura en los puertos que sean compatibles con la ruptura. El comportamiento del POAP, introducido en el POAP 7.0(3)I4(1), determina qué mapa de ruptura (por ejemplo, 10gx4, 50gx2, 25gx4 o 10gx2) muestra el vínculo conectado al servidor DHCP. Si no se admite la interrupción en ninguno de los puertos, POAP omite el proceso de interrupción dinámico. Una vez que se completa el bucle de interrupción, el POAP continúa con la fase de detección de DHCP como es normal. Apstra revierte cualquier configuración de interrupción que se haya podido representar durante la etapa POAP para garantizar que los puertos se vuelvan a poner a velocidad predeterminada mediante la aplicación del comando de negación.
Soporte de números de secuencia : aplicable a la ruta del sistema autónomo (AS). Habilite cuando el dispositivo admita números de secuencia. Secuencias apstra en la lista de entrada para resecuenciar y generar la configuración de la siguiente manera:
ip as-path access-list MyASN seq 5 permit ^$ ip as-path access-list Rtr seq 5 permit ^3 ip as-path access-list Srvr seq 15 permit _103$
Los números 5 y 15 son números de secuencia aplicables a dispositivos que admiten la secuencia del AS.
El soporte de números de secuencia se habilita para todos los perfiles de dispositivos de Cisco de forma predeterminada (excepto Cisco 3172PQ NXOS, que no admite números de secuencia). Para las plataformas que no admiten números de secuencia, deshabilitar esta función garantiza que los números de secuencia del AS se eliminen del diccionario del modelo de dispositivo para evitar la adición y negación en caso de que algo se vuelva a secuenciar. Este escenario no tiene ningún requisito para representar nada en estas plataformas, ya que la entrada no se puede secuenciar.
Otras funciones compatibles , que no están disponibles en la GUI de Apstra, incluyen "vxlan", "bfd", "vrf_limit", "vtep_limit", "floodlist_limit", "max_l2_mtu" y "max_l3-mtu". Se pueden incluir en el backend con el siguiente formato:
clave : value :: característica : feature_properties Ejemplo: 32 vtep_limit: 32
Puertos
La sección de puertos define los tipos de puertos disponibles, sus capacidades y cómo se organizan.
Cada puerto contiene una colección de transformaciones de velocidad compatibles. Cada transformación representa la capacidad de ruptura (como el puerto 1-40GBe que se rompe en puertos de 4 a 10 GBe) y, por lo tanto, contiene una colección de interfaces.
Ejemplo: si el puerto 1 es un puerto compatible de ruptura QSFP28 100->4x10, 100->1x40, el puerto 1 tiene una colección de tres transformaciones, una cada una para brotes de 4x10, 1x40 y 1x100. El elemento de transformación de la colección que representa el 4x10 tiene una colección de 4 interfaces, 1x40 y 1x100 tiene una colección de 1 interfaz.
Los parámetros de puertos incluyen los siguientes detalles:
Descripción | de la sección puertos |
---|---|
Índice de puerto (port_id: entero) | Indica un puerto único en la colección de puertos del perfil del dispositivo. |
Índice de fila (row_id: entero) | Representa las dimensiones de arriba abajo del panel de puertos. Muestra dónde se coloca el puerto en el panel del dispositivo. Por ejemplo, en un panel con dos filas y muchas columnas, el índice de fila es "1" o "2". |
Índice de columna (column_id: entero) | Representa las dimensiones de izquierda a derecha del panel de puertos. Muestra dónde se coloca el puerto en el panel del dispositivo. Por ejemplo, en un panel con treinta y dos puertos y dos filas, el índice de columna está en el intervalo de "1" a "16". |
Índice de panel (panel_id: entero) | Indica el panel al que pertenece el puerto dado el diseño físico de los puertos en la especificación del dispositivo |
ID de ranura (slot_id: entero) | Representa el módulo al que pertenece el puerto. Un conmutador modular tiene más de una ranura. En los dispositivos de función de red de función fija, el ID de ranura suele ser "0". |
Dominio de falla (failure_domain_id: entero) | Indica si varios paneles dependen de los mismos componentes de hardware. Se utiliza al crear el plan de cableado para asegurarse de que dos enlaces ascendentes no están conectados al mismo dominio de falla. |
Tipo de conector (connector_type: cadena) | Tipo de transceptor de puerto. Las capacidades de velocidad del puerto están directamente relacionadas con el tipo de conector, dado que ciertos tipos de conectores pueden ejecutarse a ciertas velocidades. Por ejemplo, "sfp", "sfp28", "qsfp", "qsfp28". |
Transformaciones (transformaciones: lista) | Posibles fugas para el puerto. Cada entrada es una velocidad compatible específica. Cada transformación tiene una colección de interfaces. |
Número de interfaces (interfaces:list) | Depende de la capacidad de ruptura del puerto. Para una transformación que representa una velocidad de interrupción determinada, las interfaces contienen información sobre los nombres de las interfaces y la configuración de la interfaz con la que el dispositivo tiene la intención de configurarse. La información de "configuración" es crucial para configurar las interfaces correctamente en el dispositivo. |
Según la información del SISTEMA ingresada en el campo de selector del perfil del dispositivo, la GUI de Apstra muestra los campos de configuración correspondientes. Los campos varían según el sistema operativo del proveedor (como se muestra en los ejemplos a continuación). Cuando se crea o edita un perfil de dispositivo, la "configuración" se valida del esquema específico del proveedor como se muestra a continuación.:
eos_port_setting = Dict({ 'interface': Dict({ 'speed': Enum([ '', '1000full', '10000full', '25gfull', '40gfull', '50gfull', '100gfull', ])}), 'global': Dict({ 'port_group': Integer(), 'select': String() }) }) nxos_port_setting = Dict({ 'interface': Dict({ 'speed': Enum([ '', '1000', '10000', '25000', '40000', '50000', '100000', ])}), 'global': Dict({ "port_index": Integer(), "speed": String(), "module_index": Integer() }) }) junos_port_setting = Dict({ 'interface': Dict({ 'speed': Enum([ '', 'disabled', '1g', '10g', '25g', '40g', '50g', '100g' ])}), 'global': Dict({ 'speed': Enum([ '', '1g', '10g', '25g', '40g', '50g', '100g' ]), "port_index": Optional(Integer()), "fpc": Optional(Integer()), "pic": Optional(Integer()) }) }) sonic_port_setting = Dict({ 'interface': Dict({ "command": Optional(String()), "speed": String(), "lane_map": Optional(String()) }) }) })
Apstra no utiliza necesariamente toda la información anterior para modelar. Está disponible para otras herramientas de orquestación de API de Apstra para su recopilación y uso.
Ver perfiles de dispositivos
Desde el menú de navegación izquierdo de la GUI de Apstra, vaya a Dispositivos > perfiles de dispositivo para ir a la vista de lista de perfiles de dispositivo. Puede crear, clonar, editar y eliminar perfiles de dispositivo.