Redigera

Dela via


Moodle-distribution med Azure NetApp Files

Azure Application Gateway
Azure Cache for Redis
Azure Database for MySQL
Azure NetApp Files
Azure Virtual Machine Scale Sets

I en enda region ger den här lösningen åtkomst med hög tillgänglighet till Moodle-appen och andra komponenter. Detaljerad information om tillgänglighet finns i Tillgänglighet senare i den här artikeln. Du kan också använda två regioner för att implementera den här lösningen. Med två regioner ger lösningen haveriberedskap. För att skydda mot ett osannolikt Fel i Azure-regionen replikerar du datavolymerna till den andra regionen. Endast Azure NetApp Files-volymerna behöver finnas i den regionen.

Apache® är antingen ett registrerat varumärke eller varumärke som tillhör Apache Software Foundation i USA och/eller andra länder. Inget godkännande från Apache Software Foundation underförstås av användningen av det här märket.

Arkitektur

Konfiguration med hög tillgänglighet för en region

Arkitekturdiagram som visar hur studenter får åtkomst till Moodle. Andra komponenter är Azure NetApp Files, Azure Cache for Redis och Azure Database for MySQL.

Ladda ned en PowerPoint-fil med den här arkitekturen.

  1. Eleverna får åtkomst till Moodle-programdata via Azure Application Gateway.
  2. Moodle är skriven i PHP. Moodle körs i en VM-skalningsuppsättning på en webbserver, till exempel Apache HTTP Server eller NGINX.
  3. Azure NetApp Files gör innehållsdata tillgängliga för Moodle.
  4. Lösningen använder Azure Cache for Redis för cachelagring, låsning och nyckelmedvetenhet för användarsessioner.
  5. En Azure Database for MySQL-databas lagrar utbildningsinnehållet, elevernas förloppsdata och interna data.
  6. Utbildningsinnehållet kommer in i systemet via en säker vpn-gateway (virtual private network) direkt från kundens datacenter.

Konfiguration av haveriberedskap med dubbla regioner

Arkitekturdiagram som visar hur studenter får åtkomst till Moodle med dubbla regioner och hur replikering mellan regioner kopierar datavolymer från en region till en annan.

Ladda ned en PowerPoint-fil med den här arkitekturen.

  1. Replikering mellan regioner ger replikering för Azure NetApp Files-volymerna. Den här lagringsbaserade replikeringsmotorn är inbyggd i Azure NetApp Files.
  2. När du använder replikering mellan regioner behöver du inte aktivera vissa komponenter under normal drift. Så dessa komponenter medför inga kostnader. När en redundansväxling inträffar kan du starta dessa komponenter och använda dem med de replikerade datavolymerna.
  3. När du har återställt den primära regionen vänder replikeringsriktningen. Den primära regionen uppdateras med eventuella ändringar som tillämpades under redundansväxlingen. Du kan sedan återställa tjänsten.
  4. Azure Traffic Manager dirigerar användare till den region som för närvarande är aktiv.

Komponenter

  • Moodle är ett kostnadsfritt utbildningshanteringssystem med öppen källkod.

  • Azure Database for MySQL är en fullständigt hanterad relationsdatabastjänst som baseras på communityversionen av MySQL-databasmotorn med öppen källkod.

  • Azure Cache for Redis är ett fullständigt hanterat minnesinternt datalager som baseras på programvaran Redis med öppen källkod.

  • Skalningsuppsättningar för virtuella Azure-datorer är ett sätt att hantera en grupp med belastningsutjämning av virtuella datorer (VM). Antalet virtuella datorer i en uppsättning ökar eller minskar automatiskt som svar på efterfrågan eller ett definierat schema.

  • Azure NetApp Files gör det enkelt att migrera och köra filbaserade program utan kodändringar. Den här delade fillagringstjänsten är en gemensam utveckling från Microsoft och NetApp, en Microsoft-partner.

  • Replikering mellan regioner är ett sätt att replikera data asynkront från en Azure NetApp Files-volym i en region till en annan Azure NetApp Files-volym i en annan region. Den här funktionen ger dataskydd vid regionomfattande avbrott eller katastrofer.

  • Azure Application Gateway är en lastbalanserare som hanterar trafik till webbprogram.

  • Traffic Manager är en lastbalanserare som distribuerar trafik till program i globala Azure-regioner. Traffic Manager tillhandahåller även offentliga slutpunkter med hög tillgänglighet och snabb svarstid.

Alternativ

För att distribuera Moodle kan du använda alla NFS-baserade delade filtjänster som uppfyller kraven för mycket låg svarstid, hög IOPS och högt dataflöde. Dessa villkor är särskilt viktiga för ett stort antal samtidiga användare. Du kan använda en NFS-tjänst som bygger på en uppsättning virtuella Linux-datorer. Men den här metoden innebär hanterbarhet, skalbarhet och prestandautmaningar. Däremot erbjuder Azure NetApp Files en konkurrenskraftig lösning med låg svarstid som ger utmärkta prestanda och säker åtkomst till delad NFS-lagring.

Information om scenario

Moodle är ett av de mest populära och allmänt antagna kostnadsfria inlärningshanteringssystemen med öppen källkod. Med mer än 30 procent av den globala marknadsandelen har Moodle mer än 180 000 kunder över hela världen. Genom att tillhandahålla en lösning med hög bandbredd och låg svarstid för arbetsbelastningar uppfyller Azure NetApp Files Moodles prestandakrav. Den här lösningen är också flexibel. Distributioner kan växa eller minska på begäran för att göra konfigurationen kostnadseffektiv.

Sedan uppkomsten av COVID-19 har Moodle sett en ökning av tillväxten. Företaget är nu marknadsledande inom utbildningssystem. Den här tillväxten har tvingat Moodle att utforska alternativ för att snabbt utöka sin verksamhet och göra det möjligt för kunder att snabbt och effektivt distribuera Moodle-instanser i molnet. Moodle-arkitekturen förlitar sig på NFS(Network File System) 3.0-protokollet (NFSv3) för innehållslagring.

Moodle strävar efter att uppfylla hemarbetarnas krav och ge bästa möjliga användarupplevelse. Därför kräver Moodle:

  • Konsekvent åtkomst med högt dataflöde och låg svarstid till delad lagring.
  • Ett sätt att skala upp lösningen för att hantera ett ökande antal samtidiga användare. Kunder föredrar konfigurationer för automatisk skalning.

Den här artikeln beskriver en lösning som uppfyller Moodles behov. Kärnan i lösningen är Azure NetApp Files, en lagringstjänst från första part. Du kan använda den här tjänsten för att migrera och köra de mest krävande filarbetsbelastningarna i företagsskala i molnet:

  • SMB-filresurser (Native Server Message Block) version 3, NFSv3 och NFSv4.1
  • Databasarbetsbelastningar
  • Arbetsbelastningar för informationslager
  • Databehandlingsprogram med höga prestanda

Potentiella användningsfall

Den här lösningen gäller för Moodle-distributioner. Organisationer som använder Moodle omfattar många branscher, inklusive utbildning, företag, IT och ekonomi.

Att tänka på

Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework.

Tänk på följande när du implementerar den här lösningen.

Skalbarhet

Den här lösningen skalas upp eller ned efter behov:

Tillgänglighet

Tillgänglighetsgarantin för Azure NetApp Files finns i SLA för Azure NetApp Files.

Säkerhet

Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i Översikt över säkerhetspelare.

För alla distributionsalternativ måste du ange ett giltigt SSH-protokoll 2 (SSH-2) RSA offentligt–privat nyckelpar. Längden ska vara minst 2 048 bitar. Azure stöder inte andra nyckelformat som ED25519 och ECDSA. Information om Säkerhet i Azure NetApp Files finns i Vanliga frågor och svar om säkerhet för Azure NetApp Files.

Motståndskraft

Azure NetApp Files bygger på en bare metal-flotta med redundant maskinvara med solid state. Tjänsten fungerar utan avbrott, även under underhållsåtgärder. Mer information om återhämtning finns i Feltolerans, hög tillgänglighet och återhämtning i Azure NetApp Files.

Haveriberedskap

Som arkitekturen förklarar tidigare i den här artikeln kan du göra lösningen mer elastisk. Du kan tillhandahålla haveriberedskap genom att lägga till en sekundär region och använda replikering mellan regioner i Azure NetApp Files. Den här funktionen replikerar effektivt NFS-volymerna till en sekundär passiv region. Under den osannolika händelsen av ett fullständigt regionfel körs programmet i den sekundära regionen.

Kostnadsoptimering

Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Översikt över kostnadsoptimeringspelare.

Överväg en medelstor till stor Moodle-distribution av cirka 5 000 användare med ett förhållande på 10 procent samtidighet. Det rekommenderade dataflödet för det här fallet är cirka 500 Mbit/s. Du kan skapa den här typen av system på en Linux-baserad Standard_D32s_v4 virtuell dator som använder 8 TB P60-hanterad disk.

Azure NetApp Files erbjuder en mer kostnadseffektiv lösning. Det uppnår det rekommenderade dataflödet på 500 Mbit/s men använder endast 4 TB ultratjänstnivåkapacitet. Servicenivåerna Premium och Standard är också ofta tillräckliga, vilket ytterligare förbättrar kostnadseffektiviteten. Även om programmets skala är större och programmet kräver mer Azure NetApp Files-kapacitet kan dessa tjänstnivåer sannolikt leverera det rekommenderade dataflödet.

Använd priskalkylatorn för Azure för att beräkna kostnaden för de Azure-resurser som krävs för implementeringen. Mer information om kostnadsmodellering för Azure NetApp Files finns i Kostnadsmodell för Azure NetApp Files.

En kalkylator som beräknar Prestandakalkylatorn för Azure NetApp Files och den totala ägandekostnaden (TCO) finns i Prestandakalkylatorn för Azure NetApp Files. Använd den här kalkylatorn för att hitta den optimala balansen mellan kapacitet, prestanda och kostnad.

Distribuera det här scenariot

En distributionsguide för Moodle på Azure NetApp Files finns i Azure NetApp Files för NFS-lagring med Moodle.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudförfattare:

Nästa steg

Produktdokumentation: