Home
» AMMINISTRAZIONE DI RETE
»
Requisiti del server BigBlueButton: una guida pratica al dimensionamento per 500 utenti simultanei
Requisiti del server BigBlueButton: una guida pratica al dimensionamento per 500 utenti simultanei
Esempio pratico: immaginiamo un college comunitario fittizio che prevede la presenza online simultanea di 500 persone, suddivise in cinque classi di circa 100 partecipanti ciascuna. Questo è un esempio di pianificazione, non un benchmark, un caso di studio o un risultato di un test. La scelta progettuale fondamentale è quella di dimensionare il sistema per gestire più riunioni distribuite su diversi server; una singola riunione con 500 partecipanti presenta un profilo di rischio differente.
La pianificazione della capacità dei server inizia con risorse di calcolo dedicate, margine di rete e una stima precisa del numero di riunioni previste.
Quali sono i requisiti ufficiali di BigBlueButton?
La guida di installazione di BigBlueButton attualmente disponibile elenca i requisiti minimi di produzione per un server dedicato: Ubuntu 22.04 a 64 bit, 8 core CPU con elevate prestazioni single-thread, 16 GB di memoria con swap abilitato e una larghezza di banda simmetrica di almeno 250 Mbit/s. Richiede inoltre almeno 500 GB di spazio libero su disco se si desidera conservare le registrazioni, o 50 GB se la registrazione è disabilitata. La guida richiede anche le porte TCP pubbliche 80 e 443, le porte UDP da 16384 a 32768, un nome host e un certificato SSL valido, nonché il supporto per IPv4 e IPv6. Questi sono i requisiti minimi di installazione per un server; non garantiscono la capacità per una specifica configurazione di riunioni. Consultare la pagina di installazione per la versione che si intende implementare, poiché i requisiti del sistema operativo e dei pacchetti possono variare.
Le FAQ del progetto hanno storicamente indicato circa 200 utenti simultanei come regola generale per un server che soddisfi i requisiti minimi. Si tratta di un riferimento di pianificazione approssimativo, non di una garanzia di livello di servizio o di un limite universale per nodo. BigBlueButton stesso avverte che CPU, memoria, larghezza di banda, utilizzo di webcam e condivisione schermo, configurazione e versione del software del server influenzano il risultato. Considerate la cifra di 200 utenti come un'ipotesi iniziale che dovrà essere validata dal vostro carico di lavoro.
Un punto di partenza pratico per 500 utenti simultanei
Per il college immaginario, un'architettura iniziale ragionevole da valutare è un cluster BigBlueButton a quattro nodi, in cui ogni nodo multimediale soddisfa o supera i requisiti minimi di produzione attuali e utilizza una CPU dedicata ad alta frequenza. Con 500 partecipanti distribuiti uniformemente, si ottiene una media di 125 partecipanti per nodo. Il quarto nodo offre margine per la gestione di un posizionamento non uniforme delle riunioni e per la pianificazione della manutenzione; non garantisce una protezione automatica per una riunione già in corso su un server guasto.
Componente
Obiettivo di pianificazione iniziale
Perché è importante
Nodi multimediali BigBlueButton
4 server dedicati; ciascuno con almeno 8 potenti core CPU e 16 GB di RAM
Consente di separare le attività multimediali in diretta e offre più spazio per gestire più riunioni rispetto a un singolo host di dimensioni minime.
Nodo multimediale di rete
Una capacità simmetrica di almeno 1 Gbit/s è un obiettivo prudente da valutare; è bene tenere in considerazione il minimo ufficiale di 250 Mbit/s.
Audio, webcam, condivisione dello schermo e download dei partecipanti utilizzano tutti la capacità di rete. Misura la velocità di trasmissione di picco effettiva e la perdita di pacchetti.
Disco e registrazioni
Almeno 500 GB di spazio libero per nodo se la registrazione avviene localmente, come indicato nella guida all'installazione; altrimenti, valutare il minimo di 50 GB senza registrazione.
La crescita della capacità di registrazione dipende dalla durata, dal numero di sessioni e dalla conservazione dei dati. Pianificate separatamente la capacità di archiviazione.
Instradamento del cluster
Uno scaler o un bilanciatore di carico supportato e ottimizzato per le riunioni, oltre a una configurazione client/proxy comune e collaudata, ove necessario.
Le nuove riunioni devono essere assegnate a un nodo, mentre ogni riunione in corso rimane sul server a essa assegnato.
La raccomandazione di utilizzare quattro nodi è un punto di partenza ingegneristico dedotto dalla configurazione minima ufficiale e dalla vecchia regola empirica dei 200 utenti. BigBlueButton non pubblica una specifica universale che certifichi quattro server specifici per ogni carico di lavoro di 500 utenti. Ad esempio, se un server non è disponibile, gli altri tre gestirebbero in media circa 167 dei 500 utenti solo se le riunioni possono essere riassegnate o gli utenti si riconnettono e i server rimanenti rimangono entro i limiti testati. Una riunione attiva su un nodo non disponibile non migra in modo trasparente su un altro nodo. Se la disponibilità durante il guasto di un nodo è fondamentale, testare la procedura di ripristino e valutare una capacità aggiuntiva rispetto a questo semplice modello.
Perché cinque classi da 100 persone sono diverse da un incontro da 500 persone
I cluster BigBlueButton distribuiscono le riunioni tra i server. Non combinano più nodi in un unico processore multimediale condiviso per una singola riunione. Cinque classi da 100 partecipanti possono essere organizzate come riunioni complete su quattro server, ma una singola classe da 500 partecipanti verrebbe comunque eseguita su un singolo server BigBlueButton. Le FAQ del progetto, con le relative versioni, sconsigliano di trattare una singola riunione con oltre 200 utenti come un normale utilizzo supportato. Se è richiesto un pubblico di 500 persone, è necessario convalidare la configurazione esatta con il team di BigBlueButton o un fornitore qualificato; valutare se l'evento può essere suddiviso in stanze interattive più piccole o trasmesso come una trasmissione separata con interazione limitata tra i partecipanti.
Anche la composizione fittizia della classe è importante. Se la maggior parte degli studenti ascolta l'audio e guarda le diapositive mentre solo i docenti condividono le webcam, il carico multimediale può essere molto inferiore rispetto a una riunione in cui molti partecipanti attivano le webcam e condividono lo schermo. Nelle sue FAQ, BigBlueButton fornisce esempi di bitrate delle webcam in base alla risoluzione e un metodo per stimare il traffico in entrata e in uscita dal server in base al numero di webcam che pubblicano e di utenti che le visualizzano. Utilizzate questo modello per creare una prima stima della larghezza di banda, ma includete audio, segnalazione, condivisione dello schermo, ritrasmissioni e overhead di protocollo. Non moltiplicate 500 per un bitrate ipotizzato e non chiamate il risultato "piano di capacità".
Rete, stanze e registrazioni da includere nella progettazione
Offrire un percorso diretto al traffico multimediale
Utilizzate una configurazione di rete che permetta ai client del browser di raggiungere ciascun nodo multimediale assegnato tramite le porte TCP e UDP necessarie. La documentazione del cluster proxy di BigBlueButton spiega che i flussi multimediali e le connessioni WebSocket vengono scambiati direttamente con il server che ospita la conferenza; il proxy comune si occupa principalmente di inoltrare l'interfaccia client e le relative risorse web. Un reverse proxy che instrada accidentalmente tutti i flussi multimediali attraverso un unico gateway di piccole dimensioni può diventare il collo di bottiglia. Prima del test di carico, verificate le regole del firewall, gli indirizzi pubblici, il DNS, i certificati e la larghezza di banda in entrambe le direzioni.
La dimensione dello spazio di archiviazione delle registrazioni si basa sulla conservazione, non sul numero dei partecipanti.
Per l'esempio del college, stimate il numero e la durata delle lezioni registrate al giorno, quindi misurate le dimensioni di registrazioni rappresentative a partire dalla versione e dalle impostazioni effettive. Moltiplicate la produzione giornaliera prevista per i giorni di conservazione e aggiungete un margine operativo. La raccomandazione di 500 GB di spazio libero indicata nella guida all'installazione è un minimo iniziale, non una garanzia che una particolare politica di conservazione sia adatta. Monitorate lo spazio libero e le code di elaborazione delle registrazioni e spostate i file archiviati solo tramite un flusso di lavoro testato.
Come convalidare la stima prima del lancio
Descrivi il carico di lavoro. Indica il numero previsto di utenti simultanei, riunioni, utenti per riunione, utenti che pubblicano e visualizzano webcam, condivisioni schermo, utilizzo audio, criteri di registrazione, durata della sessione e picchi di partecipazione. Utilizza l'esempio con cinque classi solo se rispecchia il tuo schema reale.
Scegli nodi equivalenti a quelli di produzione. Verifica che la generazione e il comportamento della CPU, la memoria, il sistema operativo, il percorso di rete, lo storage e la versione di BigBlueButton corrispondano. Le istanze condivise o con CPU limitata possono comportarsi in modo diverso rispetto alle istanze dedicate.
Sperimenta con carichi di lavoro graduali. Inizia con un piccolo gruppo, poi aumenta progressivamente il numero di partecipanti simultanei utilizzando telecamere, audio, diapositive, condivisione dello schermo e registrazioni realistiche. Includi un periodo di accesso sincronizzato anziché una riunione a regime continuo.
Monitora contemporaneamente i segnali visibili all'utente e le metriche del server. Tieni traccia della saturazione della CPU e della coda di esecuzione, della pressione della memoria e dello swap, del throughput di rete e della perdita di pacchetti, dello spazio su disco e dell'I/O, dei riavvii dei servizi e dei sintomi delle riunioni come audio ritardato o interrotto, video bloccato, condivisioni non riuscite o cicli di riconnessione.
Ripeti i test di picco e di ripristino. Mantieni il picco previsto abbastanza a lungo da rilevare eventuali problemi termici o di memoria, quindi verifica cosa accade quando un nodo diventa non disponibile. Assicurati che le nuove riunioni vengano instradate verso nodi funzionanti e documenta come gli utenti interessati si riconnettono.
Definisci un limite operativo di sicurezza. Basa il limite di utenti simultanei pubblicato su test ripetibili con capacità di riserva, non sulla prima esecuzione riuscita. Esegui nuovamente i test dopo aggiornamenti software, modifiche alle policy della webcam, alla configurazione di registrazione o all'hardware di hosting.
In sintesi, per un'implementazione con 500 utenti
Per 500 partecipanti simultanei distribuiti su diverse riunioni ordinarie, si consiglia di iniziare la valutazione con quattro nodi multimediali BigBlueButton dedicati, ciascuno dei quali soddisfi i requisiti minimi di produzione ufficiali, e una solida configurazione cluster ottimizzata per le riunioni. È opportuno prevedere un budget generoso per la capacità di rete, pianificare lo spazio di archiviazione delle registrazioni in base alle effettive esigenze di conservazione e testare la combinazione esatta di sale e supporti multimediali. Questa configurazione rappresenta un'ipotesi di dimensionamento, non la prova che una determinata istanza cloud possa supportare 500 utenti. Una singola sala da 500 persone rappresenta un carico di lavoro diverso e non deve essere dedotta dal totale del cluster.