From f369191d6e83acf699ee773123e0a5b5ff12e950 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Wed, 4 Feb 2026 18:21:10 +0700 Subject: [PATCH 1/9] Add SKU configuration for public IP address --- nested/network.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nested/network.json b/nested/network.json index a5fce5cf..0e4b0997 100644 --- a/nested/network.json +++ b/nested/network.json @@ -234,6 +234,9 @@ "apiVersion": "2019-11-01", "location": "[parameters('moodleCommon').location]", "name": "[parameters('moodleCommon').ctlrPipName]", + "sku": { + "name": "Standard" + }, "properties": { "dnsSettings": { "domainNameLabel": "[parameters('moodleCommon').ctlrPipName]" From 10aefaa46524762fcd93bc23867b0892beef4243 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Wed, 4 Feb 2026 22:42:18 +0700 Subject: [PATCH 2/9] Update db-mysqlflex.json --- nested/db-mysqlflex.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nested/db-mysqlflex.json b/nested/db-mysqlflex.json index 8d55ff3d..efa2c68f 100644 --- a/nested/db-mysqlflex.json +++ b/nested/db-mysqlflex.json @@ -66,7 +66,7 @@ "network": "[if(parameters('moodleCommon').vnetDbDeploySwitch, variables('vnetNetworkData'), createObject())]", "Backup": { "backupRetentionDays": 35, - "geoRedundantBackup": "Enabled" + "geoRedundantBackup": "Disabled" } } }, @@ -151,4 +151,4 @@ "value": "[reference(parameters('moodleCommon').serverName).fullyQualifiedDomainName]" } } -} \ No newline at end of file +} From 3f5c6f067626177e09a01e60478fc41e0411fd6d Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Wed, 4 Feb 2026 23:12:37 +0700 Subject: [PATCH 3/9] Change default VM size for controller VM --- azuredeploy.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azuredeploy.json b/azuredeploy.json index 3d55ce4c..1ed98ace 100644 --- a/azuredeploy.json +++ b/azuredeploy.json @@ -143,7 +143,7 @@ "type": "string" }, "controllerVmSku": { - "defaultValue": "Standard_DS1_v2", + "defaultValue": "Standard_F1s", "metadata": { "description": "VM size for the controller VM" }, From a3f3f515d100e89b40c0321496847d8818e7b702 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Wed, 4 Feb 2026 23:44:41 +0700 Subject: [PATCH 4/9] Change default VM SKU for autoscaling --- azuredeploy.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azuredeploy.json b/azuredeploy.json index 1ed98ace..9d381bba 100644 --- a/azuredeploy.json +++ b/azuredeploy.json @@ -161,7 +161,7 @@ "type": "string" }, "autoscaleVmSku": { - "defaultValue": "Standard_DS2_v2", + "defaultValue": "Standard_D2as_v5", "metadata": { "description": "VM size for autoscaled web VMs" }, From 8195cd03ca30eed3726b51ab8dcaa1105cf0c5b2 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Thu, 5 Feb 2026 00:46:23 +0700 Subject: [PATCH 5/9] Change autoscale VM SKU from Standard_DS1_v2 to Standard_D2as_v5 --- azuredeploy-minimal.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azuredeploy-minimal.json b/azuredeploy-minimal.json index 5ec728f9..e3993c87 100644 --- a/azuredeploy-minimal.json +++ b/azuredeploy-minimal.json @@ -35,7 +35,7 @@ "_artifactsLocationSasToken": { "value": "[parameters('_artifactsLocationSasToken')]" }, "redisDeploySwitch": { "value": false }, "sshPublicKey": { "value": "[parameters('sshPublicKey')]" }, - "autoscaleVmSku": { "value": "Standard_DS1_v2" }, + "autoscaleVmSku": { "value": "Standard_D2as_v5" }, "enableAccelNwForOtherVmsSwitch": { "value": false }, "dbServerType": { "value": "mysqlflex" }, "vnetDbDeploySwitch": {"value": true }, From 454c141aef2b73866e699f29907820e1f98db103 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Thu, 5 Feb 2026 08:29:27 +0700 Subject: [PATCH 6/9] Change default VM size for autoscaling --- azuredeploy.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azuredeploy.json b/azuredeploy.json index 9d381bba..3ec25273 100644 --- a/azuredeploy.json +++ b/azuredeploy.json @@ -161,7 +161,7 @@ "type": "string" }, "autoscaleVmSku": { - "defaultValue": "Standard_D2as_v5", + "defaultValue": "Standard_B2s_v2", "metadata": { "description": "VM size for autoscaled web VMs" }, From 4431979f934fb70eb97783152c321fb0f39d6ac6 Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Thu, 5 Feb 2026 11:37:21 +0700 Subject: [PATCH 7/9] Update repository and issue URLs in package.json --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 251a53f2..5c0c7997 100644 --- a/package.json +++ b/package.json @@ -7,14 +7,14 @@ }, "repository": { "type": "git", - "url": "git+https://github.com/Azure/Moodle.git" + "url": "git+https://github.com/prabowoekky/Moodle.git" }, "author": "Catalyst IT", "license": "GPL V3", "bugs": { - "url": "https://github.com/Azure/Moodle/issues" + "url": "https://github.com/prabowoekky/Moodle/issues" }, - "homepage": "https://github.com/Azure/Moodle#readme", + "homepage": "https://github.com/prabowoekky/Moodle#readme", "devDependencies": { "grunt": ">=1.3.0", "grunt-contrib-jshint": "^0.11.3", From 3d07fadf87dbea7ec4d1482ab8eb857fd493844d Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Thu, 5 Feb 2026 11:38:32 +0700 Subject: [PATCH 8/9] Update artifacts location URI in azuredeploy.json --- azuredeploy.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azuredeploy.json b/azuredeploy.json index 3ec25273..1bef2e37 100644 --- a/azuredeploy.json +++ b/azuredeploy.json @@ -7,7 +7,7 @@ "metadata": { "description": "The base URI where artifacts required by this template are located. When the template is deployed using the accompanying scripts, a private location in the subscription will be used and this value will be automatically generated." }, - "defaultValue": "https://raw.githubusercontent.com/Azure/Moodle/master/" + "defaultValue": "https://raw.githubusercontent.com/prabowoekky/Moodle/master/" }, "_artifactsLocationSasToken": { "type": "securestring", From 958cefc57a52c279e25d9004cff3ff90feba91ab Mon Sep 17 00:00:00 2001 From: ekkyrp <40424207+prabowoekky@users.noreply.github.com> Date: Thu, 5 Feb 2026 11:42:03 +0700 Subject: [PATCH 9/9] Update deployment links to point to new repository --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7eef7608..078e3842 100644 --- a/README.md +++ b/README.md @@ -23,10 +23,10 @@ Below are a list of pre-defined/restricted deployment options based on typical d | Deployment Type | Description | Launch | | --- | --- | ---| -| Minimal | This deployment will use NFS, Azure Database for MySQL Flexible Server (Burstable SKU 2 vCores), and smaller autoscale web frontend VM sku (1 core) that'll give faster deployment time (less than 30 minutes) and requires only 2 VM cores currently that'll fit even in a free trial Azure subscription.|[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy-minimal.json)| -| Small to Mid-Size | Supporting up to 1000 concurrent users. This deployment will use NFS (no high availability) and Azure Database for MySQL Flexible Server(General Purpose SKU 8 vCores), without other options like elastic search or redis cache.|[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy-small2mid-noha.json)| -|Large size deployment (with high availability)| Supporting more than 2000 concurrent users. This deployment will use Azure Premium Files, Azure Database for MySQL Flexible Server (General Purpose SKU 16 vCores) and redis cache, without other options like elastic search. |[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy-large-ha.json)| -| Maximum |This maximal deployment will use Azure Premium Files, Azure Database for MySQL (Business Critical SKU 64 vCores), redis cache, elastic search (3 VMs), and pretty large storage sizes (both data disks and DB).|[![Deploy to Azure Maximally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy-maximal.json)| +| Minimal | This deployment will use NFS, Azure Database for MySQL Flexible Server (Burstable SKU 2 vCores), and smaller autoscale web frontend VM sku (1 core) that'll give faster deployment time (less than 30 minutes) and requires only 2 VM cores currently that'll fit even in a free trial Azure subscription.|[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fprabowoekky%2FMoodle%2Fmaster%2Fazuredeploy-minimal.json)| +| Small to Mid-Size | Supporting up to 1000 concurrent users. This deployment will use NFS (no high availability) and Azure Database for MySQL Flexible Server(General Purpose SKU 8 vCores), without other options like elastic search or redis cache.|[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fprabowoekky%2FMoodle%2Fmaster%2Fazuredeploy-small2mid-noha.json)| +|Large size deployment (with high availability)| Supporting more than 2000 concurrent users. This deployment will use Azure Premium Files, Azure Database for MySQL Flexible Server (General Purpose SKU 16 vCores) and redis cache, without other options like elastic search. |[![Deploy to Azure Minimally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fprabowoekky%2FMoodle%2Fmaster%2Fazuredeploy-large-ha.json)| +| Maximum |This maximal deployment will use Azure Premium Files, Azure Database for MySQL (Business Critical SKU 64 vCores), redis cache, elastic search (3 VMs), and pretty large storage sizes (both data disks and DB).|[![Deploy to Azure Maximally](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fprabowoekky%2FMoodle%2Fmaster%2Fazuredeploy-maximal.json)| **NOTE**: The above deployment templates use hard coded Azure Database for MySQL Flexible Server SKUs for easier configuration and quicker deployment of Moodle workloads. If your deployment fails for any reason, please revert to the fully configurable template where possible and change the Azure Database for MySQL Flexible Server parameters accordingly. @@ -34,7 +34,7 @@ Below are a list of pre-defined/restricted deployment options based on typical d If you would prefer to configure the deployment right at the start of the process, you use the button below. Please note that this method opens up a large number of parameters to configure and users new to this deployment process may find it overwhelming. It is also very likely you may end up with a deployment configuration that is not optimal to your needs. This method is recommended for power users. -[![Deploy to Azure Fully Configurable](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy.json) [![Visualize](https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/visualizebutton.png)](http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy.json) +[![Deploy to Azure Fully Configurable](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fprabowoekky%2FMoodle%2Fmaster%2Fazuredeploy.json) [![Visualize](https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/visualizebutton.png)](http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2FMoodle%2Fmaster%2Fazuredeploy.json) **NOTE**: Before you deploy your Moodle workloads using a fully configurable template, we suggest reviewing [Azure Database for MySQL Flexible Server](https://learn.microsoft.com/en-us/azure/mysql/flexible-server/) documentation to fully understand the parameters and the options suggested in the parameters to pick the right values for your workload needs.