- Se construyó un clúster de Kubernetes sobre bare metal y se configuró una red de 10Gbps para reducir los costos de AWS
- Se reemplazaron los switches Ethernet y cables tradicionales con una red basada en puentes Ethernet sobre USB4
- La velocidad de red alcanzó 11Gbps, pero el costo de implementación fue de solo $47.98
Mini PC frente a un servidor 1U estándar
- Se evaluó qué tipo de máquinas usar para construir el clúster bare metal
- Los servidores 1U usados son baratos, pero resultan ineficientes al considerar los costos operativos
- Las mini PC son baratas, silenciosas y consumen poca energía
- Se eligió la mini PC Venus UM790 Pro por su bajo consumo de energía (6W en reposo, 80W con carga máxima)
- CPU AMD Ryzen 9 7940HS + 64GB de memoria + 1T de almacenamiento por un precio económico de $779
Red
- Se decidió agregar 2 mini PC UM790 Pro más para ampliar a un clúster de 3 nodos
- Después de instalar el sistema de almacenamiento Ceph, se hizo necesaria una mejor conexión de red entre nodos
- El equipo sí tiene puertos de red de 2.5G, pero aun así había que comprar un switch Ethernet
- Se consideró aprovechar los dos puertos USB4 del equipo, con potencial de alcanzar 40Gbps
- Se configuró una red full-mesh con cables USB4, reduciendo costos frente a comprar un switch Ethernet de 2.5G
Configuración de la red mesh con NixOS y systemd
- Se usó NixOS para crear una configuración reproducible del entorno Linux.
- Se configuraron los dispositivos de red tipo puente Thunderbolt y las IP con systemd-udevd.
Resultados del benchmark
- Los resultados de iperf3 confirmaron una velocidad de red de 11Gbps
Reflexión posterior
- Satisfacción por haber construido una red de 11Gbps a muy bajo costo.
- Curiosidad sobre la causa de la limitación de velocidad en una red basada en USB4.
- Exploración de las posibilidades futuras de construir redes de alta velocidad basadas en USB/Thunderbolt.
Opinión de GN⁺:
- Este artículo destaca la importancia de que los ingenieros de software amplíen sus conocimientos de hardware. En particular, propone un enfoque creativo para construir una red de alta velocidad a bajo costo, presentando una nueva alternativa frente a los métodos tradicionales de networking.
- Muestra que las redes basadas en tecnología USB4 pueden ser más rentables que las soluciones tradicionales basadas en Ethernet, además de ofrecer mayor velocidad. Esto podría convertirlas en una opción atractiva para pequeños centros de datos o usuarios individuales en el futuro.
- La forma de automatizar la configuración de red y hacerla reproducible con herramientas como NixOS ofrece información útil para administradores de sistemas y desarrolladores.
11 comentarios
Pensé que decía "compra total"...
Está muy bien armado... qué envidia.
Estoy usando muy bien la transferencia de archivos con IP sobre TB4/USB4, y de verdad es rapidísima jaja.
Si instalas
thinderbolt-tools, los paquetesbolty el driver correctamente, puedes configurar la interfaz connmcliy usarla fácilmente consshoscp, igual que una conexión Ethernet.Con dispositivos Intel y Mac no hubo mayores problemas, pero con AMD puede haber algunos dispositivos que no funcionen bien.
Si hubiera sabido esto, habría elegido un CPU de Intel... T_T
Eh... ¿si conectas directamente 2 PCs por USB4/Thunderbolt, se reconoce como Ethernet?
Justo estaba haciendo todo tipo de planes para intentar conectar mi NAS y mi PC a 10 Gbps
(iba a comprar 2 tarjetas de red con soporte para 10G para conectarlas directamente entre sí)
Ahora de repente me siento medio vacío.
¿Resulta que lo que tenía que hacer era cambiar la motherboard por una que soporte USB4/Thunderbolt...?
Cuando lo vi pasar de reojo en HN, lo dejé pasar sin pensarlo mucho,
pero al verlo aquí, de repente el contenido me llamó la atención;
En fin, gracias a esto ya veo una solución...
La desventaja sería más o menos que el NAS y la PC tienen que estar cerca.
Como mucho, un cable USB4 mide unos 3 m... (comparado con un cable de red, que llega hasta 100 m)
La limitación de distancia es más seria de lo que parece.
El estándar de cable USB-C solo soporta 10 Gbps cuando mide 1 m o menos. (Por eso los cables de datos USB-C son cortos).
Si mide 2 m o menos, soporta 5 Gbps, y si es más largo, solo soporta USB 2.
Si te vas de plano por el lado de Thunderbolt, puedes aumentar la distancia usando cables activos, pero los cables activos son carísimos y tampoco tengo claro si son compatibles con USB4.
Ah... entonces es muy probable que los cables USB4 de 3 m que hay en el mercado no den la velocidad adecuada.
Tendré que investigarlo bien antes de hacerlo. Como uso un CPU de AMD, también me cuesta usar Thunderbolt :(
Comentarios en Hacker News
Discusión sobre el protocolo USB4/Thunderbolt:
Explicación sobre la topología de red:
Benchmark del consumo eléctrico de un servidor Dell:
Capacidad de manejo de errores de USB 4:
Métodos de transferencia de archivos del pasado:
Optimización de la conexión Thunderbolt:
Recuerdos de topologías de red antiguas:
Problemas técnicos relacionados con la velocidad de Thunderbolt:
Discusión sobre las tarifas eléctricas:
Vaya, ¿entonces las computadoras antiguas podían intercambiar datos conectándolas con un cable paralelo???