Stiamo creando un router e NAS su un unico processore

Ho avuto un 'server domestico' su Linux solo pochi anni dopo che mi hanno comprato un computer. Ora, da quel momento, sono già passati più di quindici anni e per la maggior parte di questo tempo ho avuto un secondo computer aggiuntivo a casa. Un giorno, quando è arrivato il momento di aggiornarlo, mi sono chiesto: a che mi serve un router separato, se ho già un computer libero? In effetti, tanti anni fa, nei primi anni 2000, per molti questa era una configurazione standard.

Infatti: oggi è possibile creare una macchina virtuale separata, collegare lì una scheda USB o PCI Wi-Fi. E come sistema operativo si può utilizzare MikroTik RouterOS, ottenendo software di livello enterprise a un costo contenuto.

Introduzione

Delimito i miei obiettivi e compiti, al momento in cui ho appena iniziato il progetto:

  1. Il montaggio deve consistere il più possibile di componenti standard molto diffusi. Questo significa che non devono esserci schede madri di dimensioni diverse da mATX / mini-ITX e case bassi in cui non entrano schede di dimensioni standard.
  2. Ci devono essere molti spazi per i dischi, ma i cassetti devono essere per dischi da 2.5".
  3. La modularità dovrebbe portare, dopo un certo tempo, a un risparmio — infatti, una scheda Wi-Fi del vecchio standard 5 potrà essere semplicemente sostituita con una 7.
  4. Supporto per qualche tipo di gestione remota, in modo da poter capire perché il sistema non si avvia, senza la necessità di collegare fisicamente un monitor e una tastiera a qualcosa di alto e lontano.
  5. Massima libertà nella scelta del sistema operativo e supporto per tutte le componenti critiche in qualsiasi OS.
  6. Elevate prestazioni. Non voglio più aspettare che Deluge 'elabori' un .torrent con migliaia di file o che la crittografia riduca la velocità al di sotto delle prestazioni del disco o della connessione di rete.
  7. Bellezza estetica e ordine nel montaggio.
  8. Compattezza estrema. La dimensione ideale è quella di una moderna console di gioco.

Avverto subito che, se credete che di seguito nell'articolo vi spiegherò come realizzare tutti i punti — siete molto naive e fareste meglio a comprare un Synology o uno spazio nel cloud.
Infatti, non vedo nulla di irrealistico in questa soluzione, semplicemente, forse, non ho studiato abbastanza bene tutte le opzioni, oppure — perché il mercato dei NAS fai-da-te è in declino da tempo e i componenti per questo scopo sono sempre meno e costano di più.

Un po' di software

Negli ultimi tempi sono diventato così pigro che non avevo nemmeno voglia di configurare KVM da solo, così ho deciso di provare a vedere cosa fosse unRAID, che LinusTechTips ha pubblicizzato così tanto come un'interfaccia grafica utile per configurare KVM e un buon software per NAS in generale. Poiché ero anche troppo pigro per armeggiare con mdadm, unRAID uccideva due piccioni con una fava.

Compilazione

Scocca

Poi è arrivata, a sorpresa, la parte più complicata della costruzione di un NAS fatto in casa con componenti standard: la scelta del case! Come ho già detto, sono lontani i tempi in cui i case avevano una porta alla quale si accedeva per estrarre i cesti con i dischi. E a me sarebbe anche piaciuto usare dischi da 2,5” con altezza 15 millimetri di Seagate (al momento della scrittura, la capacità massima è di 5TB). Sono silenziosi e occupano poco spazio. Finora i 5TB mi erano stati sufficienti.

Ovviamente, la scheda madre volevo miniITX, poiché sembrava che un solo slot di espansione fosse sufficiente.

Si è rivelato che ci sono case compatti, delle dimensioni di un netbook, ma in essi c'è solo uno spazio per dischi da 2,5 e "altri" case, in cui ci sono già un paio di 3,5 della dimensione appropriata. Non esiste semplicemente una via di mezzo. Nemmeno a pagamento. C'era qualcosa su Ali, ma è stato dismesso (CONTROLLA SEMPRE Ali, nella ricerca di oggetti insoliti; a volte i cinesi hanno già inventato tutto e messo in produzione di massa). Su un forum secondario ho trovato informazioni su SilverStone CS01B-HS, ma il prezzo non rientrava affatto nella categoria "budget". Stanco delle ricerche, l'ho ordinato su Amazon tramite Shipito, fallendo completamente il terzo punto del capitolato tecnico.

D'altra parte, ora non dovevo più preoccuparmi del budget!

Vi consiglio di creare subito un modello 3D del Case dei Vostri Sogni e farlo realizzare su una fresatrice CNC in vero alluminio. Sarà leggermente più costoso del SilverStone, ma mille volte più piacevole. Solo, condividetelo poi su GitHub!

Processore

Naturalmente, mi sarebbe piaciuto optare per un processore AMD, siamo nel 2019, lo scetticismo è solo per chi non vuole approfondire. Ma, cercando di soddisfare il punto quattro "Supporto per il controllo remoto", trovo da AMD solo Ryzen DASH e comprendo che in questo caso è necessario optare per Intel.

Poi, come sempre: yandex.market, filtri, una leggera ricerca su Google per problemi da bambini e consegna gratuita domani all'interno del MKAD.

Scheda madre

Tra le schede madri, di fatto, c'era solo una scelta: Gigabyte GA-Q170TN.

Non ho la minima idea del perché lo slot di espansione sia solo x4, ma, se in futuro vorrete installare una scheda di rete a dieci gigabit, lo spazio sarà sufficiente (ma non potrete collegare uno storage che supporti tale performance).

Tra i grandi vantaggi: due slot miniPCI-E. MikroTik produce tutte le sue schede Wi-Fi (e sono proprio quelle di cui abbiamo bisogno, poiché solo quelle sono supportate in RouterOS) in formato miniPCI-E, e probabilmente continuerà a farlo per molti anni, dato che questo è il loro standard principale per le schede di espansione. Ad esempio, puoi acquistare il loro modulo LoRaWAN e ottenere facilmente supporto per dispositivi LoRa.

Due Ethernet, ma a 1 Gbit. Nel 2017 ho proposto una legge per vietare la vendita di schede madri con velocità Ethernet inferiori ai 4 Gbit, ma non sono riuscito a raccogliere il numero necessario di firme per superare il filtro municipale.

Dischi

Per i dischi prendiamo due STDR5000200. Per qualche motivo costano meno degli ST5000LM000, che si trovano realmente lì. Dopo l'acquisto verifichiamo, smontiamo, prendiamo gli ST5000LM000 e li colleghiamo tramite SATA. In caso di garanzia — rimontate e restituiteli, ricevendo in cambio un nuovo disco (non scherzo, l'ho fatto così).

Non ho usato SSD NVMe, forse in futuro, se se ne presenterà l'occasione.

Intel, come da sua tradizione, ha disseminato trappole: supporto inadeguato nella scheda madre, il supporto vPro è necessario anche nella CPU, e vi stancherete a cercare la tabella di compatibilità. Per qualche miracolo ho scoperto che è necessario almeno un i5-7500. Ma poiché non c'era più limite di budget, mi sono rassegnato.

Negli altri componenti non vedo nulla di interessante, possono essere sostituiti con qualsiasi analogo, quindi ecco una tabella generale con i prezzi al momento dell'acquisto:

Nome
Numero
Prezzo
Prezzo

Crucial DDR4 SO-DIMM 2400MHz PC4-19200 CL17 — 4Gb CT4G4SFS624A
2
1 259
2 518

Seagate STDR5000200
2
8 330
16 660

SilverStone CS01B-HS
1
$159 + $17 (spese di spedizione da Amazon) + $80 (spese di spedizione in Russia) = $256
16 830

Controller PCI-E Espada FG-EST14A-1-BU01
1
2 850
2 850

Alimentatore SFX 300W Be quiet SFX POWER 2 BN226
1
4160
4160

Kingston SSD 240GB SUV500MS/240G {mSATA}
1
2 770
2 770

Intel Core i5-7500
1
10 000
10 000

GIGABYTE GA-Q170TN
1
9 720
9 720

MikroTik R11e-5HacT
1
3 588
3 588

Antenne
3
358
1 074

Licenza RouterOS di 4° livello
1
$45
2 925

Licenza unRAID Basic
1
$59
3 835

Totale 66.930 rubli. Il punto tre riguardo all'aspetto economico è ridotto in mille pezzi, ma riscalda l'anima pensare che tra dieci anni questo hardware continuerà a svolgere il compito assegnato.

La configurazione del software è stata piuttosto facile, dato che è predisposto per questo: il 95% può essere completato con il mouse in una sola serata. Posso descrivere tutto questo in un articolo separato, se interessa, poiché non tutto è stato perfetto, ma non ci sono stati problemi insormontabili e non ricercabili. Ad esempio, non è stato semplice configurare gli adattatori Ethernet cablati in RouterOS, poiché l'elenco dell'hardware supportato è piuttosto limitato.

Conclusioni dopo aver attraversato il confine in cento giorni di uptime

  1. vPro non è necessario per questo scopo. Questo restringe notevolmente la scelta delle schede madri e dei processori, e per un uso domestico puoi accontentarti di un extender HDMI wireless e di una tastiera wireless. In casi estremi (se il server è in cantina sotto una lastra di cemento armato) — utilizza un extender su cavo Ethernet.
  2. Dieci gigabit erano necessari già ieri. Un disco rigido medio legge più velocemente di 120 megabyte al secondo.
  3. Il case ha mangiato un quarto del budget. Questo è inaccettabile.
  4. Un processore veloce nel NAS/router è più importante di quanto sembrasse inizialmente.
  5. unRAID è davvero un buon software, ha tutto ciò che serve e non ha ciò che non serve. Paghi una sola volta, se hai bisogno di dischi aggiuntivi, chiedono solo la differenza nel costo delle licenze.

Il mio ex hap ac forniva circa 20 megabit con la crittografia del tunnel VPN attivata. Ora basta un solo core i5-7500 per fornire un gigabit.

Stiamo creando un router e NAS su un unico processore

P.S.

Sono molto felice se sei arrivato fino in fondo e ti è sembrato interessante! Per favore, fai domande se qualcosa non è chiaro. Potrei aver dimenticato qualcosa.

Risponderò subito all'ovvio:

— Perché tutto questo, si potrebbe semplicemente comprare Synology?
— Sì, e ti consiglio di farlo. È più semplice, veloce, economico e affidabile. Questo articolo è per gli appassionati che sanno perché hanno bisogno di funzionalità aggiuntive.

— Perché non FreeNAS, ha tutto ciò che ha unRAID, ma gratuitamente?
— Purtroppo, l'open source è cambiato radicalmente. FreeNAS è sviluppato da programmatori retribuiti. E se ricevi il loro lavoro gratuitamente, il prodotto finale sei tu. Oppure presto smetterà di essere pagato dall'investitore.

— Si può fare tutto su Linux puro e risparmiare ancora!
— Sì. Una volta lo facevo anch'io. Ma perché? Per me la configurazione di una rete in Linux è sempre stata un problema. Questo lo lasciamo a Computer Janitors. RouterOS risolve completamente questa classe di problemi. Lo stesso vale per MD RAID: nonostante mdadm non consenta di commettere errori stupidi, ho comunque perso dei dati. E unRAID semplicemente non ti consente di premere il pulsante sbagliato. Ancora una volta, non dovresti sprecare tempo nella configurazione manuale dello storage.

— Ma hai comunque installato una normale Ubuntu in una macchina virtuale!
— Era proprio per questo che si stava organizzando tutto. Ora avete il vostro personale AWS con la massima velocità di collegamento al vostro storage, alla rete domestica e a Internet contemporaneamente, cosa che nessuno può offrirvi. Quali servizi eseguire in questa macchina virtuale dipende da voi.

— Qualsiasi problema e in casa non c'è né Wi-Fi né Internet né storage.
— Ho un router di riserva da 1.000 rubli, e i dischi non si muovono da nessuna parte. Durante tutto questo tempo, a parte i dischi e le ventole, nulla si è rotto da solo. Anche un normale nettop ha funzionato 24/7 per quasi dieci anni ed è in ottime condizioni ora. Ha superato due dischi.

Solo gli utenti registrati possono partecipare al sondaggio. Accedi, per favore.

Scrivere la seconda parte sulla configurazione del software?

  • 60%Sì99

  • 18.1%Non mi interessa, ma scrivi30

  • 21.8%Non è necessario36

Hanno votato 165 utenti. 19 utenti si sono astenuti.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster