Distribuire il file system parallelo BeeGFS

BeeGFS è un file system cluster parallelo, sviluppato con una forte attenzione alle prestazioni di input output e progettato per una facile installazione e gestione. Utilizzando BeeGFS, è possibile creare un file server HPC (High Performance Computing) su Oracle Cloud Infrastructure.

BeeGFS distribuisce in modo trasparente i dati utente su più server. Aumentando il numero di server e dischi nel sistema, è possibile scalare le prestazioni e la capacità del file system da piccoli cluster a sistemi di classe enterprise con migliaia di nodi.

Architettura

Questa architettura di riferimento utilizza un'area con un singolo dominio di disponibilità e subnet regionali. È possibile utilizzare la stessa architettura di riferimento in un'area con più domini di disponibilità. Si consiglia di utilizzare subnet regionali per la distribuzione, indipendentemente dal numero di domini di disponibilità.

Il seguente diagramma illustra questa architettura di riferimento.

Segue una descrizione dell'immagine architecture-deploy-beegfs.png
Descrizione dell'immagine architecture-deploy-beegfs.png

L'architettura ha i seguenti componenti:

  • Area

    Un'area è un'area geografica localizzata composta da uno o più domini di disponibilità. Le regioni sono indipendenti da altre regioni, e vaste distanze possono separarle (tra paesi o continenti).

  • Domini di disponibilità

    I domini di disponibilità sono data center indipendenti e autonomi all'interno di un'area. Le risorse fisiche in ogni dominio di disponibilità vengono isolate dalle risorse negli altri domini di disponibilità, il che fornisce la tolleranza agli errori. I domini di disponibilità non condividono infrastrutture quali l'alimentazione o il raffreddamento o la rete di dominio di disponibilità interna. È quindi improbabile che un errore a un dominio di disponibilità influenzi gli altri domini di disponibilità nell'area.

  • Domini di errore

    Un dominio di errore è un raggruppamento di hardware e infrastruttura all'interno di un dominio di disponibilità. Ogni dominio di disponibilità ha tre domini di guasto con alimentazione e hardware indipendenti. Quando si inseriscono istanze di calcolo in più domini di errore, le applicazioni possono tollerare errori fisici del server, manutenzione del sistema e molti errori di rete e di alimentazione comuni all'interno del dominio di disponibilità.

  • Rete cloud virtuale (VCN) e subnet

    Un VCN è una rete definita dal software impostata in un'area Oracle Cloud Infrastructure. I VCN possono essere segmentati in subnet, che possono essere specifiche di un'area o di un dominio di disponibilità. Sia le subnet specifiche dell'area che quelle specifiche del dominio di disponibilità possono coesistere nello stesso VCN. Una subnet può essere pubblica o privata.

  • Liste di sicurezza

    Per ogni subnet è possibile creare regole di sicurezza che specifichino l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.

  • Tabelle instradamento

    Le tabelle di instradamento virtuale contengono regole per instradare il traffico dalle subnet alle destinazioni al di fuori di VCN, in genere tramite gateway.

  • Gateway Internet

    Il gateway Internet consente il traffico tra VCN e Internet pubblico.

  • Nodi client

    I client sono istanze di calcolo che accedono al file system BeeGFS.

  • Management server

    Il Management Server (MGS) è un punto di incontro per i metadati, la memorizzazione e i servizi client di BeeGFS. Un MGS memorizza le informazioni di configurazione per uno o più file system e fornisce queste informazioni ad altri host. Questa risorsa globale può supportare più file system.

  • Servizio metadati

    Il servizio di metadati (MDS) memorizza le informazioni sui dati, ad esempio le informazioni sulla directory, la proprietà del file e della directory e la posizione del contenuto del file utente sulle destinazioni di memorizzazione. Il servizio metadati è un servizio di scale out, il che significa che è possibile utilizzare uno o più servizi metadati in un file system BeeGFS.

    Il contenuto dei metadati viene memorizzato nei volumi denominati MDT (Metadata Target).

  • Servizio di storage degli oggetti

    Il servizio OSS (Object Storage Service) è il servizio principale per la memorizzazione dei contenuti dei file utente o dei file di chunk di dati. I server di storage degli oggetti sono anche denominati server di memorizzazione.

    Analogamente al servizio metadati, il servizio di storage degli oggetti si basa su una progettazione di scale out. Un'istanza OSs dispone di una o più destinazioni di memorizzazione degli oggetti.

    Ogni server di memorizzazione fornisce l'accesso a un set di volumi di memoria, denominati OST (Object Storage Target). Ogni OST contiene diversi oggetti binari che rappresentano i dati per i file.

Suggerimenti

Le vostre esigenze potrebbero differire dall'architettura descritta qui. Utilizzare i suggerimenti riportati di seguito come punto di partenza.

  • VCN

    Quando si crea VCN, determinare il numero di indirizzi IP necessari per le risorse cloud in ogni subnet. Utilizzando la notazione CIDR (Classless Inter-Domain Routing), specificare una maschera subnet e un intervallo di indirizzi di rete sufficientemente grande per gli indirizzi IP richiesti. Utilizzare un intervallo di indirizzi all'interno dello spazio degli indirizzi IP privati standard.

    Selezionare un intervallo di indirizzi che non si sovrapponga alla rete in locale, in modo da poter impostare una connessione tra VCN e la rete in locale, se necessario.

    Dopo aver creato un VCN, non è possibile modificarne l'intervallo di indirizzi.

    Quando si progettano le subnet, prendere in considerazione il flusso di traffico e i requisiti di sicurezza. Allegare tutte le istanze di calcolo all'interno dello stesso livello o ruolo alla stessa subnet, che può fungere da limite di sicurezza.

  • Liste di sicurezza

    Utilizzare le liste di sicurezza per definire le regole di ingresso e di uscita che si applicano all'intera subnet.

  • Host di base

    Un host bastione viene utilizzato per accedere a qualsiasi nodo nella subnet privata. Utilizzare la forma di VM.Standard.E2.1.

  • Management Server (MGS)

    Poiché MGS non è ad alta intensità di risorse, è possibile scegliere di distribuirlo con il server MDS. Se lo si distribuisce separatamente, la forma di VM.Standard2.2 è sufficiente.

    Utilizzare un volume a blocchi di livello di prestazioni bilanciato da 50 GB. Il volume a blocchi può essere ridimensionato se è necessario più spazio.

  • Metadata Services (MDS) Server

    Utilizzare una forma VM.Standard2.8 o superiore. I requisiti dipendono dal fatto che il carico di lavoro sia ad alta intensità di metadati (per piccoli carichi di lavoro di file) o meno, dal numero di istanze di metadati in esecuzione per nodo e così via.

    Per ottenere le massime prestazioni, si consiglia una forma bare metal, ad esempio BM.Standard2.52, poiché dispone di due NIC fisici, ognuno con una velocità di rete di 25 Gbps. Utilizzare un NIC per tutto il traffico per bloccare la memorizzazione e utilizzare l'altro NIC per i dati in entrata sui nodi MDS dai nodi client.

    Utilizzare la memorizzazione a blocchi del volume; la dimensione e il numero cambiano per ogni requisito di distribuzione per una maggiore memorizzazione. Se è necessario più spazio, il volume a blocchi può essere ridimensionato.

  • Server OSS (Object Storage Services)

    Utilizzare VM.Standard2.8 o versioni successive. Il requisito dipende dal throughput I/O aggregato richiesto in GBps dal file system.

    Per ottenere le massime prestazioni, si consiglia una forma Bare Metal, ad esempio BM.Standard2.52, poiché dispone di due NIC fisici, ciascuno con velocità di rete 25-Gbps. Utilizzare un NIC per tutto il traffico per bloccare la memorizzazione e utilizzare l'altro NIC per i dati in entrata sui nodi OSS dai nodi client.

  • Nodi client

    Scegliere una forma VM in base ai piani di distribuzione. La forma determina la larghezza di banda di rete disponibile per la lettura e la scrittura dell'istanza nel file system. Ad esempio, una forma VM.Standard2.16 ha una larghezza di banda di rete massima di 16.4 Gbps, il che significa che il throughput IO massimo è 2.05 GBps.

    È possibile utilizzare VM Intel e AMD e forme di calcolo Bare Metal per i client.

Considerazioni

  • Prestazioni

    Per ottenere le migliori prestazioni, scegliere la forma di calcolo corretta con larghezza di banda appropriata.

  • Disponibilità

    Prendere in considerazione l'utilizzo di un'opzione ad alta disponibilità in base al requisito di distribuzione.

  • Costo

    Il servizio Bare Metal offre una maggiore larghezza di banda della rete ma un costo più elevato. Valuta le tue esigenze per scegliere la forma di calcolo appropriata.

  • Monitoraggio e avvisi

    Impostare il monitoraggio e gli avvisi sull'uso della CPU e della memoria per i nodi MGS, MDS e OSS in modo da scalare la forma della VM su o giù in base alle esigenze.

Distribuisci

Il codice Terraform per questa architettura di riferimento è disponibile su GitHub.

È possibile distribuire utilizzando direttamente lo script Terraform o tramite il servizio Oracle Cloud Infrastructure Resource Manager.

  1. Andare a GitHub.
  2. Duplicare o scaricare il repository nel computer locale.
  3. Per utilizzare lo script Terraform, attenersi alle istruzioni contenute nel documento README.
  4. Per utilizzare Oracle Cloud Infrastructure Resource Manager, attenersi alle istruzioni riportate in README all'interno della directory orm del repository.