Moodle är ett inlärningshanteringssystem med öppen källkod som kräver hög dataflödesåtkomst med låg latens till lagring. Många Moodle-distributioner kräver enkel skalbarhet för att anpassa sig till den växande efterfrågan. Den här artikeln beskriver hur du kan distribuera Moodle med hjälp av Azure-tjänster på Azure Virtual Machine Scale Sets och lagra användartillgängliga utbildningsdatafiler i Azure NetApp Files. Den här artikeln beskriver en zonindelad distribution för hög tillgänglighet och replikering mellan zoner och ger även exempel på en distribution med en zon.
Arkitektur
För bästa användarupplevelse kräver Moodle konsekvent åtkomst med låg latens till skalbar delad lagring för att uppfylla kraven från kontors- och hemarbetare som använder tjänsten. Vm-skalningsuppsättningar och Azure NetApp Files-kapacitetspooler och volymer kan storleksanpassas upp och ned när efterfrågan ändras.
Ladda ned en Visio-fil med den här arkitekturen.
Förutom Moodle-distributionen använder arkitekturen Replikering mellan zoner i Azure NetApp Files för att replikera datavolymerna till en sekundär zon. Replikering mellan zoner använder tillgänglighetszoner för att ge hög tillgänglighet i en region och replikering till en annan zon i samma region. En kapacitetspool som använder standardtjänstnivån kan vara värd för måldatavolymerna under normal drift.
Med den här metoden behöver du inte starta vissa komponenter i installationen, till exempel beräknings- och sidotjänster, under normal drift. Därför medför du inga driftskostnader för dessa komponenter. Du kan också skala ned vm-skalningsuppsättningarna till ett minimum.
Endast i ett haveriberedskapsscenario bör du starta och skala upp nödvändiga komponenter för att fortsätta tjänsten med hjälp av de replikerade datavolymerna. För närvarande kan du uppgradera tjänstnivån för Azure NetApp Files-målvolymerna till premium- eller Ultra-tjänstnivån om det behövs.
När du har återställt den primära zonen återställs replikeringsriktningen. Den primära zonen uppdateras med de ändringar som tillämpas under redundansväxlingen och tjänsten kan återställas. Användarna omdirigeras till redundanszonen via Azure Traffic Manager, som fungerar på DNS-lagret för att snabbt och effektivt dirigera inkommande DNS-begäranden baserat på vilken routningsmetod du väljer.
Arbetsflöde
Eleverna får åtkomst till Moodle-programdata via en Azure Application Gateway där de kan använda vm-skalningsuppsättningar för att skapa en skalbar beräkningsplattform som kör Moodle-appen som värd för användare. Azure NetApp Files hanterar innehållsdata till Moodle-appen. Använd en Redis-cache för cachelagring, låsning och nyckelmedvetenhet för användarsessioner. Lagra utbildningsinnehåll, elevernas förlopp och interna data i en MySQL-databas.
Infoga utbildningsinnehåll via en säker VPN-gateway direkt från kundens datacenter.
Eleverna får åtkomst till innehållet via programmet som distribueras på VM-skalningsuppsättningar via en säker programgateway.
Du kan skala upp eller ned lösningen beroende på efterfrågan genom att lägga till eller ta bort virtuella datorer i skalningsuppsättningen och justera volymtjänstnivån för Azure NetApp Files.
Komponenter
Moodle är ett av de mest populära och allmänt antagna kostnadsfria inlärningshanteringssystemen med öppen källkod.
Azure Database for MySQL är en relationsdatabastjänst som drivs av MySQL Community Edition. Du kan använda Azure Database for MySQL – flexibel server som värd för en MySQL-databas i Azure.
Azure Cache for Redis är en säker datacache och meddelandekö som ger hög dataflödesåtkomst med låg svarstid till data för program.
Använd Skalningsuppsättningar för virtuella Azure-datorer för att skapa och hantera en grupp belastningsbelastade virtuella datorer. Du kan automatiskt öka eller minska antalet virtuella datorinstanser som svar på efterfrågan eller ett definierat schema.
Azure NetApp Files är en Azure-tjänst som du kan använda för att migrera och köra de mest krävande företagsfilarbetsbelastningarna i molnet, till exempel interna SMBv3-, NFSv3- och NFSv4.1-filresurser, databaser, informationslager och databehandlingsprogram med höga prestanda.
Alternativ
Du kan distribuera Moodle-tjänsten med hjälp av en NFS-baserad delad filtjänst som uppfyller dina krav för låg svarstid, höga indata- eller utdataåtgärder per sekund och dataflöde, särskilt för ett högre 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 konfigurationen kan orsaka hanterbarhet, skalbarhet och prestandautmaningar. Azure NetApp Files ger lägsta svarstid, bästa prestanda och skalbarhet samt säker åtkomst till delad NFS-lagring.
Alternativa distributioner med hjälp av Azure NetApp Files
Det här diagrammet innehåller ett exempel på en distribution med en region:
Den här konfigurationen för en region ger hög tillgänglighet till Moodle-programmet och andra komponenter i konfigurationen.
Information om scenario
Den här lösningen gäller för Moodle-distributioner. Organisationer som använder Moodle spänner över branscher som utbildning, företag, IT och ekonomi.
Den här artikeln beskriver en lösning som uppfyller Moodles behov. Kärnan i lösningen är Azure NetApp Files, som är en Azure Storage-tjänst. 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
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.
Tillförlitlighet
Tillförlitlighet säkerställer att ditt program kan uppfylla de åtaganden du gör gentemot dina kunder. Mer information finns i Checklista för designgranskning för tillförlitlighet.
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.
Azure NetApp Files ger hög tillgänglighet för dina lagrade data. 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 Checklista för designgranskning för säkerhet.
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. Azure NetApp Files stöder både kundhanterade och plattformshanterade nycklar. De här lösningarna ger obegränsad åtkomst till lagrade data, uppfyller efterlevnadskraven och förbättrar datasäkerheten. Information och metodtips om Säkerhet i Azure NetApp Files finns i Vanliga frågor och svar om säkerhet för Azure NetApp Files.
Kostnadsoptimering
Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i Checklista för designgranskning för kostnadsoptimering.
För en mellanstor till stor Moodle-distribution av cirka 5 000 användare med ett förhållande på 10 % samtidighet är det rekommenderade dataflödet cirka 500 MB/s. Den här distributionen kan byggas på en Linux-baserad Standard_D32s_v4 VM-infrastruktur som använder 8 TB av en P60-hanterad disk.
Azure NetApp Files är en mer kostnadseffektiv lösning som använder 4 TiB kapacitet på Ultra-servicenivå. För storskaliga program som kräver mer Azure NetApp Files-kapacitet ger både Premium- och Standard-tjänstnivåerna tillräcklig prestanda. Använd premium- eller standardtjänstnivån för att förbättra kostnadseffektiviteten.
Använd Priskalkylatorn för Azure för att beräkna kostnaderna för Azure-resurser för dina specifika krav. Mer information finns i Kostnadsmodellen för Azure NetApp Files.
En kalkylator som beräknar Prestanda för Azure NetApp Files och total ägandekostnad (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.
Driftseffektivitet
Operational Excellence omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i Checklista för designgranskning för Operational Excellence.
Prestandaeffektivitet
Prestandaeffektivitet är arbetsbelastningens förmåga att skala för att uppfylla användarnas krav på ett effektivt sätt. Mer information finns i Checklista för designgranskning för prestandaeffektivitet.
Du kan skala upp eller ned den här lösningen efter behov:
Vm-skalningsuppsättningar ger automatisk skalning av resurser. Mer information finns i Översikt över autoskalning med Skalningsuppsättningar för virtuella Azure-datorer.
Du kan enkelt och icke-intrusivt skala upp och ned kapacitetspoolerna och volymerna i Azure NetApp Files för att möta efterfrågan. Mer information finns i Ändra storlek på en kapacitetspool eller en volym.
Du kan justera volymtjänstnivån för Azure NetApp Files, som kan vara antingen Standard, Premium eller Ultra. Den nivå som du väljer påverkar dataflödesgränsen för volymer med automatisk tjänstkvalitet. Mer information finns i Prestandaöverväganden för Azure NetApp Files.
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:
- Arnt de Gier | Teknisk marknadsföringstekniker