Distribuzione di Moodle con Azure NetApp Files

Gateway applicazione di Azure
Cache di Azure per Redis
Database di Azure per MySQL
Azure NetApp Files
Set di scalabilità delle macchine virtuali di Azure

In una singola area, questa soluzione offre l'accesso a disponibilità elevata all'app Moodle e ad altri componenti. Per informazioni dettagliate sulla disponibilità, vedere la sezione Disponibilità più avanti in questo articolo. Nell'implementazione della soluzione è anche possibile usare due aree. In questo caso, la soluzione consente il ripristino di emergenza. Per assicurare la protezione da un eventuale errore, comunque improbabile, dell'area di Azure è possibile replicare i volumi di dati nella seconda area. In tale area, dovranno essere presenti solo i volumi di Azure NetApp Files.

Apache® è un marchio registrato o un marchio di Apache Software Foundation nel Stati Uniti e/o in altri paesi. L'uso di questo marchio non implica alcuna approvazione da parte di Apache Software Foundation.

Architettura

Configurazione a disponibilità elevata in una singola area

Diagramma dell'architettura che mostra come gli studenti accedono a Moodle. Altri componenti includono Azure NetApp Files, cache di Azure per Redis e Database di Azure per MySQL.

Scaricare un file PowerPoint di questa architettura.

  1. Gli studenti accedono ai dati dell'applicazione Moodle tramite gateway applicazione di Azure.
  2. Moodle è scritto in PHP. Moodle viene eseguito in un set di scalabilità di macchine virtuali su un server Web, ad esempio Apache HTTP Server o NGINX.
  3. Azure NetApp Files rende disponibili i dati del contenuto a Moodle.
  4. La soluzione usa cache di Azure per Redis per la memorizzazione nella cache della sessione utente, il blocco e la consapevolezza della chiave.
  5. Un database Database di Azure per MySQL archivia il contenuto di apprendimento, i dati sullo stato degli studenti e i dati interni.
  6. Il contenuto di apprendimento viene inserito nel sistema tramite un gateway VPN (Virtual Private Network) sicuro direttamente dal data center del cliente.

Configurazione del ripristino di emergenza basato su due aree

Diagramma dell'architettura che mostra come gli studenti accedono a Dual-Region Moodle e come la replica tra aree copia i volumi di dati da un'area a un'altra.

Scaricare un file PowerPoint di questa architettura.

  1. La replica tra aree consente di replicare i volumi di Azure NetApp Files. Il motore di replica basato sull'archiviazione è integrato in Azure NetApp Files.
  2. Se si utilizza la replica tra aree, non è necessario attivare alcuni componenti durante il normale funzionamento. Tali componenti non generano quindi nessun costo. Se si verifica un failover, è possibile avviare tali componenti e usarli con i volumi di dati replicati.
  3. Dopo il ripristino dell'area primaria, la direzione di replica viene invertita. L'area primaria viene aggiornata con tutte le modifiche applicate durante il failover. È quindi possibile eseguire il failback del servizio.
  4. Gestione traffico di Azure indirizza gli utenti all'area attualmente attiva.

Componenti

  • Moodle è un sistema di gestione dell'apprendimento open source gratuito.

  • Database di Azure per MySQL è un servizio di database relazionale completamente gestito basato sull'edizione community del motore di database MySQL open source.

  • La cache di Azure per Redis è un archivio dati in memoria completamente gestito basato sul software open source Redis.

  • I set di scalabilità di macchine virtuali di Azure consentono gestire un gruppo di macchine virtuali con bilanciamento del carico. Il numero di macchine virtuali può aumentare o diminuire automaticamente in risposta alla domanda o a una pianificazione definita.

  • Azure NetApp Files semplifica la migrazione e l'esecuzione di applicazioni basate su file senza necessità di modifiche al codice. Questo servizio di archiviazione file condiviso è frutto della collaborazione di Microsoft e NetApp, un partner Microsoft.

  • La replica tra aree consente di replicare i dati in modo asincrono da un volume di Azure NetApp Files in un'area a un altro volume di Azure NetApp Files in un'altra area. Questa funzionalità assicura la protezione dei dati durante interruzioni o situazioni di emergenza a livello di area.

  • gateway applicazione di Azure è un servizio di bilanciamento del carico che gestisce il traffico alle applicazioni Web.

  • Gestione traffico è un servizio di bilanciamento del carico che consente di distribuire il traffico alle applicazioni tra aree di Azure globali. Gestione traffico offre inoltre endpoint pubblici con disponibilità elevata e velocità di risposta rapida.

Alternativi

Per distribuire Moodle, è possibile usare qualsiasi servizio file condiviso basato su NFS che soddisfi i requisiti di latenza molto bassa, operazioni di I/O al secondo elevate e velocità effettiva elevata. Queste condizioni sono particolarmente importanti nel caso di un numero elevato di utenti simultanei. È possibile usare un servizio NFS basato su un set di macchine virtuali Linux. Questo approccio presenta tuttavia problemi relativi a gestibilità, scalabilità e prestazioni. Al contrario, Azure NetApp Files offre una soluzione competitiva a bassa latenza che offre prestazioni eccellenti e accesso sicuro all'archiviazione condivisa NFS.

Dettagli dello scenario

Moodle è uno dei sistemi open source di gestione dell'apprendimento più diffusi e ampiamente adottati. Con oltre il 30% della quota di mercato globale e più di 180.000 clienti in tutto il mondo. Con una soluzione a larghezza di banda elevata e a bassa latenza per i carichi di lavoro, Azure NetApp Files soddisfa i requisiti di prestazioni di Moodle. La soluzione è inoltre flessibile. Le dimensioni della distribuzione possono essere aumentate o ridotte su richiesta per una configurazione conveniente in termini economici.

In seguito all’emergenza di COVID-19, Moodle ha avuto un picco di crescita. L'azienda è ora leader di mercato nel settore dei sistemi di gestione dell'apprendimento. Questa crescita ha spinto l'azienda a esplorare le opzioni per espandere rapidamente l'attività e consentire ai clienti di distribuire le istanze Moodle nel cloud in modo rapido ed efficiente. Per l'archiviazione dei contenuti, l'architettura di Moodle si basa sul protocollo NFS (Network File System) 3.0 (NFSv3).

L'obiettivo di Moodle è soddisfare le esigenze dei lavoratori in smart working e offrire la migliore esperienza utente possibile. Di conseguenza, Moodle richiede:

  • Accesso costante ad alta velocità effettiva e bassa latenza all'archiviazione condivisa.
  • Possibilità di aumentare le dimensioni della soluzione per supportare un numero crescente di utenti simultanei. I clienti preferiscono le configurazioni con scalabilità automatica.

Questo articolo descrive una soluzione che soddisfa le esigenze di Moodle. Al centro della soluzione è Azure NetApp Files, un servizio di archiviazione di prima parte. È possibile usare questo servizio nel cloud per eseguire la migrazione e l'esecuzione dei carichi di lavoro di file più impegnativi su scala aziendale:

  • Condivisioni file NFSv3, NFSv4.1 e Server Message Block (SMB) v3 nativi
  • Carichi di lavoro del database
  • Carichi di lavoro del data warehouse
  • Applicazioni di calcolo ad alte prestazioni

Potenziali casi d'uso

Questa soluzione si applica alle distribuzioni di Moodle. Le organizzazioni che usano Moodle sono presenti in molti settori, tra cui istruzione, commercio, IT e finanza.

Considerazioni

Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di set di set di guide che possono essere usati per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Microsoft Azure Well-Architected Framework.

Per l'implementazione di questa soluzione, tenere presente quanto segue.

Scalabilità

La soluzione consente il ridimensionamento in base alle esigenze:

Disponibilità

Per la garanzia relativa alla disponibilità di Azure NetApp Files, vedere Contratto di servizio per Azure NetApp Files.

Sicurezza

La sicurezza offre garanzie contro attacchi intenzionali e l'abuso dei dati e dei sistemi preziosi. Per altre informazioni, vedere Panoramica del pilastro della sicurezza.

Per tutte le opzioni di distribuzione, è necessario fornire una coppia di chiavi pubblica-privata RSA valida con protocollo Secure Shell 2 (SSH-2). La lunghezza deve essere di almeno 2048 bit. Azure non supporta altri formati di chiave, ad esempio ED25519 ed ECDSA. Per informazioni relative alla sicurezza di Azure NetApp Files, vedere Domande frequenti sulla sicurezza di Azure NetApp Files.

Resilienza

Azure NetApp Files è basato su un set bare metal di hardware ridondante a stato solido. Il servizio funziona senza interruzioni, anche durante le operazioni di manutenzione. Per altre informazioni sulla resilienza, vedere Tolleranza di errore, disponibilità elevata e resilienza in Azure NetApp Files.

Ripristino di emergenza

Come illustrato nella sezione Architettura precedente, è possibile rendere la soluzione più resiliente. È possibile implementare il ripristino di emergenza aggiungendo un'area secondaria e usando la replica tra aree di Azure NetApp Files. Questa funzionalità consente di replicare in modo efficiente i volumi NFS in un'area passiva secondaria. Nell'improbabile evento di errore di un'area completa, l'applicazione viene eseguita nell'area secondaria.

Ottimizzazione dei costi

L'ottimizzazione dei costi riguarda l'analisi dei modi per ridurre le spese non necessarie e migliorare l'efficienza operativa. Per altre informazioni, vedere Panoramica del pilastro di ottimizzazione dei costi.

Si immagini una distribuzione di Moodle di dimensioni medio-grandi per circa 5.000 utenti, con un rapporto di concorrenza del 10%. La velocità effettiva consigliata per questo caso è di circa 500 MBps. Sarebbe possibile creare questo tipo di sistema in una macchina virtuale Standard_D32s_v4 basata su Linux che utilizza 8 TB di disco gestito P60.

Azure NetApp Files offre una soluzione più conveniente, che raggiunge la velocità effettiva consigliata di 500 MBps, ma usa solo 4 TB di capacità a livello di servizio Ultra. Spesso, sono sufficienti i livelli di servizio Premium e Standard, migliorando ulteriormente la convenienza in termini di costi. Anche nel caso di scalabilità superiore dell'applicazione o di richiesta di capacità di Azure NetApp Files maggiori, questi livelli di servizio possono probabilmente offrire la velocità effettiva consigliata.

Per una stima del costo delle risorse di Azure richieste dall'implementazione, è possibile usare il calcolatore dei prezzi di Azure. Per altre informazioni sulla modellazione dei costi di Azure NetApp Files, vedere il Modello di costo per Azure NetApp Files.

Per un calcolo delle prestazioni di Azure NetApp Files e del costo totale di proprietà (TCO), vedere il Calcolatore delle prestazioni di Azure NetApp Files. Usare questa calcolatore per trovare il bilanciamento ottimale tra capacità, prestazioni e costi.

Distribuire lo scenario

Per una guida alla distribuzione di Moodle su Azure NetApp Files, vedere Azure NetApp Files per l'archiviazione NFS con Moodle.

Autori di contributi

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai collaboratori seguenti.

Autore principale:

Passaggi successivi

Documentazione sui prodotti: