- Para reduzir os custos da AWS, foi montado um cluster Kubernetes bare metal e configurada uma rede de 10 Gbps
- Foi usado networking baseado em bridge Ethernet via USB4 para substituir switches Ethernet e cabos tradicionais
- A rede atingiu 11 Gbps, mas o custo de implementação foi de apenas US$ 47,98
Mini PC vs. servidor 1U padrão
- Houve uma análise sobre que tipo de máquina usar na montagem de um cluster bare metal
- Servidores 1U usados são baratos, mas se tornam ineficientes ao considerar os custos operacionais
- Mini PCs são baratos, silenciosos e consomem pouca energia
- Foi escolhido o mini PC Venus UM790 Pro, com baixo consumo de energia (6W em idle, 80W em carga máxima)
- CPU AMD Ryzen 9 7940HS + 64GB de memória + 1T de armazenamento por US$ 779, um preço acessível
Rede
- Foram adicionados mais dois mini PCs UM790 Pro, expandindo para um cluster de 3 nós
- Após instalar o sistema de armazenamento Ceph, surgiu a necessidade de uma conexão de rede melhor entre os nós
- O equipamento até tinha portas de rede de 2.5G, mas ainda seria necessário comprar um switch Ethernet
- Foi considerada a possibilidade de atingir 40 Gbps aproveitando as duas portas USB4 do equipamento
- Foi montada uma rede full-mesh com cabos USB4, reduzindo custos em comparação com a compra de um switch Ethernet de 2.5G
Configuração de rede mesh com NixOS e systemd
- Foi usado NixOS para criar uma configuração reproduzível do ambiente Linux.
systemd-udevd foi usado para configurar dispositivos de rede em bridge Thunderbolt e definir IPs.
Resultados de benchmark
- Os benchmarks com
iperf3 confirmaram velocidade de rede de 11 Gbps
Considerações posteriores
- Houve satisfação por ter construído uma rede de 11 Gbps com baixo custo.
- Ficou a curiosidade sobre a causa da limitação de velocidade da rede baseada em USB4.
- Também foi explorado o potencial futuro de redes de alta velocidade baseadas em USB/Thunderbolt.
Opinião do GN⁺:
- Este artigo destaca a importância de engenheiros de software ampliarem seu conhecimento de hardware. Em especial, apresenta uma abordagem criativa para construir redes de alta velocidade com baixo custo, sugerindo uma nova alternativa aos métodos tradicionais de rede.
- O uso de USB4 para networking mostra que ele pode oferecer boa relação custo-benefício e altas velocidades em comparação com soluções tradicionais baseadas em Ethernet. Isso pode se tornar uma opção atraente para pequenos data centers ou usuários individuais no futuro.
- O uso de ferramentas como NixOS para automatizar e tornar reproduzível a configuração de rede oferece informações úteis para administradores de sistemas e desenvolvedores.
11 comentários
Achei que estava escrito “compra total”..
Ficou muito bem montado... inveja boa.
Estou usando bem a transferência de arquivos por IP over TB4/USB4, e é realmente muito rápida haha
Se os pacotes
thinderbolt-toolseboltestiverem instalados e o driver estiver configurado corretamente, dá para ajustar a interface comnmclie usar normalmente comsshouscp, de forma tão simples quanto uma conexão Ethernet. Dispositivos Intel e Macs não tiveram grandes problemas, mas com AMD pode haver alguns aparelhos que não funcionem tão bem.Se eu soubesse disso, teria escolhido uma CPU da Intel... 😭
Ah... então, se você conectar diretamente dois PCs via USB4/Thunderbolt, isso é tratado como Ethernet?
Eu estava fazendo todos os tipos de plano para tentar uma conexão de 10Gbps entre o NAS e o PC
(estava pensando em comprar 2 placas de rede com suporte a 10G e ligar uma diretamente à outra)
Agora bateu até um vazio.
Será que o negócio era trocar a placa-mãe por uma com suporte a USB4/Thunderbolt...
Quando vi isso passando pelo HN, deixei passar sem pensar muito,
mas vendo aqui, o conteúdo de repente chamou minha atenção;
Enfim, graças a isso já consigo ver uma solução...
A desvantagem seria basicamente o NAS e o PC terem que ficar próximos um do outro.
Como o cabo USB4 chega no máximo a uns 3 m... (comparando com cabo de rede, que vai até 100 m)
As limitações de distância são mais severas do que parecem.
O padrão de cabo USB-C só suporta 10 Gbps quando tem no máximo 1 m. (é por isso que os cabos de dados USB-C são curtos.)
Se tiver até 2 m, suporta 5 Gbps, e acima disso só USB 2.
Se for direto para o lado do Thunderbolt, dá para aumentar a distância usando cabo ativo, mas cabo ativo também é caríssimo, e não sei bem se é compatível com USB4.
Ah... então é bem provável que os cabos USB4 de 3 m disponíveis no mercado não consigam entregar a velocidade adequada.
Vou pesquisar direitinho antes de fazer isso. Como uso CPU AMD, também é difícil usar Thunderbolt 😢
Comentários no Hacker News
Discussão sobre o protocolo USB4/Thunderbolt:
Explicação sobre a topologia de rede:
Benchmark de consumo de energia de servidores Dell:
Capacidade de tratamento de erros do USB 4:
Métodos antigos de transferência de arquivos:
Otimização da conexão Thunderbolt:
Recordação de topologias de rede antigas:
Problemas técnicos relacionados à velocidade do Thunderbolt:
Discussão sobre tarifa de eletricidade:
E pensar que, antigamente, os computadores podiam trocar dados entre si se fossem conectados por um cabo paralelo???