Guía para ingenieros de red
Guía de intención para ingenieros de red
Cómo definir, leer y editar la intención de tu red en Oktavia, en cualquier dominio: desde las consolas de Servicios o desde el Configurador, entendiendo los alcances y sin saltarte ningún control.
1. Para quién es esta guía
Para ingenieros de red y de automatización, de cliente o de socio, que diseñan y mantienen la intención de una red en Oktavia. Sirve para cualquier dominio: Campus, WAN, Seguridad, Gestión y, en proveedores de servicios, Transporte y Servicios de cliente.
Al terminar sabrás en qué alcance va cada valor, cómo leer y editar la intención desde la consola de tu dominio, cuándo usar el Configurador y cómo llevar un cambio a la red sin saltarte ningún control.
No hace falta programar. Sí ayuda saber leer JSON, y aquí se explica lo necesario.
2. La idea: declarar, no teclear
En Oktavia no se escriben comandos por equipo: se declara cómo debe ser la red. Esa declaración es la intención y es la fuente de verdad. Tiene dos caras:
| Intención de config | Intención de estado | |
|---|---|---|
| Responde | Cómo debe estar configurado. | Cómo debe estar funcionando. |
| Ejemplo | Estos servidores NTP, estas VLAN, estos vecinos BGP. | Vecinos arriba, túneles cifrados, VLAN presentes. |
| Se compara con | La configuración del equipo. | Lo que el equipo reporta. |
| En la consola | Pestaña Intención. | Pestaña Reglas. |
Editar la intención no toca la red. Guardar sólo cambia lo que la red debería ser; por eso, tras guardar, la auditoría mostrará como falla lo que todavía no llega a los equipos. El cambio viaja por un ciclo con aprobación humana (sección 10).
3. Dónde se trabaja
Es la misma intención vista desde cuatro lugares. Lo que guardas en uno aparece en los demás.
| Lugar | Úsalo para |
|---|---|
| Consola del dominio Servicios → Campus, WAN… | El trabajo diario: ver la intención de tu dominio en una tabla, filtrarla por sitio y editar valores. Es el punto de partida recomendado. |
| Configurador Automatización → Generador de configuración | Declarar un servicio nuevo o en un alcance nuevo, formularios guiados por campo, vista previa de la configuración de un equipo, importación y exportación. |
| Argos El asistente | Proponer intención con lenguaje natural, traerla desde el respaldo de un equipo y cerrar el ciclo. |
| Propuesta JSON | Cambios grandes preparados fuera de la plataforma: se suben al Configurador, se revisan como delta y se aplican. |
4. Los dominios
Cada servicio del catálogo pertenece a un dominio, y cada dominio tiene su consola con las mismas pestañas: Resumen, Intención, Reglas, Cumplimiento, Cambios, Flujos y Telemetría. Un ingeniero de WAN trabaja en WAN sin ver lo demás, y el Alcance de arriba recorta todo a un sitio.
| Dominio | Qué cubre | Servicios típicos |
|---|---|---|
| Campus | La red del sitio. | VLAN, puertos, spanning-tree, gateways, DHCP, ruteo interno, inalámbrico. |
| WAN | Lo que une sitios. | BGP y sus políticas, túneles FlexVPN y GRE, SD-WAN, rutas de salida, NAT. |
| Seguridad | Quién entra y qué pasa. | Firewall, ACL, zonas, administradores y blindaje del acceso. |
| Gestión | La base del equipo. | NTP, SNMP, syslog, DNS, SSH, versión y modelo. |
| Transporte Proveedores de servicios | El núcleo. | IS-IS, Segment Routing, TI-LFA, BFD. |
| Servicios Proveedores de servicios | Lo que compra cada cliente. | VPNv4, L3VPN, pseudowires, QoS. |
Centro de datos y nube se sumarán como dominios con la misma forma de trabajo: lo que aprendas aquí aplica igual.
5. Alcances: dónde va cada valor
La intención se declara una vez, en el alcance más general posible, y los equipos la heredan. Es la decisión de diseño más importante: un buen alcance evita cientos de excepciones.
| # | Alcance | Aplica a | Úsalo para |
|---|---|---|---|
| 1 | defaults | Toda la organización. | La línea base: dominio, NTP, syslog, banner. |
| 2 | by_site | Un sitio. | Lo propio de un sitio. |
| 3 | by_site_type | Un tipo de sitio. | El diseño común de oficinas o sucursales. |
| 4 | by_role | Una función. | El estándar de wan_router, lan_switch, pe… |
| 5 | by_platform | Un fabricante o sistema. | Lo que cambia por plataforma. |
| 6 | by_model | Un modelo. | Versiones de software aprobadas. |
| 7 | by_tag | Equipos con una etiqueta. | Grupos que no siguen sitio ni rol. |
| 8 | by_filter | Una combinación. | Por ejemplo, un rol dentro de un sitio. |
| 9 | by_device | Un equipo. | IP, interfaces, vecinos y excepciones reales. |
Las capas se aplican en ese orden y la última gana. Así funciona la mezcla:
- Los objetos se mezclan campo por campo. Lo que un alcance no menciona sigue llegando de arriba.
- Las listas se reemplazan completas. Nunca se suman.
"enabled": falseapaga el servicio para los equipos de ese alcance.
defaults ntp.servers = ["192.0.2.1", "192.0.2.2"]
by_role / wan_router ntp.servers = ["198.51.100.9"]
wan_router → ["198.51.100.9"]
lan_switch → ["192.0.2.1", "192.0.2.2"]
El router recibe un servidor, no tres: su lista reemplazó a la de arriba.
by_site_type va después de by_site, así que si ambos declaran un campo gana el tipo. Para una excepción de un sitio usa by_filter o by_device.6. Editar desde la consola del dominio
Es la forma más directa de ver y cambiar tu intención. Abre Servicios, elige el dominio y entra a Intención.
Leer la tabla
Hay una fila por valor, agrupada por declaración: Servicio, Alcance, Parámetro y Valor. La etiqueta del alcance dice a cuántos equipos les gana:
- Gana en N equipos: esa declaración es la que aplican.
- Sin efecto: un alcance más específico le gana en todos sus equipos. Conviene revisarla.
- Deshabilitado: tiene
enabled: false.
Con el Alcance de arriba eliges un sitio y la tabla muestra sólo lo que aplica a sus equipos, cada valor desde la declaración que les gana, sin importar en qué capa esté. Es la mejor forma de responder «¿qué tiene realmente este sitio?». El buscador encuentra servicios, parámetros y valores.
Cambiar un valor
- Busca el servicio y pulsa Editar valores en la declaración que quieres cambiar. Si eliges mal el alcance, cambiarás a más equipos o a menos de los que crees.
- Edita el JSON que se abre.
- Pulsa Revisar el cambio. Oktavia valida y muestra cada valor antes y después, y cuántos equipos quedan afectados.
- Si es correcto, pulsa Guardar en la intención. Las reglas de cumplimiento y la configuración esperada se actualizan.
- Usa el botón que aparece para llevarlo a la red con Argos.
7. El JSON que estás editando
Cada declaración es un objeto con los campos del servicio. Este es un ntp:
{
"servers": ["192.0.2.1", "192.0.2.2"],
"source_interface": "Loopback0",
"vrf": "Mgmt"
}
Y una lista de objetos, como vlan_database, lleva un elemento por VLAN. La tabla muestra cada uno en su fila:
{
"entries": [
{ "id": 100, "name": "data" },
{ "id": 200, "name": "voice" }
]
}
Reglas al editar:
- Escribe sólo lo que este alcance define. Lo demás se hereda. Copiar valores heredados los congela aquí, y el estándar deja de llegar.
- Agregar a una lista es reescribirla: pon los elementos existentes y el nuevo.
- Para volver a heredar, quita la declaración desde el Configurador. Si quieres que un equipo no tenga algo heredado, apaga el servicio con
"enabled": falseo declara el valor que sí debe tener.
Secretos
Las claves nunca se ven ni se escriben en claro. En pantalla aparecen como ••••; déjalas así y Oktavia conserva el valor guardado. Para una clave nueva, guárdala en la bóveda de credenciales y usa su referencia:
{ "address": "203.0.113.2", "remote_as": 64501, "password": "<<vault:bgp>>" }
Si escribes un secreto en claro, Oktavia rechaza el guardado y te pide la referencia.
8. Cuándo usar el Configurador
Abre el Configurador cuando vayas a:
- Declarar un servicio por primera vez o llevarlo a otro alcance. Los formularios del catálogo guían cada campo.
- Revisar dónde está declarado algo en todos los alcances, con su estado efectivo o sombreado.
- Previsualizar las líneas que un equipo recibiría.
- Importar o exportar: propuestas JSON, CSV y la intención completa.
- Ordenar: la Estandarización sube a un alcance común lo que está repetido en muchos equipos, y separa lo que sólo ordena de lo que cambia equipos.
Al guardar, escribe sólo los campos que tocaste. Y si vas a tapar listas heredadas, te avisa cuáles antes de hacerlo: léelo.
Traer una red que ya existe
No hace falta empezar en blanco. Argos compara lo declarado con lo que tienen los equipos y lleva a la intención lo que está configurado pero sin declarar, leyendo sus respaldos. Queda como propuesta para revisar. Ojo: importar no es aprobar. Si un equipo tiene un error y lo importas, se vuelve intención.
9. La intención de estado
La pestaña Reglas de cada consola muestra cómo debe estar funcionando la red, también en una tabla: regla, resultado, equipo, parámetro y valor esperado, con lo que falla primero. Al elegir un sitio verás sus equipos y sus resultados.
- Automática de la config: Oktavia la deriva de tu intención. Si declaras un túnel, la regla exige que esté arriba. No se edita: cambia al editar la config.
- Manual: la defines tú en Reglas de cumplimiento, por ejemplo un umbral.
- Fijada a mano: una automática que alguien fijó; ya no sigue a la config.
Las reglas de configuración, una por servicio declarado, están en el plegable de abajo. Comparan la configuración del equipo con tu intención.
10. Llevar el cambio a la red
Después de guardar, la consola ofrece la frase de Argos para cerrar el ciclo. Todo cambio sigue el mismo camino:
- Auditar. Oktavia compara la intención con los equipos y encuentra lo que falta.
- Proponer. Cada diferencia se vuelve un cambio con ticket en el Gemelo digital, con su diferencia y su rollback.
- Revisar y aprobar. Una persona lo aprueba; se puede probar antes sin aplicar.
- Aplicar y verificar. Una nueva auditoría confirma que el equipo quedó como la intención.
En un núcleo IOS XR el cambio es una sola transacción de red con commit confirmed: si no confirmas, los equipos regresan solos.
11. Recetas por dominio
Gestión · Cambiar los servidores NTP de toda la red
- En Gestión → Intención, busca NTP. Sin elegir sitio, verás todas sus declaraciones.
- Edita la de
defaultscon la lista completa de servidores. - Si aparecen declaraciones en otros alcances, decide con quien corresponda si son excepciones reales. Las que no, quítalas en el Configurador para que hereden.
Campus · Agregar una VLAN a un sitio
- En Campus → Intención, elige el sitio y busca VLAN.
- Edita la declaración que gana en sus switches y agrega el elemento a
entries, conservando los existentes. - Si la VLAN debe cruzar enlaces entre switches, revisa también sus trunks.
- Después comprueba en Servicios de Capa 2 en qué switches vive y en qué gateway termina.
WAN · Agregar un vecino BGP
- En WAN → Intención, elige el sitio y busca BGP. Los vecinos casi siempre viven en
by_device. - Agrega el vecino a la lista, con su clave como referencia a la bóveda.
- Revisa si hacen falta prefix-lists o route-maps.
- Al cerrar el ciclo, comprueba la adyacencia en Servicios de Capa 3 y el camino en Análisis de ruteo.
Seguridad · Ajustar una ACL
- En Seguridad → Intención, busca la ACL. Si está en un alcance común, cambiarla afecta a todos los equipos que muestra la etiqueta.
- Para un solo equipo, no toques la común: declárala en su
by_devicecon la lista completa.
Servicios (proveedor) · Dar ancho de banda a un cliente
- En Servicios → Intención, edita
l3vpnol2vpny agregabandwidth_mbpsal sitio o circuito del cliente. - Con el servicio
xr_qosdeclarado en el rolpe, Oktavia deriva la política. - Lleva el cambio al núcleo como transacción de red y revisa el servicio en Servicios de cliente.
12. Buenas prácticas
- Empieza por lo más general. Baja de alcance sólo cuando haya una razón.
by_devicees para lo que es del equipo: IP, interfaces, vecinos y excepciones acordadas.- Diseña por tipo de sitio para que los sitios nuevos nazcan iguales.
- Lee «a cuántos equipos» antes de guardar. Si el número te sorprende, no guardes.
- Revisa lo que dice «Sin efecto». Una declaración que no gana en ningún equipo confunde al siguiente ingeniero.
- Nada de secretos en claro. Todo por la bóveda.
- Estandariza antes de endurecer. Si el blindaje se hace con todo en
by_device, el estándar del rol nunca existe. - Verifica con cumplimiento, no con la memoria. Un cambio termina cuando la auditoría lo confirma.
Para profundizar: cuándo usar cada alcance, la referencia de Service Vars y las consolas por dominio.