
Actualización de SONiC NOS: Guía práctica de un CCIE para un proceso sin fisuras
TL/DR: Las actualizaciones de NOS pueden ser un poco complicadas, si quieres una forma fácil de actualizar automáticamente los dispositivos SONiC, Verity actualiza los dispositivos por ti según tus necesidades específicas con sólo unos clics.
Como ingeniero de redes con un CCIE y años de experiencia práctica con sistemas operativos de red propietarios y de código abierto, he visto de primera mano cómo SONiC (Software for Open Networking in the Cloud) ha cambiado el mundo de la infraestructura de red. Construido sobre Linux y diseñado para centros de datos a hiperescala, SONiC ofrece flexibilidad y control a niveles inigualables por los proveedores tradicionales. Pero esa potencia conlleva una curva de aprendizaje, especialmente cuando se trata de algo tan crítico como actualizar el NOS.
A continuación se describe paso a paso cómo actualizar el SONiC NOS de forma segura y eficaz.
1. Entiende tu entorno
Antes de actualizar, haga un inventario claro de su entorno actual:
- ¿Qué versión de SONiC utiliza?
- ¿Qué plataforma de hardware utiliza (Broadcom, Nvidia/Mellanox, Marvell, etc.)?
- ¿Utiliza una arquitectura ToR dual (activa-standby) o ToR única?
- ¿Cuál es la ruta de actualización desde su versión actual? (SONiC no siempre admite actualizaciones directas entre todas las versiones.) Utilice el botón
mostrar versión
ymostrar resumen de plataforma
para documentar su línea de base.
2. Preparación previa a la actualización
La preparación es la fase más crítica. Haga una copia de seguridad de sus configuraciones utilizando:
sudo config save -y
Exportar la configuración para almacenamiento externo:
sudo config save /host/config_db.json
A continuación, valide su sintaxis de configuración con:
sudo config validate /host/config_db.json
Por último, copie la imagen SONiC de destino en su dispositivo:
sudo wget
Para las versiones oficiales, utilice el GitHub de SONiC o el portal de su proveedor.
3. Instalar la nueva imagen
Para instalar la nueva imagen SONiC, utilice la función sonic-installer
utilidad. Admite la reversión y conserva la configuración existente (a menos que se indique explícitamente lo contrario).
sudo sonic-installer install --skip-mount
Para mantener la configuración actual durante la actualización:
sudo sonic-installer install --skip-mount --preserve
Si estás haciendo pruebas, también puedes establecerla como la siguiente imagen de arranque sin instalarla inmediatamente:
sudo sonic-installer set-next-boot
4. Reiniciar y verificar
Después de la instalación:
sudo reboot
Después del reinicio, verifique el estado del sistema:
mostrar versión
mostrar servicios
docker ps -a
También deberías comprobar que los vecinos BGP aparecen, que las interfaces están activas y que cualquier servicio personalizado se está ejecutando.
5. Plan de desmantelamiento
Incluso la mejor actualización puede fallar. Si es necesario, revertir utilizando:
sudo sonic-installer list
sudo sonic-installer install --skip-mount --preserve
Mantenga siempre al menos una imagen buena conocida en su conmutador para soportar la reversión.
Reflexiones finales
SONiC ofrece potentes capacidades, pero a diferencia de las soluciones de proveedores tradicionales, usted es el propietario de todo el ciclo de vida de la actualización. La naturaleza modular de SONiC, que utiliza contenedores para servicios críticos como BGP, LLDP y DHCP, significa que las actualizaciones pueden afectar a veces a servicios aislados sin que se caiga toda la pila. Realice pruebas exhaustivas en un laboratorio, automatice siempre que sea posible y no subestime el poder de una instantánea previa a la actualización.
Si quieres una manera fácil de hacer actualizaciones SONiC, Verity dispone de una función de actualización NOS que puede automatizarse, programarse e incluso se encarga de actualizar dispositivos en bloque según sus necesidades.

Josh Saul
VP de Marketing de Producto
Josh Saul ha sido pionero en soluciones de red de código abierto durante más de 25 años. Como arquitecto, construyó redes centrales para GE, Pfizer y NBC Universal. Como ingeniero en Cisco, Josh asesoró a clientes del sector financiero de Fortune 100 y evangelizó nuevas tecnologías entre los clientes. Más recientemente, Josh dirigió equipos de marketing y productos en VMware (adquirida por Broadcom), Cumulus Networks (adquirida por Nvidia) y Apstra (adquirida por Juniper).