Funible sta cambiando il modo in cui le piattaforme di storage sono progettate rimuovendo le limitazioni delle architetture di storage esistenti con il rilascio di FunIBLE Storage Cluster, nodo di storage ad alte prestazioni FSC 1600. Il Funible Storage Cluster offre una soluzione di storage disaggregato NVMe/TCP ad alte prestazioni e a bassa latenza, completamente trasparente per le applicazioni di alto livello. Basato su FunIBLE DPU™, FunIBLE Storage Cluster (FSC) è una piattaforma di storage all-flash disaggregato ad alte prestazioni, sicura e scalabile.
Funible sta cambiando il modo in cui le piattaforme di storage sono progettate rimuovendo le limitazioni delle architetture di storage esistenti con il rilascio di FunIBLE Storage Cluster, nodo di storage ad alte prestazioni FSC 1600. Il Funible Storage Cluster offre una soluzione di storage disaggregato NVMe/TCP ad alte prestazioni e a bassa latenza, completamente trasparente per le applicazioni di alto livello. Basato su FunIBLE DPU™, FunIBLE Storage Cluster (FSC) è una piattaforma di storage all-flash disaggregato ad alte prestazioni, sicura e scalabile.
Un'unità di elaborazione dati (DPU) è essenzialmente un sistema su un chip. In genere, una DPU è composta da un microprocessore multi-core, un'interfaccia di rete e motori di accelerazione che scaricano attività incentrate sui dati come funzioni di rete, archiviazione, virtualizzazione, sicurezza e analisi. DPU e SmartNIC continuano a guadagnare popolarità nei data center aziendali e dei fornitori di servizi cloud.
Le Fungibile FSC1600 Gruppo di archiviazione
L'FS1600 è alimentato da due unità di elaborazione dati fungibili. Un'innovazione Funible unica, la DPU rappresenta una nuova classe di microprocessori progettati da zero per fornire prestazioni ed efficienza senza rivali nella gestione dei servizi infrastrutturali.
Mentre la maggior parte delle piattaforme di storage sono basate su x86, l'FS1600 affonda le sue radici nella tecnologia Funtable DPU fondamentale. Progettata specificamente per eseguire carichi di lavoro incentrati sui dati in modo più efficiente rispetto alle CPU, la DPU consente all'FS1600 di fornire prestazioni più elevate. L'FS1600 offre una velocità di lettura casuale di 13 milioni di IOPS, prestazioni di lettura a blocchi Raw (4KB), throughput di 75 GB/s per nodo e latenze di lettura di +10μs per prestazioni molto più efficienti rispetto ai sistemi DAS (Direct-Attached Storage), offrendo un Percentuale di efficienza delle prestazioni (PEP) del 96.5%.
Gli acceleratori hardware DPU includono compressione, codifica di cancellazione, crittografia, espressione regolare, ispezione approfondita dei pacchetti e DMA, operando a una velocità di linea di 800 Gb/s. Con la codifica di cancellazione, se un nodo fallisce, i dati vengono ricostruiti utilizzando parità e blocchi di dati da altri nodi, mentre l'host fornisce un percorso alternativo per accedere ai dati tramite percorsi multipli. L'FS1600, compatibile con NVMe/TCP e software di gestione tramite Container Storage Interface (CSI) per Kubernetes e Openstack per VM, può essere un sostituto immediato dei sistemi di storage esistenti. Non esistono requisiti per agenti speciali che utilizzano le risorse della CPU host; è richiesto solo un driver NVMe/TCP standard. E le applicazioni esistenti non richiedono modifiche.
Modelli DPU S1 e F1
Esistono due modelli di DPU Funtable: la DPU S1 e la DPU F1. La famiglia di processori Funtable sfrutta la stessa co-progettazione hardware e software e condivide lo stesso modello di programmazione. Tuttavia, mentre la DPU F1 è progettata per dispositivi autonomi ad alte prestazioni come server di archiviazione, sicurezza, intelligenza artificiale e analisi, la DPU S1 massimizza le prestazioni all'interno dell'ingombro e della potenza di un adattatore PCIe standard.
La DPU Funtable S1 è ottimizzata per combinare calcoli incentrati sui dati all'interno dei nodi server e spostare in modo efficiente i dati tra i nodi. I calcoli incentrati sui dati sono caratterizzati dall'elaborazione con stato dei flussi di dati a velocità elevate, in genere da stack di rete, sicurezza e archiviazione.
La DPU S1 facilita lo scambio di dati tra i nodi server attraverso la sua tecnologia TrueFabric™. TrueFabric è un protocollo fabric IP-over-Ethernet su larga scala che fornisce larghezza di banda trasversale totale della rete con latenza media e di coda bassa, QoS end-to-end, connettività senza congestione e sicurezza tra i nodi del server. Il protocollo TrueFabric è pienamente conforme agli standard e interoperabile con TCP/IP su Ethernet, garantendo che la rete Spine-Leaf del data center possa essere costruita con switch Ethernet standard disponibili in commercio.
FunOS
Il piano dati sia per la DPU S1 che per quella F1 esegue FunOS™, un sistema operativo appositamente creato scritto in linguaggi di programmazione di alto livello (ANSI-C). FunOS gestisce gli stack di rete, archiviazione, sicurezza, virtualizzazione e analisi. Il piano di controllo esegue un sistema operativo standard (ad esempio Linux) e contiene agenti che consentono la gestione, il controllo e il monitoraggio di un cluster di DPU S1 e F1 da parte di un set di API REST. Queste API REST possono essere integrate in sistemi di orchestrazione standard o di terze parti come plug-in Kubernetes CSI, OpenStack, OpenShift, ecc.
Combinando queste funzionalità chiave in un'unica soluzione, la famiglia di processori Funtable DPU consente l'iper-disaggregazione e il pooling di risorse di elaborazione e storage, offrendo un'infrastruttura componibile ad alte prestazioni e altamente scalabile per i data center di prossima generazione!
Cosa costituisce un cluster
L'FSC™ comprende un cluster di due o più nodi di destinazione di archiviazione Funtable FS1600 e tre nodi Funtable Composer. Il software Funtable Composer gestisce il piano di controllo, una soluzione di gestione centralizzata che configura, gestisce, orchestra, controlla e distribuisce il FunIBLE Storage Cluster. I nodi del Composer forniscono servizi come archiviazione, gestione della rete, telemetria, gestione dei nodi per la raccolta dei log e un gateway API che fornisce accesso esterno ai servizi forniti dal Funtable Composer.
Il Funible Storage Cluster offre una soluzione di storage disaggregato NVMe/TCP ad alte prestazioni e a bassa latenza, completamente trasparente per le applicazioni di alto livello. Ogni FS1600 supporta fino a 24 SSD U.2 NVMe/TCP e le prestazioni scalano linearmente da un minimo di 70 TB a più PB.
Casi d'uso
Archiviazione nativa del cloud per l'iperdisaggregazione: L'FSC offre ai fornitori di servizi cloud un'alternativa allo stoccaggio convenzionale. Disaggregando lo spazio di archiviazione, FSC consente il dimensionamento indipendente di elaborazione e archiviazione, un maggiore utilizzo, una riduzione dello SKU del server, una riduzione della complessità di gestione e una maggiore agilità.
Intelligenza artificiale/Apprendimento automatico: I moderni carichi di lavoro AI/ML richiedono in genere un elevato parallelismo in termini di prestazioni, bassa latenza e grande capacità. L'FSC, combinato con file system paralleli altamente scalabili, elimina i colli di bottiglia dello storage per ottenere prestazioni, latenza ed efficienza senza precedenti per questi carichi di lavoro moderni.
Database ad alte prestazioni nativi del cloud: Molti degli odierni database scalabili ad alte prestazioni implementano DAS per soddisfare i requisiti di latenza. Questi database in genere offrono durabilità attraverso schemi di ridondanza in cluster come set di repliche o configurazioni primario-secondario. Se un server si guasta, i dati vengono conservati su un altro server. L'FSC preserva latenze di tipo DAS offrendo al contempo un migliore utilizzo dello storage e ridondanza in cluster, ma con un sovraccarico di capacità inferiore.
Gestione IT semplificata
Oltre a tutti i vantaggi in termini di prestazioni offerti dalle DPU FS1600 e Funtable, esiste anche un approccio di gestione semplificato. Funible offre uno strumento di gestione per data center multi-tenant sicuri tramite un unico pannello di controllo. La dashboard di Funtable Composer renderà la giornata di un amministratore IT più produttiva e fornirà le informazioni necessarie per gestire in modo efficace le funzioni quotidiane del data center.
Compositore fungibile
La dashboard di Funtable Composer è semplice da utilizzare e ricca di dettagli per il monitoraggio, la gestione, la configurazione e il monitoraggio delle prestazioni. La scheda superiore indicherà il sistema collegato, con una visualizzazione completa dei dettagli del cluster, degli IOPS, dei dettagli dello storage e di eventuali allarmi che richiedono attenzione.
Le icone sul lato sinistro del display forniscono accesso immediato a specifici strumenti di gestione.
A seconda dei dettagli forniti durante la distribuzione dei dispositivi fungibili, la tabella degli host fornirà all'amministratore una rapida visualizzazione degli host collegati con opzioni per approfondire un host specifico.
Per i dati sulle prestazioni, selezionando l'icona di analisi, la schermata verrà popolata con i dettagli sulle prestazioni del cluster, offrendo una rapida visualizzazione di IOPS, larghezza di banda e latenza.
I dettagli del volume forniscono una rapida panoramica dello stato di ciascun volume. Da qui è possibile eseguire il drill-down dei singoli volumi per maggiori dettagli.
Dettagli di distribuzione
1 x fungibile FSC1600
- 8 connessioni da 100 GbE
- 24 dispositivi NVME da 3.84 TB
4 Dell R740xd
- 1 x FC200 fungibile
- 1 connessione da 100 GbE
- 1 NVIDIA ConnectX-5
- 1 connessione da 100 GbE
- 2 CPU Intel Xeon Gold 6130 a 2.10 GHz
- 1 RAM da 256 GB
Volumi
- 192 volumi RAW da 100 GB in totale
- 16 volumi RAW 4K per host
- 16 volumi RAW 8K per host
- 16 volumi RAW 16K per host
Processo di test
La preparazione del test prevedeva il precondizionamento di tutti i volumi con un carico di lavoro di scrittura per riempirli prima di avviare i carichi di lavoro di test. I volumi sono stati dimensionati per allinearsi alla dimensione del blocco del carico di lavoro applicato. Per i test, sono stati utilizzati volumi da 4K, 8K e 16K rispettivamente per i carichi di lavoro casuali da 4K, casuali da 8K e sequenziali da 64K. Abbiamo sfruttato il protocollo NVMe su TCP e con un singolo nodo, lo storage è stato testato senza uno schema di protezione.
Ogni iterazione FIO tra le DPU Funtable o le NIC da 100 GbE è stata bilanciata per offrire un profilo di latenza simile. Il carico di lavoro della scheda NIC da 100 GbE è stato quindi aumentato per garantire prestazioni più elevate, con conseguente maggiore latenza e utilizzo della CPU.
Durante la fase di test iniziale, i lavori FIO erano collegati al nodo NUMA dove erano installate le carte. La DPU o la scheda NIC sono state scambiate e posizionate nello stesso slot PCIe tra ogni test. A livello di server non è stata necessaria alcuna regolazione speciale oltre all'impostazione del profilo BIOS del server su Prestazioni. Per ogni caricamento, abbiamo installato Ubuntu 20.04.2 Live Server.
Fungibile FS1600 Risultati riepilogativi delle prestazioni
Fungibile FC200 IOPS
Carico di lavoro | Ospite 1 | Ospite 2 | Ospite 3 | Ospite 4 |
4k letture | 2019k | 2015k | 2016k | 2012k |
4k scrive | 2244k | 2020k | 2280k | 2203k |
64 legge | 167k | 166k | 166k | 166k |
64k scrive | 161k | 168k | 164k | 186k |
8k70r/30w | 1118k / 479k | 1105k / 474k | 1075k / 461k | 1117k / 479k |
Larghezza di banda fungibile FC200
Carico di lavoro | Ospite 1 | Ospite 2 | Ospite 3 | Ospite 4 |
4k letture | 7886 MiB/sec | 7871 MiB/sec | 7873 MiB/sec | 7858 MiB/sec |
4k scrive | 8766 MiB/sec | 7890 MiB/sec | 8905 MiB/sec | 8606 MiB/sec |
64 legge | 9.80 GiB/s | 10.1 GiB/s | 10.2 GiB/s | 10.1 GiB/s |
64k scrive | 8732 MiB/sec | 10.2 GiB/s | 11.3 GiB/s | 11.4 GiB/s |
8k70r/30w | 8732 MiB/3743 MiB/s | 8632 MiB/3699 MiB/s | 8395 MiB/3598 MiB/s | 8729 MiB/3741 MiB/s |
IOPS NIC da 100 GbE
Carico di lavoro | Ospite 1 | Host 1 Rampato | Ospite 2 | Ospite 3 | Ospite 4 |
4k letture | 980k | 2019k | 1108k | 1102k | 1120k |
4k scrive | 968k | 2776k | 494k | 1025k | 1011k |
64 legge | 140k | 118k | 125k | 141k | 140k |
64k scrive | 72.5k | 179k | 40.1k | 100k | 47.0k |
8k70r/30w | 498k / 213k | 1147k / 491k | 597k / 256k | 567k / 243k | 595k / 255k |
Larghezza di banda della scheda di rete 100GbE
Carico di lavoro | Ospite 1 | Host 1 Rampato | Ospite 2 | Ospite 3 | Ospite 4 |
4K Leggi |
3828 MiB/sec | 7887 MiB/sec | 4330 MiB/sec | 4303 MiB/sec | 4374 MiB/sec |
Scrittura 4K |
3783 MiB/sec | 10.6 GiB/s | 1931 MiB/sec | 4005 MiB/sec | 3950 MiB/sec |
64K Leggi | 8761 MiB/sec | 7269 MiB/sec | 7804 MiB/sec | 8832 MiB/sec | 8753 MiB/sec |
Scrittura 64K |
4529 MiB/sec | 10.9 GiB/s | 2505 MiB/sec | 6251 MiB/sec | 3000 MiB/sec |
8K 70R/30W | 3889 MiB/1667 MiB/s | 8958 MiB/3839 MiB/s | 4663 MiB/1998 MiB/s | 4427 MiB/1897 MiB/s | 4646 MiB/1991 MiB/s |
Le Fungibile FS1600 è un artista
Sapevamo, durante questa recensione, che il Funtable FS1600 era veloce; questo non era in dubbio. Sebbene le singole schede di ciascun host fossero sature, comprese DPU e NIC, l'array aveva ancora prestazioni da vendere. L'obiettivo principale era il confronto tra NIC e DPU per i carichi di lavoro NVMe/TCP che utilizzano lo stesso array di storage con scenari di test simili. Le DPU hanno portato incredibili vantaggi al mercato dello storage. Possono scaricare l'attività lontano dalla CPU, liberandola per gestire altre attività come i carichi di lavoro delle applicazioni utilizzando quell'I/O o la larghezza di banda. Restringendo la nostra attenzione a un singolo host, vediamo questi vantaggi.
DPU fungibile
Se mantieni la latenza media di ciascun carico di lavoro simile, puoi vedere che la DPU può fornire prestazioni circa il doppio della scheda NIC. Qui abbiamo misurato 2.02 milioni di IOPS in lettura casuale 4K dalla DPU Funtable, con una latenza media di 0.474 ms. Osservando l'utilizzo della CPU in tempo reale durante questo carico di lavoro, possiamo vedere che il carico di lavoro è contenuto nei core della CPU specificati nel carico di lavoro FIO.
fio –group_reporting –time_based –runtime=10m –rw=randread –bs=4k –io Depth=5 –numjobs=12 –ioengine=libaio –direct=1 –prio=0 –cpus_allowed_policy=split –cpus_allowed=25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63, 0 –randrepeat=XNUMX
Scheda di rete 100 GbE
Successivamente, siamo passati alla scheda NIC da 100 GbE, in grado di gestire 980 IOPS con una latenza media di 0.39 ms. La profondità di I/O e il numero di lavori sono stati ridotti dalla DPU per tenere sotto controllo la latenza, ma osservando l'utilizzo della CPU, si vede rapidamente dove entrano in gioco i vantaggi della DPU. Mentre alla scheda NIC sono stati assegnati gli stessi core della CPU nel lavoro FIO , aveva un utilizzo del sistema molto più ampio. Esiste un compromesso tra l'utilizzo della CPU per i processi back-end (NIC, adattatori, ecc.) in un server di produzione rispetto ai processi front-end come i carichi di lavoro delle applicazioni. Qui vediamo il driver NIC consumare cicli della CPU mentre la DPU rimane internalizzata.
fio –group_reporting –time_based –runtime=10m –rw=randread –bs=4k –io Depth=4 –numjobs=6 –ioengine=libaio –direct=1 –prio=0 –cpus_allowed_policy=split –cpus_allowed=25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63, 0 –randrepeat=XNUMX
NIC da 100 GbE con rampa
Infine, siamo passati al carico di lavoro ottimizzato della NIC da 100GbE, che potrebbe raggiungere lo stesso livello di prestazioni della DPU, circa 2.02 milioni di IOPS. Il costo di questa maggiore velocità, tuttavia, è la latenza, che è aumentata significativamente fino a 2.6 ms e una latenza di picco più elevata. Ciò è avvenuto scalando l'ioprofondità da 4 a 16 e il numero di lavori da 6 a 20. Anche se l'attenzione potrebbe essere incentrata sull'aumento della latenza, osservando l'utilizzo della CPU, puoi vedere che quasi tutte le risorse di sistema sono focalizzate su l'attività di I/O, senza lasciare molto per altri processi. Per le aziende che cercano di rendere le proprie distribuzioni di server più dense ed efficienti, è facile vedere che non tutti gli I/O sono uguali e come le DPU stiano rapidamente cambiando il mercato dello storage.
fio –group_reporting –time_based –runtime=10m –rw=randread –bs=4k –io Depth=16 –numjobs=20 –ioengine=libaio –direct=1 –prio=0 –cpus_allowed_policy=split –cpus_allowed=14-63 –randrepeat= 0
Le parole finali
Lavoriamo con Funtable FS1600 e le relative DPU ormai da diverse settimane. Sebbene l'array in sé non richieda cablaggi o modifiche particolari, volevamo essere approfonditi nell'analisi per comprendere a fondo l'impatto delle DPU. Non è che le DPU stesse siano nuove di zecca, ma stanno finalmente diventando disponibili in commercio in soluzioni di livello aziendale, non solo in progetti scientifici. E per essere chiari, le implementazioni delle DPU non sono tutte uguali, quindi comprendere le implicazioni sull’infrastruttura e sulle prestazioni nelle decisioni di progettazione è fondamentale.
In questo mondo DPU, Funible si distingue come piuttosto unico. Hanno cercato una soluzione personalizzata quando l'azienda è stata avviata nel 2015, assumendo notevoli somme di denaro per costruire l'azienda alla fine del 2016. Questo è stato più o meno quando Mellanox ha annunciato la sua prima versione di una DPU, soprannominata BlueField. Anche se si potrebbe sostenere che Funtable avrebbe fatto bene ad adottare BlueField, andare per la propria strada ha portato a un sostanziale vantaggio tecnologico e di leadership. Funtable ha il pieno controllo del proprio stack e può facilmente sfruttare le DPU sia sul client che sul target. Oppure no, la decisione spetta ai clienti. Ma nei nostri test abbiamo riscontrato vantaggi significativi nell’utilizzo end-to-end di Funtable.
L'arrivo di Funtable con DPU sfruttate nell'array di archiviazione e nell'host completa un quadro che offre un enorme vantaggio in termini di prestazioni. Le DPU scaricano risorse che altrimenti verrebbero assegnate al processore di sistema, il che presenta una combinazione interessante se utilizzata su entrambi i lati dell'equazione. Quando sei in grado di sfruttare Funtable FC200 al posto di una scheda NIC tradizionale, noterai enormi vantaggi significativi in termini di velocità di I/O e un minore utilizzo della CPU. Considerando solo il nostro trasferimento di lettura casuale 4K, l'FC200 è stato in grado di gestire oltre 2 milioni di IOPS a 0.474 ms di latenza, mentre la scheda di rete poteva eseguire circa 1 milione di IOPS a 0.39 ms. Aumentare la scheda NIC per raggiungere 2 milioni di IOPS era possibile, ma a un costo significativo in termini di latenza e risorse di sistema.
Le DPU come classe hanno un enorme potenziale quando si tratta di sbloccare le prestazioni native disponibili nella memoria flash. Anche se questa è già una vera affermazione oggi, i conti diventano ancora più favorevoli per le DPU con l’arrivo sul mercato di tecnologie come gli SSD Gen5 e interconnessioni più veloci. Pagare il sovrapprezzo x86 per gestire le corsie PCIe non ha senso quando si tratta di applicazioni che possono trarre vantaggio da questi componenti e le architetture legacy non sono così scalabili.
Funible dispone di hardware e software convincenti con il nodo di archiviazione FS1600 e le schede di accelerazione. Recentemente hanno anche messo gli occhi su disaggregare le GPU, offrendo ai clienti uno stack più completo per i carichi di lavoro HPC e AI. Ci saranno molti vincitori nello spazio DPU in rapida espansione, ma Funtable è sicuramente uno da tenere d'occhio. Le organizzazioni che necessitano il massimo dal proprio storage dovrebbero assolutamente provare un FS1600.
Cluster di archiviazione fungibile
Interagisci con StorageReview
Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | Facebook | TikTok | RSS feed